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

Вниз

Grayscale (Черно-белое изображение)   Найти похожие ветки 

 
sergey_61   (2007-06-14 22:23) [0]

Доброго времени суток.
У TJPEGImage есть возможность отобразить рисунок в градациях срого. Надо сделать тоже самое для файла TBitmap. Делаю так:

var B: TBitmap;
    J: TJPEGImage;
begin
  B:=TBitmap.Create;
  B.LoadFromFile(<Name>);
  J:=TJPEGImage.Create;
  try
   J.Assign(B);
   J.Grayscale:=True;
   B.Assign(J);   <---- в этой строке выскакивает ошибка AV
  finally
   J.Free;
  end;
..............
  B.Free;
end;

В чем может быть проблема? или может есть другой способ преобразование TBitmap"a в черно-белый (градации серого) режим.
Заранее благодарен!


 
SergeyIT ©   (2007-06-15 00:52) [1]

Вот кусочек из моей программы для ч/б картинок - пока никто не жаловался на AV (правда используется TImage и D5)

   jp := TJpegImage.Create;
   jp.LoadFromFile(fname);
   Img.Picture.Bitmap.Assign(jp);
   Img.Picture.Bitmap.PixelFormat := pf8bit;
   jp.Free;


 
PZ   (2007-06-15 08:24) [2]

Посмотрите
http://www.delphikingdom.ru/asp/answer.asp?IDAnswer=50225


 
Dimaxx ©   (2007-06-15 10:49) [3]


>J:=TJPEGImage.Create;
>...
>B.Assign(J);   <---- в этой строке выскакивает ошибка AV

Еще бы она не выскакивала. Битмапу присваивается JPEG. Присваивай J.Bitmap или рисуй на битмапе из JPEG.


 
{RASkov} ©   (2007-06-15 11:48) [4]

var B: TBitmap;
   J: TJPEGImage;
begin
 B:=TBitmap.Create;
 B.LoadFromFile(<Name>);
 J:=TJPEGImage.Create;
 try
  J.Assign(B);
  J.JPEGNeeded;
  J.Grayscale:=True;
  J.DIBNeeded;
  B.Assign(J);
 finally
  J.Free;
 end;
 Canvas.Draw(0, 0, B);
 B.Free;
end;


 
Jeer ©   (2007-06-15 15:55) [5]

Желательно так все же:

Стандаpт CCIR 601-1
Gray=(299*Red+587*Green+114*Blue)/1000.
Стандаpт CCIR 709:
Gray=(213*Red+715*Green+72*Blue/1000.
Стандаpт ITU:
Gray=(222*Red+707*Green+71*Blue)/1000.



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

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

Наверх




Память: 0.47 MB
Время: 0.027 c
15-1180959988
Poed
2007-06-04 16:26
2007.07.08
Как проверить, рабочая ли сетевая карта?


2-1181717496
delphino
2007-06-13 10:51
2007.07.08
Защита таблиц Paradox


15-1181056226
@!!ex_
2007-06-05 19:10
2007.07.08
Реально ли вернуть?


15-1181377529
Rule
2007-06-09 12:25
2007.07.08
Майкрософт блин как кролики, ну сколько ж можно


15-1181459151
Сергей Колесник
2007-06-10 11:05
2007.07.08
Пример создания и отправки UDP пакета через RAW socket