Word reported side margins as .13". Publisher just wouldn't
or couldn't comply. It didn't occur to me that installing a firmware
and a driver upgrade would affect Publisher in the way it controls
the printer. It just seem logical or one would be leery if printer
upgrades would/might affect all programs.
There is a Windows API called GetDeviceCaps and if you pass it the handle of
a printer it will tell you what the unprintable margins are (and lots of
other things besides) at the printer's current settings. These margins vary
from one printer to the next and they also vary on the same printer at
different settings and it is important for applications to know exactly what
they are or they will be unable to position things correctly on the page.
Normally all applications check those details every time you print
something, so that if a driver upgrade changed the way that the printer
reported those margins it would normally affect all applications. As it
turns out in your own case the printer continued to report the correct value
for those margins even after you performed the hardware and the driver
upgrade, as is evidenced by the fact that MS Word detected them properly, so
its difficult to see what could have upset Publisher in that regard. The
margins reported by the GetDeviceCaps API are by default in device pixels
(printer pixels) and the application should always perform a conversion to
the "real world units" you use in a document (inches or whatever) by also
checking the current resolution (dots per logical inch) of the printer.
Perhaps Publisher stored one or other of those values in the registry or
somewhere instead of reading them every time (bit naughty of it if it indeed
did that, but you never know). It might for example have stored one other of
the values in the Publisher document itself and then failed to update it
after the driver update had possibly changed one of them (Publisher stores
all printer information in the document as far as I know and it uses those
values next time you print that document if you do not actually specify some
other printer or setting). Still, whatever it is within Publisher that
caused it to come up with the wrong answer your full reinstall of Publisher
certainly seems to have fixed it. I don't normally use Publisher (although
my wife does) so I'm not entirely sure how it behaves internally. For my
own part most of the stuff I print is printed from within one of my own
Visual Basic programs, and I always ensure that my code checks all printer
parameters every time. Anyway glad you've got it sorted out now. The reason
I came into this thread initially was that my wife pointed it out to me
because she knows I am currently in a little "fight" with Hewlett Packard
regarding their HP PhotoSmart 2575 range of printers reporting incorrect
values for the unprintable top margin under certain specific printer
settings, which causes everything on the page to be printed incorrectly.
It's only a small amount, but it is very important when printing certain
documents (mini address labels at 65 labels per page for example). HP still
haven't sorted that problem out yet, but I keep pestering them ;-)
Mike