Главная страница
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.07 c
9-1065678501
Master™Jedi
2003-10-09 09:48
2004.04.11
DelphiX и 3D


1-1080129041
venus
2004-03-24 14:50
2004.04.11
Компанент


1-1082452929
Tornado
2004-04-20 13:22
2004.04.11
Помогите побороть TListView


1-1080274585
scorpi
2004-03-26 07:16
2004.04.11
Просмотр отчета QuickRep


4-1078674335
Shutov
2004-03-07 18:45
2004.04.11
Печать