Главная страница
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
4-25135
Cosmic
2002-11-20 20:10
2003.01.09
Перехват клавиш


14-25033
Val
2002-12-19 20:22
2003.01.09
Тест на умопомешательство :)


3-24783
denick
2002-12-16 12:50
2003.01.09
Люд-д-и помогите!


1-24859
ual
2002-12-27 13:12
2003.01.09
Quick report - Access Violation xxxxxxxxx:xxxxx


4-25131
Comwad
2002-11-20 08:48
2003.01.09
Узнать объем памяти, который занимает процесс.