Вниз
Скачать: CL | DM;

Font resolution и TextOut   Найти похожие ветки 

 
d_oleg ©   (2002-09-09 13:39) [0]

Господа, подскажите, чем руководствуется винда, когда выполняет рендеринг текста на канвас (имеется ввиду разрешение)? Подробнее: когда делаешь TextOut на Canvas принтера, размер 10-го шрифта в пикселях один, когда TextOut на canvas обычного BitMap-а - размер в пикселях другой. Можно ли задать разрешение для TBitMap? Или в чём другом тут дело?


 
Игорь Шевченко ©   (2002-09-09 13:46) [1]

Windows (GDI) руководствуется количеством логичеких пикселей на дюйм для текущего устройства. GetDeviceCaps(Canvas.Handle, LOGPIXELSX), GetDeviceCaps(Canvas.Handle, LOGPIXELSY), если не ошибаюсь

Вместо разрешения для Bitmap можно использовать функцию SctrechBlt для вывода в требуемом размере, к примеру.


 
d_oleg ©   (2002-09-09 13:51) [2]

Немного не то. Мне нужно произвести TextOut на TBitMap так, как если бы это был принтер, то есть с заданным разрешением.


 
d_oleg ©   (2002-09-09 14:09) [3]

Я так понимаю, canvas должен брать инф. о разрешении из объекта, с которым ассоциирован canvas


 
Игорь Шевченко ©   (2002-09-09 15:23) [4]

Canvas Bitmap"a всегда совместим со Screen DC


 
d_oleg ©   (2002-09-09 15:27) [5]

а как "совместить" его с другим объектом?


 
Игорь Шевченко ©   (2002-09-09 16:18) [6]

Не проще ли сделать Stretсh при выводе на принтер ?


 
d_oleg ©   (2002-09-09 16:30) [7]

а качество печати?


 
d_oleg ©   (2002-09-09 16:32) [8]

ну в-общем можно сделать так:
With BitMap.Canvas.Font do
PixelsPerInch := GetDeviceCaps(Printer.Handle, LOGPIXELSY);
Size := Printer.Canvas.Font.Size;

И получится именно с разрешением, установленном в принтере



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
3-60998
Mike222
2002-08-29 13:27
2002.09.19
delete record


1-61105
Skif
2002-09-10 04:40
2002.09.19
Форматирование дисккеты


3-60999
saf
2002-08-27 19:23
2002.09.19
Прога с SQL-запросами


14-61253
MJH
2002-08-22 16:27
2002.09.19
винХИПИ


1-61183
library
2002-09-08 03:59
2002.09.19
Создать ярлык для папки и поместить его в Пуск -> Документы.




   Наверх