Friday, November 9, 2007

Gotcha: Not all Printers Rotate the Same Direction

This is the first post in a series I'm calling "Gotcha". This is where I plan to talk about bugs ... er, "features" ... that I've run across or other issues that have caused me grief. Hopefully, by letting you know about them, and some possible work arounds, it will you save you from many future headaches!

I’ve been writing reports for years and I recently stumbled across an issue that threw me for a loop. A report that was designed on my machine in Michigan wasn’t working the same in the Tennessee home office. After a lot of hair pulling, the light bulb went off and I realized what the problem was.

To print a landscape report, my printer rotates the text counter-clockwise; the printer in the Tennessee office rotates the text clockwise!

What? You’ve got to be kidding me. How can this be? I just ASSUMED that all printers rotate the same direction! Isn’t there a “standard” or something that all printer manufacturers follow? Well .. apparently not!

So why is this important to you? The answer is … Unprintable Margins.

Most printers have unprintable margins that you have to consider when writing reports. Typically, the right and left margins are the same, but the top and bottom margins may be different. Often times, the bottom margin is the largest margin. For example, my printer has .25” on the right and left margins, .07” on the top margin, and a very greedy .48” on the bottom margin. The key here is that these figures apply to a portrait report. When you print a landscape report, these margins are swapped … and the direction of the rotation determines whether the left margin becomes .07” and the right margin becomes .48” or visa-versa.

Are you starting to see the problem yet? I designed a landscape report that was tight on the left side and had a half an inch on the right side to accommodate my greedy “bottom” margin. When my coworkers in Tennessee printed the report on their printer, the entire left side was cut off. That’s because their left margin is now the greedy bottom margin. That means they can’t print tight to the left side like I can .. but they can print tight to the right side.

So now that you know about this dilemma .. what should you do about it? You can take one of two approaches. The first approach is to design the reports as “Printable Page”, make the landscape width no more than 10.25”, and let the printer decide where to place the text. The other option is to design the report as “Whole Page” and leave a generous .5” margin on both the right and left sides of the landscape report. Personally, I prefer the latter because I like to keep the report centered, but it means I lose a little bit of real estate. Of course, if you ever run across a printer that is even greedier than mine, you’ll have to change your report width accordingly.

Knowledge is everything! Hopefully this bit of knowledge will keep you from making the same assumption I did which caused me a lot of grief and aggravation!

1 comment:

Miki said...

Please accept my apology but I don't know how can I solve this problem. I wrote to many forums : Tek-tip, Foxite, microsoft.public.fox.reports.printing, http://social.msdn.microsoft.com/Forums/en-US/visualfoxprogeneral/thread/c8381234-7d16-483d-a958-c816a0c86d66,... but I haven't get contented answer. Finaly I thought on you because you are very experienced about reports. If you have a solution then please answer me on one of above mentioned forums.

How to print "A5 Rotated" form

I have Windows XP SP3, VFP 9 SP1.
The printer is dot matrix. The paper is endless pre-printed with some form
format A5 with width 210mm and with perforation at each 148mm.
How can create Report for this paper? In Page Setup there is also offered A5
format but I do not know how to exchange width with height. To set
Orientation from Portrait to Landscape is not solution because the format
remains the same just printing is upright.
In my "Print Server Properties" I found 187 forms and among them also
exactly the form I want. His name is "A5 Rotated". So I already have
requested form and I suppose that it will be at the customer's PC too.

I had defined my default printer to Epson FX-80 ( yes, very old printer )
and in my VFP "Page Setup" was offered just few ( 6 ) of them : A4, A5,
B5(JIS), Fontfold 8,5 x 12 in, Legal, Letter. Then I changed default printer
to Fax and "magicaly" there appeared all forms in VFP's "Page Setup" and I
could choose my desired form.

In my PC work fine although my Epson haven't declared "A5 Rotated" form.
My friend has HP printer and he get wrong report! I have Page footer at
the end of rotated A5 form ( middle of A4 form ) but friend got
Page footer at the end of A4 form ( to much space between Group footer
and Page footer ) ! ! !

This is Expr field from this FRX when "Save printer environment" is on :
DRIVER=winspool
DEVICE=Fax
OUTPUT=SHRFAX:
ORIENTATION=0
PAPERSIZE=78
DEFAULTSOURCE=15
PRINTQUALITY=120
YRESOLUTION=144

and with "Save printer environment" is off :
ORIENTATION=0
PAPERSIZE=78
COLOR=2

I tried to save with and without "Save printer environment" but with no
result. He constantly got to much space between Group footer and Page
footer. Any suggestions?

I have a question : how could I print "A5 Rotated" form in whichever printer?
I look everywhere but I don't see how can I do this.

TIA
Mitja