Thanks Jacque, and Terry too. I expect I’ll hack it in the end by following your advice. I think now that I can use the print into rect version to actually enlarge the size of the card on the virtual paper, which will generate the hi-res result I want. I will try that.
I just wanted a PDF representing the whole of a card with absolutely no additional white space or extra pages, and I wanted the highest resolution I could get. This is for illustrations in a manual that show the reader what he or she will see on the screen. Results up to now have been a bit fuzzy, which is where the hi-res idea comes from. Of course I don’t expect bit-map images to look any sharper when they’re enlarged, but everything else should. Graham > On 22 Feb 2015, at 21:08, J. Landman Gay <jac...@hyperactivesw.com> wrote: > > The printPaperSize reports the physical size of the sheet of paper. You > generally don't need to mess with that. Either restart LC to get rid of the > setting, or use resetPrinting from the message box to put everything back to > defaults. Remove that line of code. If your stack is smaller than the size of > the default PDF "paper," the handler was probably making it too small to hold > the content. > > If the problem is the other way (the default paper size isn't large enough) > then setting the printPaperSize is okay because you need more room. In that > case what you've got should work if you add some extra space for the printer > driver limitations. > > You're right about those, and you need to take those into account too. Most > printers can't print within a half inch of the top of the paper. If you also > have a top margin of, say, half an inch, then there's a full inch at the top > before the printing starts. Setting the topMargin to 0 will still cause the > top of the printout to start at the half inch required by the printer driver. > If the content of your stack is not located at the very top of the card, then > add that amount to the top gap as well. > > I usually create a separate printing substack that moves data into carefully > placed fields that are located at the very edges of the card. That makes it > easier to calculate where the printout will start. I know that setting the > margins to, say, 18, will add a quarter inch to the printer's required > margins and that's where the content will begin to print. If I use a > printmargin of 0 it will put the content right up against the default limit > of the print driver. > > Finally, if none of this works, then use the "print into rect" syntax. LC > will scale the printout to fit into the rectangle you specify. > > On 2/22/2015 4:41 AM, Graham Samuel wrote: >> Not quite sure I understand this (I did once, but i’ve got rusty - oil >> can!). I assumed that the following code would exactly fill a page: >> >> set the printCardBorders to true >> set the printPaperSize to (the width of this card) & "," & (the height of >> this card) >> set the printMargins to "0,0,0,0" >> print this card >> >> But maybe you're saying that there is some hidden factor here. One thing I >> can think of in a physical bit of paper (which a PDF isn't, really) is that >> only certain printers can print to the very edge, so there might be a kind >> of hidden margin (is this "the available print area"?). I am not sure if the >> printPaperRect comes into this: as far as I can see, it shouldn't, since the >> printMargins are measured from the edge of the page according to the LC >> Dictionary. The printing might be cropped if edge-to-edge isn't available, >> but that should not increase the number of pages printed, should it? >> >> I will experiment some more. >> >> Graham >> >> >>> On 21 Feb 2015, at 21:14, J. Landman Gay <jac...@hyperactivesw.com> wrote: >>> >>> On 2/21/2015 10:11 AM, Graham Samuel wrote: >>>> 1. When you print to a pdf file, you often get a blank page. I have >>>> not yet found that the solution offered (putting a ‘print break’ into >>>> the script) works for me. >>> >>> If the bounds of the printout overrun the available print area, LC will >>> push the content down to another page. It sounds like you may have margins >>> at either the top or bottom of the page that are too large to accomodate >>> the height of the printout. >>> >>> You can set the margins to a smaller number, or use the "print into rect" >>> syntax to scale the output to fit. Remember when dealing with margins that >>> the margins represent the amount of space around the rect of the card >>> itself. If your fields or other controls are not at the very edges of the >>> card, then they will be inset more than just the margin amounts. >>> >>> -- >>> Jacqueline Landman Gay | jac...@hyperactivesw.com >>> HyperActive Software | http://www.hyperactivesw.com >> >> _______________________________________________ >> use-livecode mailing list >> use-livecode@lists.runrev.com >> Please visit this url to subscribe, unsubscribe and manage your subscription >> preferences: >> http://lists.runrev.com/mailman/listinfo/use-livecode >> > > > -- > Jacqueline Landman Gay | jac...@hyperactivesw.com > HyperActive Software | http://www.hyperactivesw.com > > > _______________________________________________ > use-livecode mailing list > use-livecode@lists.runrev.com > Please visit this url to subscribe, unsubscribe and manage your subscription > preferences: > http://lists.runrev.com/mailman/listinfo/use-livecode _______________________________________________ use-livecode mailing list use-livecode@lists.runrev.com Please visit this url to subscribe, unsubscribe and manage your subscription preferences: http://lists.runrev.com/mailman/listinfo/use-livecode