Tengo algunos archivos de imagen almacenados en un archivo (algún tipo de archivo). Ese archivo tiene el siguiente aspecto:Transmisión de datos JPEG a TImage
Bueno, se divide en dos segmentos - encabezado y los datos del segmento. Encabezado (verde) contiene diversa información, como el nombre del álbum, ubicación, fecha/hora, descripción, número de fotos en el álbum, etc. Segmento de datos (azul & naranja) tiene estructura simple y contiene N x foto JPEG. Puedo extraer ese segmento de "imagedata" en el nuevo objeto TMemoryStream y ahora quiero mostrarlo usando TImage.
Puedo usar SaveAsFile método de TMemoryStream, establecer algún nombre de archivo temporal, cargar ese archivo de TImage y, más adelante, eliminar el archivo temporal. Eso funciona, pero me pregunto si hay alguna forma de enviar ese flujo a TImage sin utilizar temp. archivos.
Por supuesto, puedo escribir código para extraer todos esos archivos en el disco duro pero el problema es que tengo muchos archivos como este y solo quiero escribir aplicaciones para leer esos "álbumes" en lugar de tener más de 20,000 fotos en mi disco duro.
En resumen, todo lo que quiero es hacer siguiente procedimiento funciona (w/temp cabo utilizando. Archivos)
procedure ShowImageFromStream(data: TStream; img: TImage);
begin
...
end;
Gracias de antemano.
+1 nombres var poco diff, pero lo mismo que Estaba escribiendo, necesito aprender a escribir más rápido. – Dampsquid
MI DIOS, incluso antes usaba TJPEGImage, ¡me extrañaba totalmente el método LoadFromStream !? Muchas gracias, eso es todo. – Wh1T3h4Ck5
Me complace ayudar ;-) – TLama