Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вопрос по JPG. [D6]


Cr@sh ©   (2002-09-18 15:26:00) 

Добрый день, Ув. Мастера. Подскажите, как сделать следующее:
Есть имэйдж в который грузится битмап, как сохранить картинку из этого имэйджа в jpg, чтобы при этом использовалась компрессия формата jpg?
Если просто сохранять, то jpg занимает столько же места, сколько и бмп. Что делать?
Заранее спасибо.


Cr@sh   (2002-09-18 16:09:00) [1]

Спасибо всем


MBo   (2002-09-18 15:48:00) [2]

в районе 70


Cr@sh   (2002-09-18 15:40:00) [3]

А CompressionQuality какой обычно задается, чтобы не потерять сильно в качестве?


MBo   (2002-09-18 15:38:00) [4]

И посмотри свойство TJpegImage
CompressionQuality
(применять необязательно, какой-то уровень стоит по умолчанию)


Cr@sh   (2002-09-18 15:36:00) [5]

>MBo
Не могли бы Вы помочь, Вы ведь всегда помогали...


MBo   (2002-09-18 15:36:00) [6]

>без создания переменной TJPEGImage ни как нельзя?

Нет


Song   (2002-09-18 15:36:00) [7]

2MBo © (18.09.02 15:34)
Ага, я так и думал.


Cr@sh   (2002-09-18 15:35:00) [8]

>REA
А без создания переменной TJPEGImage ни как нельзя?


MBo   (2002-09-18 15:34:00) [9]

>Song
Тоже подозреваешь
Abitmap.SavetoFile("super.JPG") ?
:)


REA   (2002-09-18 15:31:00) [10]

Ну типа такого (выдержка из печати в файл):

Function TMyТипаClass.RenderBMP(PixelFormat: TPixelFormat): TBitmap;
Begin
Result := TBitmap.Create;
Result.HandleType := bmDDB; // Device independent
Result.PixelFormat := PixelFormat;
Result.Width := Round(Device.PageWidth*Device.XRes);
Result.Height := Round((Document.PageCount*Device.PageHeight)*Device.YRes);
PrintTo(Result.Canvas, 1);
End;

Function TMyТипаClass.RenderJPG(PixelFormat: TJPEGPixelFormat): TJPEGImage; // Scale, Quality
Var
bmp: TBitmap;
Begin
bmp := RenderBMP(pf24bit);
Try
Result := TJPEGImage.Create;
Result.CompressionQuality := 80;
Result.Smoothing := False;
Result.PixelFormat := PixelFormat;
Result.Performance := jpBestQuality;
Result.Assign(bmp);
Finally
bmp.Free;
End;
End;


Cr@sh   (2002-09-18 15:31:00) [11]

>Song
image1.picture.savetofile("1.jpg");


Song   (2002-09-18 15:29:00) [12]

А как это "просто"?


Наверх

Титульная страница Поиск, карта сайта Написать письмо