Blog
Windows Printing
Date: 31/8/2004
I've been struggling to work out what is wrong with the printing in Scribe on windows. Each line sometimes is chopped off at the end. And as far as I can tell I'm doing all the right things.

Basically I'm calling GetTextExtentPoint32W to get the size of the string I want to print and then I call ExtTextOutW with ETO_CLIPPED and a rect as big as the size returned by GetTextExtentPoint32W. All of this is of course deep inside Lgi, so I've extracted out a minimal example of what I'm talking about here. It's a Visual C++ 6 project and cpp file that builds an application that exhibits the bug. It will print out a single page, and on WinXP with the printer I have available it chops off the end of the 'y' on the last word.

Am I going crazy? Or is it a bug in my code? Or another windows quirk?
Comments:
fret
31/08/2004 8:04am
The reason I want to clip the text is that it's defined as part of the API that all text is bounded and so I want to keep consitant behaviour over screen and print devices.

And I don't really think it's necessary to change Lgi just to match some lameness in windows.
Josh
01/09/2004 7:11pm
Unfortunately your problem sounds a lot like some problems we've been having, and they have been caused by the different way that printers are handled between WinXP and other versions of Windows. Have you tried using different printer drivers? Try using a generic text only printer and printing out to file or printing with a virtual PDF printer. That may allow you to better isolate the problem.

We have a program that prints reports and have had no end of problems with how printers are handled in Win XP. Mind you, we are using VB as a programming language, but the underlying API calls are similar I believe.

A usable program I have found for use as a virtual PDF printer is CutePDF Writer from http://www.cutepdf.com.

Hope this helps a bit.
Paolo
05/09/2004 11:13am
Here is a good opensource PDF Printer under w32:
https://sourceforge.net/projects/pdfcreator/
fret
06/09/2004 12:39am
Paolo: I think I already have that installed. Thanks though.
Matthew Heys
08/09/2004 9:57pm
We had a similar problem with a comercial app we have at work. We use HP printers and were told by the company that we should be using the PCL 6 drivers not the PCL 5e ones that we were curently using. Changing the drivers fixed the problem.

Of course we wern't pleased with the response and we can't change the drivers because something else doesn't work at all with the PCL 6, but it might help you some how.

GREAT App by the way, ive now got iScribe on my iStick (http://www.memoryxflash.com/pqiistick.html) must be the smallest email client ever.
 
Reply
From:
Email (optional): (Will be HTML encoded to evade harvesting)
Message:
 
Remember username and/or email in a cookie.
Notify me of new posts in this thread via email.
BBcode:
[q]text[/q]
[url=link]description[/url]
[img]url_to_image[/img]
[pre]some_code[/pre]
[b]bold_text[/b]