Estoy usando WindowsAPICodePack, obteniendo la miniatura de ShellFile. Pero algunos de los que se parecen a los íconos genéricos, tienen un fondo negro. Por lo tanto, lo hago un mapa de bits y establezco el negro como transparente.Cómo eliminar el color de fondo de los "iconos" de ShellFile, pero no de las miniaturas "reales"
El problema es que cuando se trata de una miniatura de una imagen, no debería hacerlo. ¿Cómo puedo decir una miniatura real de un "icono"?
Mi código:
ShellFile sf = ShellFile.FromFilePath(path);
Bitmap bm = sf.Thumbnail.MediumBitmap;
bm.MakeTransparent(Color.Black);
Gracias
difícil ver cómo MakeTransparent puede funcionar bien en los iconos que contienen negro. De todos modos, use la propiedad FormatOption para pedir primero solo un ícono. Si eso falla, solicite una miniatura. –
@Hans a) Gracias. Exactamente lo que estaba buscando. (pero primero pido una miniatura, siempre hay un ícono). b) ¿Hay alguna otra manera de deshacerse del color de fondo? Si no, supongo que siempre puedo obtener un ícono en lugar de un mapa de bits, ahora que sé que no va a ser una miniatura. – ispiro