Print Margin strangeness [was Re: ]

graham samuel graham.samuel at wanadoo.fr
Fri Apr 1 03:40:22 EST 2005


On Thu, 31 Mar 2005 15:32:48 -0600, Ken Ray <kray at sonsothunder.com> 
wrote:
>>
I had written:
>> Well, I did that - I was already using the printMargins settings (72
>> all round) to calculate where on the card to put the field that
>> contains the print content, but at your suggestion at the last minute,
>> just before the actual print statement, I set them to all 0s without
>> going back and altering the position of the field. The result was (to
>> me) extremely strange: the printing worked properly, in that each
>> margin was now 1 inch (72 pixels). This also included the top and
>> bottom margins. In reality my particular printer won't print on the
>> whole paper surface, so margins of zero are meaningless. Thus I'm at a
>> loss to understand why it worked. Eventually I'll try it on the PC and
>> see if the thing behaves differently.
>>
>> Thanks very much for the advice - I just wish I understood why it
>> worked. It seems to me pretty much like a bug in RR.
>
> I think it's because for some reason your printer driver was imposing 
> its
> own margin of 1 inch that was then being *added to* by Rev, so it 
> became a 2
> inch (144 pixel!) margin. Now why your printer driver would do that I 
> don't
> know...

On Thu, 31 Mar 2005 16:43:52 -0600, "J. Landman Gay" 
<jacque at hyperactivesw.com> wrote:

> The printmargins always begin at the spot on the page where the printer
> can start printing. If your printer imposes a 1" limitation on all
> edges, then setting a printmargin of another inch will get you two
> inches of white space.
>
> In other words, margin "0" is where your printer can lay down the 
> first ink.

Wow! Thanks for all this, both of you - I appreciate it.

Jacque, are you saying that the RunRev printMargins are not after all 
the distance from the physical edge of the paper to the point where the 
marking begins, but something else? This is certainly not what is 
implied by the RunRev documentation, and furthermore I have correctly 
used the printMargins to decide the width, height and position of the 
rectangular area in which printing can take place. For example, if the 
paper is 8.5 inches wide and the left and right margins are one inch, 
then the available width for printing is 6.5 inches wide, and the 
rectangle has to be left-right centred on the page. Same kind of 
calculation for the other axis, of course.

All this one can work out from the margins, but then when it comes to 
actually telling the printer to print, you have to ignore all this and 
reset the margins to zero, or maybe some other value depending on the 
specific printer involved, which of course an application in RunRev 
can't know in advance (BTW, my Epson printer does not have standard 
margins of 1 inch, but a lot less, and they are not symmetrical, so it 
is not true to say that my printer 'imposes' a 1 inch limitation).

Does this make sense, or is it a bug? It seems like a bug to me. And of 
course I have a long-standing gripe that one can't really interact with 
printer drivers in Rev, so the user can't set the margins in a sensible 
way - see bug number 1619, which although officially Unconfirmed (!) 
now has a fairly respectable 39 votes.

I really think the RunRev team does need to pay more attention to 
printing.

Graham

----------------------------------------
Graham Samuel / The Living Fossil Co. / UK and France




More information about the use-livecode mailing list