[futurebasic] Re: [FB] Printing to a Printer

Message: < previous - next > : Reply : Subscribe : Cleanse
Home   : August 2009 : Group Archive : Group : All Groups

From: Brian Stevens <bstevens33@...>
Date: Tue, 4 Aug 2009 12:59:37 -0700
On Aug 4, 2009, at 9:47 AM, Peter wrote:
> I'm trying to amend the example of "Page-Setup&Print-Sheets" to  
> incorporate  into my Design program.
While that is one of Robert P's works, it is an old FB4 example and  
might not be the best place to start since, AFAIK, it has not been  
updated for FB5( even though it may only need a few tweaks since it  
uses modern PM calls ). Also, even though your exact printing  
requirements are not clear, it seems possible the standard built-in FB  
printing commands might be enough. Maybe you can post your own failing  
code instead of referring to a demo. It might be easier to give you  
more precise assistance.


> Using the old DEF PAGE etc and FB4 it was fairly easy just to change  
> _ToScreen to _ToPrinter.
DEF Page, route _toPrinter and route _toScreen are all supported in  
FB5 ( although DEF Page's disappearance from the FB5 help might give  
you that impression ) as are def Lprint ,close Lprint. The basic model  
for printing is still the same:

DEF PAGE  -----if you want to give the user the choice of landscape/ 
portrait etc.
check prCancel
route _toPrinter

-------do your graphic/print commands next -------
Depending how your page is rendered, graphic commands might be used if  
CG is involved and all the appropriate QDBeginCGContext   --- 
everything between---- QDEndCGContext will be used. If using QuickDraw  
to render than the print command or other QD commands are used

fn PrintTheHeading // if you have a heading

do your commands to print each line of the page.

If how many lines are printed on a page needs to be checked it would  
be necessary to add:
route _toScreen : clear lprint : route _toPrinter
while the detail lines of the page are printing to print the current  
page without closing the print job

finally

route _toScreen
close lprint.

Your email was not specific about printing with/without user  
interaction but that can easily be added. Also, please let the list  
and the team know where you got the idea that route _toPrinter/ 
_toScreen etc. are not supported in FB5 so it can be fixed. Thanks!

Brian S.