Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Media";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Вниз

Чёрнобелый Jpeg   Найти похожие ветки 

 
SH ©   (2004-02-05 11:03) [0]

Получаю DC Рабочего Стола, кидаю всё это в BitMap, потом следующее:
var
jpg:TJpreg;
begin
...
jpg.GrayScale:=True;
Jpg.Compress;
Jpg.SaveToFile()
...

Короче, беру в BMP и конверчу в Jpeg, затем сохраняю.
Трабл. Когда GrayScale в True, то на выходе получаю файлы нулевого размера, иначе - всё путём и в цвете.


 
Fenik ©   (2004-02-05 17:41) [1]

jpg:TJPEGImage; (?)
...
Jpg.Compress; - это вроде бы лишнее.


 
dmk ©   (2004-02-06 00:58) [2]

Jpeg не поддерживает Indexed или Palette цвет


 
Mantic0re   (2004-02-06 09:51) [3]

>dmk
>>"Jpeg не поддерживает Indexed или Palette цвет"
Да.

Но оттенки серого(grayscale) поддерживает, формат не использует его как индексы в палитре - для него это просто уровни яркости, которые он и кодирует.


 
SH ©   (2004-02-06 14:58) [4]

Привожу процедуру с ошибкой полностью:

procedure TFSPy.CopyScreen;
var
DC:HDC;
bMap:TBitMap;
Jpg:TJpegImage;
begin
bMap:=TBitMap.Create;
Jpg:=TJpegImage.Create;
bMap.Height:=Screen.Height;
bMap.Width:=Screen.Width;
DC:=GetDC(0);  //Дескpиптоp экpана
BitBlt(bMap.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
DC, 0, 0, SRCCOPY);
Jpg.Assign(bMap);
{устанавливаем степень сжатия (качество) 1..100}
jpg.CompressionQuality:=TrackBar1.Position;
{если установлен флаг " Оттенки серого" , то пусть картинка будет серой:)}
// Сие не пашет
jpg.Grayscale:=True;

{Упаковываем графику}
jpg.Compress;
Jpg.SaveToFile("c:\file"+IntToStr(Count)+".jpg");
ReleaseDC(0,DC);
bMap.Free;
Jpg.Free;
end;


 
dmk ©   (2004-02-06 22:36) [5]

Так сделай серый RGB. Jpeg его намного мощнее сожмет, т.к.
RGB значения будут одинковы =) И хорош мучиться.



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

Форум: "Media";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.035 c
1-1082180972
oleg_v
2004-04-17 09:49
2004.05.02
Фокус


1-1081736582
Guest0
2004-04-12 06:23
2004.05.02
Фокус ввода компонента


14-1081477579
Думкин
2004-04-09 06:26
2004.05.02
С днем рождения! 9 апреля.


1-1081921535
Laymer
2004-04-14 09:45
2004.05.02
Даты


1-1082026826
demonyator
2004-04-15 15:00
2004.05.02
Клавиатурный хук не ловит первую букву в каждом новом окне





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский