wwpsof - Generic I18N (internationalized) print filter for PostScript printers
[+I input-tray] [-i indent] [-K sides] [-l page-length]
[-N number-up] [-n login-name] [-O option-list]
[+o output-bin] [-S paper-size] [-v] [-w page-width]
[+C pcf-file]... [accounting-file]
Most of the options supported by wwpsof should be specified by the user on the lpr command line rather than on the wwpsof command line that you enter as the if or of value in the /etc/printcap file. When the wwpsof command is specified in the /etc/printcap file, you can include options either to establish defaults (which a user can override) or to hard code a particular setting (which the user cannot override). To establish a default setting, precede an option with a plus sign (+). To establish a setting that the user cannot override, precede an option with a hyphen (-). Options shown with a hyphen (-) in this section and the SYNOPSIS are typically not included on a wwpsof command line, and are left to user discretion.
Some print characteristics, such as vertical printing, can be specified to the filter by using one of several options. In these cases, the options that correspond to those on the lpr command line are preferred. The alternative options are supported only so that the wwpsof command line has backward compatibility with the command lines of older print filters.
Support for the listed options can vary from printer to printer and the code required to communicate these options can vary as well. Therefore, several wwpsof options will work only if enabled by code entries in the printer customization file specified by the +C option. See the ``Printer Customization File'' section for detailed information. Prints control characters. Tells the print filter how to interpret the text. Valid values are: Interpret as PostScript Interpret as plain ASCII text
Specifies the file that logs accounting information for print jobs.
The wwpsof filter is a generic text-to-PostScript converter that converts the various single-byte and multibyte characters used in an international environment to printable PostScript input. The filter embeds all required PostScript font data within the PostScript program. Therefore, print jobs that include local language characters can be printed on printers where local language fonts are not resident. To use this filter with a printer, the printer has to support PostScript Level 2 (or higher) or PostScript Level 1 with the composite font extension.
The wwpsof filter uses PostScript outline fonts, if available. Otherwise, the filter attempts to use lower quality bitmap fonts. The bitmap fonts are available to the filter only if it has access to an X font server. See the ``Printer Customization File'' section for specifying the location of an X font server to the filter.
The wwpsof filter handles device-specific printer options provided that an appropriate printer configuration file (PCF) is supplied. The filter also performs accounting functions. At the completion of each print job, accounting records are written to the file specified by the af field of the entry for the printer in /etc/printcap.
The filter can handle plain text files, files preprocessed by nroff, and PostScript files generated by CDE applications. All of these files can contain non-ASCII characters.
The filter is sensitive to the locale setting. When processing a character, the filter determines if the character is printable in the current locale. The filter also uses the locale setting (more specifically, the codeset part of the locale setting) to find an appropriate font. Except for files in 16-bit Unicode or 32-bit ISO 10646 (UCS-4) format, users must set locale appropriately before printing files that contain characters in languages other than English. If the locale setting for the process is not appropriate for the input file, locale can be set specifically for the print job through the -O locale=locale-name option.
The filter recognizes files in 16-bit Unicode and 32-bit ISO 10646 (UCS-4) data formats by using encoding patterns in the file. These files are printed by using appropriate and, if necessary, different kinds of fonts.
You can specify wwpsof for both the of and if fields of an /etc/printcap file entry. If the user's login name and host system name contain non-ASCII characters, you must specify wwpsof in the of field. Otherwise, you can omit the value for of. See printcap(4) for more information about defining /etc/printcap entries.
The printer customization file (PCF) provides printer-specific and wwpsof-specific information for controlling the operation of a printer. The wwpsof filter uses /usr/i18n/share/options/wwpsof.pcf as the PCF file. This file has a generic set of font-handling tags that will work with all supported PostScript printers but does not contain any device-specific settings.
The operating system also provides a set of PCF files customized for specific printers in the /usr/lbin/pcf directory. These files have device-specific settings but no font-handling information. The printer-specific PCFs are supported by the pcfof filter, and the following ones, which apply to PostScript printers, can also be used with the wwpsof filter.
ln17ps.pcf ln17ps_a4.pcf hplj4000tn.pcf hplj4000tn_a4.pcf hplj4mplus.pcf hplj4mplus_a4.pcf hplj5simx.pcf hplj5simx_a4.pcf ln15.pcf ln15_a4.pcf ln20.pcf ln20_a4.pcf ln40.pcf ln40_a4.pcf lnc02.pcf lnc02_a4.pcf
If one of these PCFs has settings appropriate for your printer and you simply want to apply these printer-specific values in addition to the font-handling definitions in the wwpsof.pcf file, you can use the +C option to specify the printer-specific PCF and do not need to specify wwpsof.pcf at all. The wwpsof filter always applies the settings in wwpsof.pcf unless they are redefined in a PCF specified on the command line.
You can also create a customized PCF. The main reasons for creating your own PCF are to: Change the font server location
The remainder of the information in this section explains the contents of a PCF file so you can create or adapt one to meet your printer and system requirements. If you do create a customized version of an existing PCF, make sure your version has a file name different from any system-supplied PCF name. Otherwise, an update installation procedure will not recognize your PCF as being user supplied and will replace it with an unmodified version of the file you customized.
If you want to add only one or two entries to a printer-specific PCF that already exists, the recommended practice is to specify only the additional entries in your customized PCF. Then you specify the existing PCF, followed by your supplemental PCF, on the wwpsof command line. When multiple PCFs are specified on the command line, entries as supplied by the combination of PCFs apply. One PCF overrides another only when there are multiple occurrences of the same kind of entry. In this case, the entry as defined in the file you specify last in the command line is the one that wwpsof uses.
Each entry in the PCF adheres to the following format:
In this format, tag specifies the capability to be customized and value is the setting or code for this capability.
A tag can be one or more keywords or a mix of keywords and user-supplied values. There are two types of tags: those that correspond to printer-specific capabilities and those that are wwpsof-specific. The value for a tag that is printer specific is frequently the code sequence that needs to be sent to the printer to enable or exercise a printer capability. The value for a tag that is wwpsof specific controls font handling or codeset conversion. All tags are named and described following the list of PCF format rules.
Format rules for PCF entries include the following: To continue a PCF entry to the next line, use the backslash character (\) at the end of the line to be continued. To include the backslash character in a value, enter two backslashes (\\). To begin a comment, use an exclamation mark (!). To specify a character by its octal value, use a backslash (\) followed by three octal digits. For example, \033 represents the escape character. A field that begins with a slash (/) is interpreted as a file specification.
Printer-specific tags supported by wwpsof include the following ones. These tags are a subset of the tags supported by the pcfof filter. The reset sequence that is sent to the printer The number of seconds to wait after sending out a reset sequence The initialization sequence that is sent to the printer at the beginning of a print job The number of seconds to wait after sending out an initialization sequence The termination sequence that is sent to the printer at the end of a print job The number of seconds to wait after sending out a termination sequence Code that enables the PostScript interpreter. The number of seconds to wait after sending the code to enable the PostScript interpreter Code that disables the PostScript interpreter The number of seconds to wait after sending the code to disable the PostScript interpreter PostScript prolog included in every print job Code that enables portrait page orientation
Font-handling tags include the following: Printer resolution in the x direction Printer resolution in the y direction Location of the font server. The default value is localhost:7100. This value means that the font server is the local system and has been set up to listen for client connections at port 7100. For basic information about setting up a font server, refer to X Window System Environment. For information about using the /sbin/init.d/xfs script to create a configuration file for autostarting the font server, see the xfs(1X) reference page. The /sbin/init.d/xfs script is provided to help set up the font server so that it can be used with wwpsof. The printer-resident font to be used for a particular font type and codeset. See the discussion of font specification tags that immediately follows this list. The soft outline font to be used for a particular font type and codeset. See the discussion of font specification tags that immediately follows this list. The soft bitmap font to be used for a particular font type and codeset. See the discussion of font specification tags that immediately follows this list. The codeset look-up sequence that the filter follows for Unicode character conversion. This value is a comma-separated list of codeset names. If a Unicode character can be converted to a character in the first codeset listed, the font supporting that codeset is used for the character in the PostScript file. If the character cannot be converted to that codeset, the filter tries conversion by using the next codeset in the list. If a Unicode character cannot be converted to a character in any of the codesets listed, the character is ignored.
A PCF file can include multiple entries containing tags that begin with font specification key words (ps resident font, ps soft outline font, or ps soft bitmap font). In addition to the key words, these tags include the following parameters: The font type, which can be normal, bold, italic, or bold-italic The name of any codeset supported on a DIGITAL UNIX system
The value part of a font-specification entry has the following format:
font-name [fprop] [plane:pmask ]... [, ...]
In this format, font-name is the name of the font, such as
Courier-ISOLatin2 (example of an outline font name) or
(example of a soft bitmap font name).
The fprop value can be Mono (for monospace) or Prop (for proportional).
The plane and pmask values are used only for fonts supporting multiple codesets. In these cases, the filter finds specific font data by using a logical OR operation to combine a code point with the plane and pmask values.
A font-specification entry can contain multiple font listings, separated by a comma and space. If there are multiple plane:pmask pairs following a particular font name, they are separated only by spaces. Following are three examples of font-specification entries from the PCF file that wwpsof uses by default: ps soft outline font normal ISO8859-9: Courier-ISOLatin5
ps soft outline font bold eucTW : Hei-Light-CNS11643-1 1:8080, \
ps soft bitmap font normal deckorean: \ -dyna-munjo-medium-r-normal--0-0-0-0-m-0-KSC5601.1987-1 1:8080, \ -adecw-myungcho-medium-r-normal--32-320-75-75-m-320-ksc5601.1987-1 1:8080
The value of the ps resident font tag must be a font that is resident in the printer. If you are sure that non-Latin-1 fonts are printer resident and specify them in the PCF, the wwpsof does not embed in the PostScript file any glyphs for characters supported by those fonts. This reduces the size of the PostScript print job and, if soft bitmap fonts are the only alternative, improves the clarity of the printed file. However, for Asian and many Eastern European languages, printer-resident fonts are usually available only on printers manufactured to support specific local languages.
The value of the ps soft outline font tag must be one or more PostScript outline fonts that are installed on the local system. Outline fonts for characters included in the Latin-1 character set are installed by default on a Tru64 UNIX system. Outline fonts for characters not included in the Latin-1 character set can be installed from optional subsets that are included in the Tru64 UNIX product kit. For example, PostScript outline fonts for Chinese characters are included in one of the software subsets that support Chinese.
The value of the ps soft bitmap font tag must be one or more soft bitmap fonts made available through a font server. Like outline fonts, bitmap fonts are installed on the font server from optional subsets that are included in the Tru64 UNIX product kit. The font server, which can be either the local system or a remote system, sends fonts to the client application, in this case, the wwpsof filter.
Because soft bitmap fonts are primarily used for screen displays, their resolution is not as crisp on the printed page when compared to printer-resident or outline fonts. However, setting up bitmap fonts in the PCF for a printer controlled by the wwpsof filter allows CDE application users to use that printer to print screen text that contains local language characters. Furthermore, certain languages, such as Japanese, are supported on a DIGITAL UNIX system only through printer-resident or soft bitmap fonts. The wwpsof filter therefore enables hard copy printing of Japanese text files for users who do not have a Japanese printer.
Embedding font data in PostScript files may increase the size of the file beyond what printer memory can support. If this happens, the wwpsof filter appends an error page to the end of printed output to notify the user that the file size exceeded printer capacity.
Commands: fsinfo(1X), fslsfonts(1X), lpr(1), lpd(8), pcfof(8), xfs(1X)
X Window System Environment delim off