JPEG въпрос ?

2 отговора 0 прегледа
#1

JPEG въпрос ?

Извинете моето незнание но нямам опит с jpeg.
Бихте ли ме насочили как да проверя размера на jpg-a (наприер дали е 300 х 300) и ако не е как мога да ресайзна до размера който искам.

Благодаря

Отговор
в отговор на ozzoz #2

Re: JPEG въпрос ?

Нямам подръка Delphi, но генерално пътя е следния:
1. Зарежда се JPG файла
2. Обръща се до битмап
3. Прави се каквото трябва като resize и т.н.
4. Записва се обратно като JPG
чудесно е илюстриран подхода с пример от expert-exchange:
uses ...Jpeg, Graphics;

function resizeImage(sInImage, sOutImage: string; iHeight, iWidth: integer): boolean;
var JpgImg : TJpegImage;
BmpImg : TBitmap;
Rectangle: TRect;
begin
try
JpgImg := TJpegImage.Create;
BmpImg := TBitmap.Create;

JpgImg.LoadFromFile(sInImage);
Rectangle := Rect(0, 0, iWidth, iHeight);
with BmpImg do
begin
Width := iWidth;
Height := iHeight;
Canvas.StretchDraw(Rectangle, JpgImg);
end;
finally
JpgImg.Assign(BmpImg);
JpgImg.SaveToFile(sOutImage);
JpgImg.Free;
BmpImg.Free;
end;
Result := True;
end;

чети и дишай по-леко
Отговор
в отговор на Pechenia #3

Re: JPEG въпрос ?

Мерси много !!!

Отговор