On Solaris, you can print directly to a PostScript or PCL5 file. You do not need to make any code changes to print reports on Solaris instead of Windows—you can use the same properties, functions, and events as in Windows.
To print DataStores, use the DataStore Print method or PrintDataWindow(PrintJobName, DataStoreName). If you link a DataStore to a DataWindow and print the DataWindow object on Solaris, the printed output has the fonts and layouts defined in the DataWindow object.
Blank spaces A blank space is not supported in a print job on Solaris, so the PBVM substitutes a hyphen for each blank space in a print job name before sending it to a printer.
The fonts used in printing are those provided in the dwprinter/fontmetrics directory. AFM and TFM files are ASCII formatted files that contain information about specific PostScript (AFM) and PCL (TFM) fonts. Each PostScript and PCL font has a corresponding font metric file.
The print mechanism reads AFM and TFM files to acquire font metric information. This includes such things as character widths, baseline location, ascender size, descender size, underline stroke width, and underline position. It then translates this metric information into the formats expected by Xlib APIs such as XTextWidth.
The best approach is to select fonts that are available on both Windows and Solaris when you design the DataWindow. However, each platform has its own font-rendering engine, so you might notice differences in the sizes of fonts between Windows to Solaris. You should test the printed output on Solaris early in the development process.
Support for printing DataWindow objects is based on the Wind/U product from Bristol Technology. The Wind/U GDI library and Xprinter library have the following limitations:
No support for multibyte character sets (MBCS) or Unicode
Xprinter is not thread safe, therefore print jobs are serialized