Tôi có một số tệp hình ảnh được lưu trữ trong một tệp (một số loại tệp lưu trữ). tập tin đó trông như thế này:Dòng dữ liệu JPEG tới TImage
Vâng, nó tách thành hai đoạn - header và dữ liệu phân khúc. Tiêu đề (màu lục) chứa thông tin khác nhau, chẳng hạn như tên album, vị trí, ngày/giờ, mô tả, số lượng ảnh trong album, v.v. Dữ liệu (màu xanh & cam) có cấu trúc đơn giản và chứa N x ảnh JPEG. Tôi có thể trích xuất phân đoạn "imagedata" đó vào đối tượng TMemoryStream mới và bây giờ tôi muốn hiển thị nó bằng TImage.
Tôi có thể sử dụng SaveAsFile phương thức TMemoryStream, đặt một số tên tệp tạm thời, tải tệp đó từ TImage và sau đó xóa tệp tạm thời. Điều đó làm việc, nhưng tôi tự hỏi là có bất kỳ cách nào để gửi dòng đó vào TImage w/out bằng cách sử dụng temp. các tập tin.
Tất nhiên, tôi có thể viết mã để trích xuất tất cả các tệp trên đĩa cứng nhưng vấn đề là tôi có rất nhiều lưu trữ như thế này và chỉ muốn viết ứng dụng để đọc "album" đó thay vì có hơn 20.000 ảnh trên ổ cứng của tôi.
Nói tóm lại, tất cả tôi muốn là làm theo thủ tục làm việc (w/ra sử dụng temp. File)
procedure ShowImageFromStream(data: TStream; img: TImage);
begin
...
end;
Cảm ơn trước.
+1 tên var hơi khác nhưng chỉ giống như Tôi đã gõ, tôi cần phải học cách gõ nhanh hơn. – Dampsquid
MY GOD, ngay cả khi tôi đã sử dụng TJPEGImage trước đây, tôi đã hoàn toàn bỏ lỡ phương thức LoadFromStream !? Cảm ơn rất nhiều, đó là nó. – Wh1T3h4Ck5
Vui mừng được giúp đỡ ;-) – TLama