¿Cómo puedo extraer una imagen de un tamaño específico o todas las imágenes de un ícono con múltiples imágenes?¿Cómo puedo extraer una imagen de un tamaño específico de un icono?
Respuesta
No dice cuál es el propósito de esto, y hay varias maneras de obtener iconos y un método puede ser mejor que otro dependiendo del propósito.
Sin embargo, para extraer cualquier número de "grande" (32x32) y/o iconos "pequeños" (16x16) * desde un archivo arbitrario, utilice la función ExtractIconEx
. Esto le permite extraer uno o más iconos de cualquiera de estos dos tamaños estándar desde un archivo de icono (.ico), EXE o DLL. Un archivo de icono puede contener múltiples imágenes y esta función le permitirá obtener todas.
La función escribirá en una matriz de controladores, cada uno de los cuales puede asignar a la propiedad Handle
de una instancia TIcon
. Luego puede usar el TIcon
methods como lo haría normalmente si hubiera cargado el TIcon de otra manera. Tenga en cuenta que lo nuevo en Delphi XE es la capacidad de copiarlo fácilmente en un mapa de bits via the Assign method. That article también muestra cómo acceder a todos los íconos de Windows stock (incorporados/estándar), si eso es lo que buscas.
(Nota al margen: Creo que la clase TIcon
le permite cargar desde un archivo a través de su método LoadFromFile
- esto parece estar ausente de la documentación, pero estoy bastante seguro de que existe De memoria, que sólo carga una sola. icono)
(*) en realidad, "grande" y "pequeño" puede ser diferente a 32x32 y 16x16:. usar la función
GetSystemMetrics
con elSM_CXICON
,SM_CYICON
,SM_CXSMICON
ySM_CYSMICON
banderas a f Indique las dimensiones de cada tipo.
- 1. Cómo extraer la imagen del icono 48 * 48 del recurso de un archivo ejecutable?
- 2. ¿Cómo cambiar el tamaño de una imagen a un tamaño de archivo específico?
- 3. ¿Cómo extraer un archivo específico con GIT?
- 4. ¿Cómo determinar el tamaño de un icono de un HICON?
- 5. C# - ¿Cómo puedo extraer una imagen de disco FAT?
- 6. extraer imagen vectorial de un archivo pdf
- 7. ¿Cómo extraer marcos usando mencoder en un directorio específico?
- 8. ¿Cómo puedo cambiar el tamaño de una imagen sin estirarla?
- 9. ¿Cómo cambiar el tamaño de la imagen original en un tamaño de imagen común en Java?
- 10. ¿Cómo puedo barajar un rango específico de una ArrayList?
- 11. Cómo extraer términos de un constructor de datos específico de una lista en Haskell
- 12. Oracle - ¿Cómo obtengo el tamaño real de un ROW específico?
- 13. ¿Cómo puedo extraer imágenes de un archivo PDF?
- 14. Cambiar la imagen png blanca a un color específico
- 15. ¿Cómo puedo cambiar el tamaño de una imagen usando Java?
- 16. Verificar el tamaño total del archivo de un directorio específico para un usuario específico
- 17. ¿Cómo cambiar el icono de un JLabel?
- 18. ¿Puedo crear un icono de escritorio para una aplicación ClickOnce?
- 19. ¿Cómo puedo usar un sprite para mi icono jQuery datepicker?
- 20. CSS: muestra un icono en particular de un archivo de imagen
- 21. ¿Cómo echo un icono de un archivo de recursos a una imagen para usar en un botón?
- 22. R XML de programación: extraer nodo específico
- 23. ¿Cómo establecer correctamente el tamaño del icono de un botón en extjs?
- 24. ¿Cómo puedo obtener solo los autores de un archivo específico de un git-repo?
- 25. Cómo cambiar el tamaño de imagen UIBarButtonItem
- 26. ¿Cómo puedo actualizar un XElement específico?
- 27. ¿Cómo cambiar el tamaño de una imagen en C# a un cierto tamaño de disco duro?
- 28. Cómo extraer el directorio específico con git
- 29. ¿Cómo puedo extraer una imagen de satélite de los mapas de Google dado un rectángulo de latitud larga?
- 30. Cómo mostrar una imagen de tamaño completo
@David, ¡gracias! Tengo un objeto TIcon y necesito extraer todas las imágenes de él. ¿Hay alguna manera de hacerlo sin guardar el icono para archivar mediante el método SaveToFile? – Branko
TIcon será una imagen de icono. Usando 'ExtractIconEx' crearía un TIcon por imagen de icono que extrae. A continuación, puede acceder a la imagen del icono 'Asignándolo' a un mapa de bits. (¿Recibió una serie de identificadores llenos? Intente llamar a 'ExtractIconEx' dos veces, la primera vez con' nIconIndex' establecido en -1 y ambos parámetros de matriz 'nil', y devolverá el número de iconos. Llámelo de nuevo con un array de ese tamaño. Consulte el artículo de MSDN para obtener más detalles.) –
@David, TIcon es un icono de imagen si lo obtiene ExtractIconEx, pero ¿qué ocurre si el objeto TIcon existente tiene más de una imagen? Si guardo TIcon con 4 imágenes en el archivo (oIcon.SaveToFile) y abro este archivo con IconEditor, puedo ver las 4 imágenes y PUEDO extraer las 4 imágenes con ExtractIconEx. ¿Es posible extraer todas las imágenes del objeto TIcon, no guardar TIcon en un archivo y usar ExtractIconEx? – Branko