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

Вниз

Печать TMetafile на черно-белом принтере   Найти похожие ветки 

 
Nikolai_S ©   (2002-09-23 12:31) [0]

При печати изображения из TMetaFile на черно-белом принтере цветной текст печатается белым цветом и если у текста нет фона, то его совсем не видно на бумаге. Печатаю так:
.........
Printer.Canvas.StretchDraw(Rect, MetaFile);
.........
Причем если печатаю данный метафайл из программы ACDSee - то эффект тот же самый. Как заставить текст метафайла печататься оттенками серого цвета?


 
MBo ©   (2002-09-23 12:44) [1]

Если нет возможности настроить принтер, чтобы он печатал цветное, придется править метафайл - в структурах EMR_SETTEXTCOLOR менять цвет


 
Nikolai_S ©   (2002-09-23 12:48) [2]

Ну так как этот метафайл я в программе сам создаю и рисую, то может создавать временный метафайл и рисовать на нем оттенками серого, а потом выводить на печать? Только как преобразовать заданный цвет в оттенок серого?


 
BOA_KAA ©   (2002-09-23 13:07) [3]

Коэффициенты перехода от RGB к оттенкам серого такие

var
Gray: Byte;
...
Gray := Round((0.30 * GetRValue(RGBColor)) + (0.59 * GetGValue(RGBColor)) + (0.11 * GetBValue(RGBColor )));
Result := RGB(Gray, Gray, Gray);


 
MBo ©   (2002-09-23 13:19) [4]

Целочисленная формула в другой твоей ветке



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

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

Наверх




Память: 0.47 MB
Время: 0.012 c
1-24961
sndanil
2002-12-26 19:05
2003.01.09
ListBox


3-24812
alex_dorin
2002-12-17 09:29
2003.01.09
формат отображения в DBGrid


4-25146
chernoruk
2002-11-15 20:02
2003.01.09
cmd.exe


1-24962
Max79
2002-12-26 17:56
2003.01.09
Как принудительно показать Hint ?


4-25127
strong
2002-11-16 14:01
2003.01.09
аля DirectSkin