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

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

Как правильно открыть, сжать и сохранить JPEG? [D7, WinXP]


Chaser ©   (2005-10-18 12:40:00) 

Задача: требуется открыть файл*.jpg, сжать его и сохранить куда-то на диск.

Код:

jpg:=TJpegImage.Create;
// присваиваем ему изображение
jpg.LoadFromFile(FileListbox1.FileName);
// устанавливаем степень сжатия (качество) - 1..100
jpg.CompressionQuality:=TrackBar1.Position;
// "Оттенки серого" false
jpg.Grayscale:=false;
// упаковываем графику
jpg.Compress;
//
jpg.SaveToFile(ExtractFilePath(Application.ExeName)+'\compress\'+FileListBox1.Items.Strings[k]);
//
jpg.Free;

Почему-то созданный файл имеет размер 0 байт. :(((
Хотя по уму вроде все правильно.
Подскажите плиз, как правильно сжать и сохранить картинку?


Chaser   (2005-10-18 15:44:00) [1]

Спасибо! Теперь все ОК!


Sapersky   (2005-10-18 14:46:00) [2]

Видимо, после загрузки нужно распаковать jpeg: jpg.DIBNeeded;
Т.к. перепаковка jpeg -> jpeg не предусмотрена, только jpeg -> bmp и bmp -> jpeg.


Наверх

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