[python-win32] Printing coordinate system problem

Greg Ewing greg.ewing at canterbury.ac.nz
Mon Dec 14 11:51:44 CET 2009


I'm wrestling with printing support for PyGUI on Windows.
I'd like to set up the coordinate system during printing
so that (0, 0) is at the corner of the paper, so that I
can arrange for the margins to have predictable sizes.

However, the device context I get from calling PrintDlg()
seems to be set up so that the origin is at the corner
of the printable area of the page, which is smaller by
some amount that depends on the printer being used.

If I could find out the limits of the printable area,
I could correct for this, but there doesn't seem to be
any straightforward way of getting this information.
It doesn't seem to appear anywhere in any of the
structs returned by PrintDlg(), and I can't find any
call that might extract it from the device context.

Am I missing something? Surely this an issue that most
applications that print have to deal with. How do they
do it?

-- 
Greg


More information about the python-win32 mailing list