Вниз
Скачать: CL | DM;

Ресайз картинок   Найти похожие ветки 

 
Дмитрий Шумов   (2002-07-29 13:19) [0]

Проблема в следующем,имеется куча картинок которые надо сделать одного размера, помогите примерчиком или советом где капать.
Спасибо.


 
MBo ©   (2002-07-29 13:22) [1]

stretchblt


 
Song ©   (2002-07-29 13:37) [2]

TCanvas.StrectDraw()
TCanvas.CopyRect()


 
Some0ne. ©   (2002-07-29 20:49) [3]

Тебе надо именно программным способом, или просто картинки обработать нада? Если просто картинки заресайзить, то грузи Фотошоп и там делать Batch.......


 
Дмитрий Шумов   (2002-07-30 08:33) [4]

В том то и дело что надо програмно, с фотошопом возится неохото.
Вот написал такой вот обработчик, но получаемые картинки не открываются,может кто подскажет в чем затырка:

procedure TForm1.Button1Click(Sender: TObject);
var
bmp: TBItmap;
begin
if opendialog1.execute then begin
bmp:= Image1.Picture.bitmap;
Image1.Canvas.StretchDraw(Rect(0,0,180,114),bmp);
bmp.Height:=114;
bmp.Width:=180;
bmp.SaveToFile(ChangeFileext( opendialog1.filename, "_thumb.JPG" ));

end;
end;


 
Song ©   (2002-07-30 09:28) [5]

Вы ерунду пишите. Вы приравниваете указатель с компонента на bmp, а потом его сохраняете.
Надо bmp:=TBitMap.Create далее bmp.LoadFromFile() далее bmp.Canvas.StretchDraw() далее bmp.SaveToFile() примерно так.
А если всё-таки хотите использовать TImage с формы, тогда и делайте операцию TCanvas.StretchDraw() для этого компонента, а не для какой-то левой переменной.


 
Mirovodin ©   (2002-07-30 16:32) [6]

Если нужно КАЧЕСТВЕННО изменить размер изображения, нгу напимер как делает PhotoShop, с применением фильтров - на DelphiGFX есть класc BitmapResample в разделе Libs



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.012 c
1-59111
Part
2002-11-07 15:20
2002.11.18
Еще один простой вопрос!!


7-59464
yem
2002-09-15 10:40
2002.11.18
модем? asyncpro???


7-59459
Krot
2002-09-19 22:07
2002.11.18
Добавление вкладки


1-59168
Leran2002
2002-11-09 09:16
2002.11.18
Patch


14-59373
Стрел
2002-10-29 23:22
2002.11.18
А нет ли здесь где-нибудь объяв О РАБОТЕ (постоянной)???




   Наверх