Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.11.25;
Скачать: CL | DM;

Вниз

оптимизатор JPEG   Найти похожие ветки 

 
Dy1 ©   (2007-05-06 12:32) [0]

Хочу написать оптимизатор JPEG. Как нарисовать сжатый JPEG не сохраняя его на винт? Посоветуйте плз.
KOLnMCK 2.56, D7

procedure TForm1.KOLForm1FormCreate(Sender: PObj);
begin
 j := NewJpeg;
 j.Bitmap := NewBitmap(0,0);
 j.Bitmap.LoadFromFileEx("0.bmp"); // 24 бита
end;

procedure TForm1.KOLForm1Close(Sender: PObj; var Accept: Boolean);
begin
 j.SaveToFile("1.jpg"); // сохраняется с нужным качеством
 j.Free;
end;

procedure TForm1.KOLForm1Paint(Sender: PControl; DC: HDC);
begin
 if not j.Empty then
   j.Draw(Form.Canvas.Handle,0,40); // всегда 100%-ное качество :(
end;

procedure TForm1.Button1Click(Sender: PObj);
begin
 j.CompressionQuality := str2int(EditBox1.Text);
// ничего не помогает
//  j.Compress;
// j.JPEGNeeded;
 Form.Invalidate;
end;


 
Vladimir Kladov   (2007-05-06 15:23) [1]

сохранять можно и в поток. Потом - загружать из этого же потока, переставив позицию в 0. Понятно, что 100%, ведь используется Bitmap, если он есть.


 
Dy1 ©   (2007-05-07 20:21) [2]


> Понятно, что 100%, ведь используется Bitmap

Мне надо рисовать на экране так же, как будет выглядеть сохранённая картинка


 
Vladimir Kladov   (2007-05-07 21:27) [3]

Вы читаете, что я написал? Сохраняйте в поток. Загружайте из потока. Битмап при вызове LoadFrom уничтожается.


 
alex3   (2007-05-07 23:29) [4]

Или держим два битмапа, в одном оригинал, а с другим производим операции.
После каждой операции, если надо, производим копирование с оригинала.
Выводя на форму один и другой можно визуально сравнить результат.



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

Текущий архив: 2007.11.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
2-1194122176
SveTTT
2007-11-03 23:36
2007.11.25
подсчет строк в DbGridEh


15-1192885708
к2в2
2007-10-20 17:08
2007.11.25
илюстратор + delphi


11-1177917769
Dmitry___
2007-04-30 11:22
2007.11.25
Передать PControl в процедуру dll


2-1194116561
timekiller
2007-11-03 22:02
2007.11.25
Добраться до компонента перебором Components


6-1174560382
zero
2007-03-22 13:46
2007.11.25
Проблема с компонентом idFtp