Witam serdecznie,
Mam funkcję , która czyta wymiary pliku JPG , ale nie wiem jak zrobić aby wynik był wyświetlany w memo3.lines
function JPEGDimensions(Filename : string; var X, Y : Word) : boolean;
var
SegmentPos : Integer;
SOIcount : Integer;
b : byte;
begin
Result := False;
with TFileStream.Create(Filename, fmOpenRead or fmShareDenyNone) do
begin
try
Position := 0;
Read(X, 2);
if (X <> $D8FF) then
exit;
SOIcount := 0;
Position := 0;
while (Position + 7 < Size) do
begin
Read(b, 1);
if (b = $FF) then begin
Read(b, 1);
if (b = $D8) then
inc(SOIcount);
if (b = $DA) then
break;
end; {if}
end; {while}
if (b <> $DA) then
exit;
SegmentPos := -1;
Position := 0;
while (Position + 7 < Size) do
begin
Read(b, 1);
if (b = $FF) then
begin
Read(b, 1);
if (b in [$C0, $C1, $C2]) then
begin
SegmentPos := Position;
dec(SOIcount);
if (SOIcount = 0) then
break;
end; {if}
end; {if}
end; {while}
if (SegmentPos = -1) then
exit;
if (Position + 7 > Size) then
exit;
Position := SegmentPos + 3;
Read(Y, 2);
Read(X, 2);
X := Swap(X);
Y := Swap(Y);
Result := true;
finally
Free;
end; {try}
end; {with}
end; {JPEGDimensions}
Chce uzyskać np. rozmiar pliku ze ścieżki znajdującej się w drugiej linii Memo2
procedure TForm1.Button2Click(Sender: TObject);
var
x , y : word ;
JPEGDimensions(memo2.lines[2],x,y);
Wyniki w postaci rozmiaru chciałbym uzyskać w memo3.lines
procedure TForm1.Button3Click(Sender: TObject);
begin
Memo3.Lines.Clear;
// Memo3.Lines.LoadFromStream(TFileStream) ---> i tutaj mam wątpliwości ;
Niestety program nie chce czytać ze strumienia
Z góry dziękuje za pomoc