On Oct 17, 2006, at 12:56 PM, Yoshiyuki Hasegawa wrote: > n OSX, how about the setting of the percentage of the scale when > printing on paper? The PMSetScale and PMGetScale are your friends here. If you start down this road be prepared to use other printer manager calls such as PMGet (and Set)Orientation and others. FB verbs make some of these calls for you, so it is possible to mix both FB calls and PM calls. Details about the PM calls can be found in the Carbon Printing Manager documentation in Xcode. The toolbox fns are defined in Tlbx Printing.incl and their use is relatively simple. This is not a working example but here is a code snippet. gFBPageFormat is the global FB uses when setting up the PM session. dim as UInt16 @theScale dim as OSStatus err err = fn PMGetScale ( gFBPageFormat,@theScale) theScale = 70 //70% scaling err = fn PMSetScale ( gFBPageFormat,theScale) HTH---Brian S. ========================= PMSetScale Sets the scaling factor for the page and paper rectangles. OSStatus PMSetScale ( PMPageFormat pageFormat, double scale ); Parameters pageFormat A page format object. To create a page format object you can call the function PMCreatePageFormat and then call the function PMSessionDefaultPageFormat to initialize the page format object to default values. scale The desired scaling factor expressed as a percentage. For example, for 50 percent scaling, pass a value of 50; for no scaling, pass 100. Return Value A result code. See “Carbon Printing Manager Result Codes”. Discussion You can call the function PMSetScale to change the scaling factor that appears when your application invokes the Page Setup dialog. If your application needs to call PMSetScale after it has called PMSessionPageSetupDialog, make sure you call PMSessionValidatePageFormat before you call PMSessionBeginDocument. If you call the function PMSetScale after your application calls PMSessionBeginDocument for the print job, the changes are ignored for the current print job. Availability Available in Mac OS X v10.0 and later.