I am trying to print the contents of a python tkinter canvas.  I have tried using the postscript method of canvas to create a postscript file, but I get a blank page.  I know this is because I have embedded widgets, and these do not get rendered by the postscript method.
Before I rewrite my program to create a more printer-friendly layout, can someone suggest a way to approach this problem?  All of the programming books I have ever read approach the problem of sending output to a printer with a bit of hand-waving, something along the lines of:  "It's a difficult problem that depends on interacting with the operating system."  I also have a hard time finding resources about this because of all the pages related to printing to the screen.
I am using Python 2.6, on Ubuntu 9.04.
I think your butting up to the limits of Tkinter. If not for the widgets, another method is to draw the same image on a PIL image-draw object as the two have similar APIs.
A hacky workaround would be to programatically take a screen grab of the window area you want using ImageGrab in PIL.
wxPython is a decent alternative. Personally I prefer Qt, it certainly has excellent printer support. Also the Graphics View framework is outstanding.
Printing python tkinter output