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

Вниз

Печать   Найти похожие ветки 

 
Bond   (2004-04-20 07:53) [0]

Подскажите плз, как напечатать на принтере прямоугольник строго 3х3 см. И чтобы этот прямоугольник печатался с такими размерами на всех без исключения принтерах, вне зависимости от их разрешения. Если не трудно, напишите текст программы. Спасибо.


 
Anatoly Podgoretsky ©   (2004-04-20 09:00) [1]

GetDeviceCaps для получения характеристик принтера, для рисования метод Rectangle


 
Bond   (2004-04-20 10:16) [2]

А можно поподробнее о GetDeviceCaps: в параметрах нужно указать
DC: HDC; Index: Integer;
Что обозначают эти параметры? Если не сложно, напишите примерчик. Мне также хотелось бы узнать разрешение принтера в точках на дюйм, а ещё лучше в точках на см. или мм.


 
Anatoly Podgoretsky ©   (2004-04-20 10:23) [3]

Разрешение в пикселях на дюйм

hdc, // device-context handle
nIndex  // index of capability to query


 
vl_chel ©   (2004-04-20 10:46) [4]

см модуль Windows строка 13615

 { Device Parameters for GetDeviceCaps() }
 {$EXTERNALSYM DRIVERVERSION}
 DRIVERVERSION = 0;     { Device driver version                     }
 {$EXTERNALSYM TECHNOLOGY}
 TECHNOLOGY    = 2;     { Device classification                     }
 {$EXTERNALSYM HORZSIZE}
 HORZSIZE      = 4;     { Horizontal size in millimeters            }
 {$EXTERNALSYM VERTSIZE}
 VERTSIZE      = 6;     { Vertical size in millimeters              }
 {$EXTERNALSYM HORZRES}
 HORZRES       = 8;     { Horizontal width in pixels                }
 {$EXTERNALSYM VERTRES}
 VERTRES       = 10;    { Vertical height in pixels                 }
 {$EXTERNALSYM BITSPIXEL}


 
vl_chel ©   (2004-04-20 10:46) [5]

см модуль Windows строка 13615

 { Device Parameters for GetDeviceCaps() }
 {$EXTERNALSYM DRIVERVERSION}
 DRIVERVERSION = 0;     { Device driver version                     }
 {$EXTERNALSYM TECHNOLOGY}
 TECHNOLOGY    = 2;     { Device classification                     }
 {$EXTERNALSYM HORZSIZE}
 HORZSIZE      = 4;     { Horizontal size in millimeters            }
 {$EXTERNALSYM VERTSIZE}
 VERTSIZE      = 6;     { Vertical size in millimeters              }
 {$EXTERNALSYM HORZRES}
 HORZRES       = 8;     { Horizontal width in pixels                }
 {$EXTERNALSYM VERTRES}
 VERTRES       = 10;    { Vertical height in pixels                 }
 {$EXTERNALSYM BITSPIXEL}


 
Григорьев Антон   (2004-04-20 11:05) [6]

На место DC надо ставить Printer.Canvas.Handle. Второй параметр показывает, значение какой величины вы хотите получить. Вам нужны LogPixelsX и LogPixelsY - число точек на дюйм по горизонтали и вертикали. Ну а зная эти значения, сосчитать, сколько пиксеслов в трёх сантиметрах, проблемы не составит.



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

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

Наверх




Память: 0.48 MB
Время: 0.034 c
1-1079920174
YT
2004-03-22 04:49
2004.04.11
Использование TStrnLst.Objects


14-1081911090
Ильш
2004-04-14 06:51
2004.04.11
ВСЕМ ! ВСЕМ ! ВСЕМ !


1-1082361797
TransparentGhost
2004-04-19 12:03
2004.04.11
Определение позиции тхт курсора в Memo


11-1060284549
Eug201
2003-08-07 23:29
2004.04.11
SysClasses.zip


1-1082642324
Romario
2004-04-22 17:58
2004.04.11
MDI форма из DLL