Posted by Robert G Laurin on December 03, 2008 at 11:11:52:
In Reply to: Printers - FYI posted by Keith Smith on December 03, 2008 at 09:10:03:
This is the reason why, whenever I print to Windoze, I use my standard initialization routine that does the following:
GOSUB PTR.GetPageInfo using PTR.PAGEINFO.PRINTABLESIZE to get printable area
GOSUB PTR.GetPageInfo using PTR.PAGEINFO.PHYSICALSIZE to get the actual page size
GOSUB PTR.GetPageInfo using PTR.PAGEINFO.PHYSICALOFFSET to get the TOP and LEFT non-printable zone (margins)
The margins varies from one printer to the other, a typical laser will have a 1/4 inch (or some .23") all around while some high end will do edge-to-edge printing. Inkjet and deskjet varies typically from .20" to close to half an inch.
So when printing, I always use the PhysicalOffset to re-align my page on the specific printer.
The Right & Bottom margin are easily computed as Margin = PhysicalSize - (PrintableSize + PhysicalOffset) using either Width or Height.
Beware: Some of the fonts size can be rendered differently on some printers - probably something to do with pixel rounding up/down...
Each file can be a maximum of 1MB in length Uploaded files will be purged from the server on a regular basis.