Direct Output to the Printer with Windows
The next technique to look at is Windows printing. We start off with a minimal example, then discuss the principles behind it. Start by typing the following at a Python console:
>>> import win32ui >>> dc = win32ui.CreateDC() >>> dc.CreatePrinterDC() >>> dc.StartDoc('My Python Document') >>>
At this point, you’ll see a printer icon in the System Tray. Double-click, and you see Figure 10.4.
Now we’ll print a few words and draw a line on the page:
>>> dc.StartPage() >>> dc.TextOut(100,100, 'Python Prints!') >>> dc.MoveTo(100, 102) (0, 0) >>> dc.LineTo(200, 102) >>> dc.EndPage() >>>
As soon as you type EndPage
, your page should
begin to print on your default printer. The Status column in the
Printer window changes to look like Figure 10.5.
Finally, tell Windows you’ve finished printing:
>>> dc.EndDoc() >>>
Hopefully, a few seconds later you will have a page with the words
Python Prints
near the top left and a horizontal
line just above it.
If you’ve ever done any Windows graphics programming, this will
be familiar. The variable dc
is an instance of the Python class
PyCDC
, which is a wrapper around a
Windows Device Context. The Device Context provides methods ...
Get Python Programming On Win32 now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.