Главная страница
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.091 c
14-1082369956
Aleksandr
2004-04-19 14:19
2004.04.11
Сколько брать за программу?


1-1080156667
jetty
2004-03-24 22:31
2004.04.11
Как организовать секундомер,


6-1079173998
Daimon
2004-03-13 13:33
2004.04.11
Компьютер (COM порт) <-> Сотовый телефон (Модем AT-команды )


1-1082715039
pasha_golub
2004-04-23 14:10
2004.04.11
Использование директивы absolut


1-1082550778
Алексей_
2004-04-21 16:32
2004.04.11
Как заблокировать переключение из полноэкранного режима в оконный