Вверх ↑
Администрация
Ответов: 15273
Рейтинг: 1501
#1: 2009-01-09 20:59:10 ЛС | профиль | цитата
причина была в том, что даже если принтер умеет печатать без полей(у меня скажем именно такой и стоит), то по-умолчанию он все равно имеет эти поля и умышленно вырезает все то, что выходит за их пределы(нафига это сделано я до сих пор понять не могу). Величину этих мнимых полей можно узнать по

#pas
GetDeviceCaps(pDC, PHYSICALOFFSETX)
GetDeviceCaps(pDC, PHYSICALOFFSETY)
(для простого контекста эти величины всегда равны 0). Ну и для выравнивания смещений печатаемых фигур просто корректируем их координаты

#pas
dec(x1, GetDeviceCaps(pDC, PHYSICALOFFSETX));
dec(y1, GetDeviceCaps(pDC, PHYSICALOFFSETY));
карма: 23
0