![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Размеры страницы принтера
z0ne © (2004-11-17 13:32:00)Как получить размер полей бумаги ???
сейчас делаю так:
W.Offset:=GetDeviceCaps(PDC,PHYSICALOFFSETX);
W.Visible:=GetDeviceCaps(PDC,HORZRES);
W.VisibleMM:=GetDeviceCaps(PDC,HORZSIZE);
W.Full:=GetDeviceCaps(PDC,PHYSICALWIDTH);
и потом
k:=W.Visible/W.VisibleMM; // pt in 1 mm
W.FullMM:=Round(A.Full/k);
W.OffsetMM:=Round(W.Offset/k);
при печати опираюсь на Visible и Offset....
в итоге всё вроде бы правильно, НО на некоторых принтерах происходит подрезка ПРАВОГО края.
какие ещё есть параметры для получания характеристик полей ???
z0ne (2004-11-24 11:04:00) [1]2 Суслик:
а нафига огород городить... я так тоже пробовал, но мой путь мне кажется прямее!
2 wicked:
уже пишу
wicked (2004-11-22 21:03:00) [2]> z0ne [4]
адрес в анкете... если надо - пиши....
Суслик (2004-11-22 11:50:00) [3]Правда, я не уверен, что в компьютерной графике количество мм в дюйме равно общепринятому.
Не уверен потому, что знаю, что 1 поинт <> 1/72 дюйма (если не ошибаюсь 72 поинта = 0.996 дюйма), хотя в компьютерной графике и полиграфии именно так и считается: 1 дюйм = 72 поинта.
Было бы интересно услышать комментации специалистов по этому вопросу.
Суслик (2004-11-22 11:48:00) [4]
> k:=W.Visible/W.VisibleMM; // pt in 1 mm
зачем это?
Есть другие способы получения количества точек в мм:
DpiX := GetDeviceCaps(Printer.Handle, LOGPIXELSX); // колво точек в дюйме по горизонтали
DpiX / 25.380710659898477 // колво точек в мм по горизонтали
z0ne (2004-11-22 11:26:00) [5]Дяденька! Дай посмотреть компонент та
wicked (2004-11-18 13:16:00) [6]там флажок такой есть - PSD_RETURNDEFAULT... советую почитать...
кстати, у меня есть компонент такой, не помню, откуда нарыл... с моими доработками прекрасно работает и выдает то, что нужно... в него и смотреть можно, как это всё работает....
z0ne (2004-11-18 12:47:00) [7]2 wicked:
И чего ???
мне надо получитьзначения, а не настроить...
может я конечно не правильно чего-нибудь прочитал ....
а есть ли не диалоговые вызовы для получения полей ???
wicked (2004-11-17 19:53:00) [8]см. PageSetupDlg....