2012-04-04 51 views
5

Estoy usando un componente TImage para cargar algunas imágenes png, pero algunas tienen la extensión .imp. Agrego el unidad Vcl.Imaging.pngimage a mi código y estoy usando el código para cargar las imágenes¿Cómo puedo cargar una imagen Png desde un archivo que tenga otra extensión?

if OpenDialog1.Execute then 
    Image1.Picture.LoadFromFile(OpenDialog1.FileName); 

Pero cuando se ejecuta el procedimiento LoadFromFile una excepción se lanza

Desconocido extensión de archivo de imagen (.IMP)

estas imágenes (.imp) son archivos PNG generados por una aplicación extenal y se encuentran en una carpeta de sólo lectura, por lo que cambiar el nombre de estos archivos no es una opción, la pregunta es cómo puedo cargar una imagen Png en un componente TImage de un archivo que tiene otra extensión?

+2

a un arroyo y luego cargar la imagen de ese –

Respuesta

14

debe registrar el formato de archivo por primera vez el método TPicture.RegisterFileFormat

Prueba esta carga

TPicture.RegisterFileFormat('imp','imp (png) image file',TPngImage); 
Cuestiones relacionadas