Printing PCL Math Symbols with AIX Virtual Printers


About this document
Printing the symbols

About this document

This document describes how to modify the virtual printer to print files that contain math symbols or other symbols that are not contained in the input codepage (symbol set) for the virtual printer. The procedure is similar to fully formatting file, but varies slightly for math characters. Printing math symbols in text is usually accomplished by an application that generates formatted Printer Control Language (PCL). If you try to print this data through a virtual printer, the codepage translation causes problems.

This document applies to all levels of AIX.

Printing the symbols

To print one of the formatted files, you must print in passthrough mode, (_d=p), or turn off codepage translation with (_X=). With _X=(nothing), make sure you press Enter directly after the = from lsvirprt change menu.

Some math symbols like 1/2, 1/4, +, -, * and / are part of standard symbol sets. However, symbols like the DEL symbol, or the integration symbol, square root symbol and the general SET operation symbols are not universally available. The list of the characters in a symbol set can usually be found in the printer technical reference manual.

To illustrate the problem, you can generate a sample test PCL file using a text editor like vi. To generate the Esc character from the vi insert mode, press Ctrl-v followed by the Esc key. You can generate a particular character in insert mode with the HFT, (X-terminal), by holding the ALT key down, and entering the 3 digit ASCII code in the right-hand keypad. These characters appear in this document as [###]. The PCL command to enter this symbol set is ESC(5M. Other math symbol sets and the PCL commands to enter these modes follow:

Individual laser printers will support some or all of the preceding symbol sets.

The Esc character shows as ^[ in the vi editor and in this document. To create an Esc in vi, while in insert mode, press Ctrl-V followed by Ctrl-M. The carriage return is ^M and is used because some passthrough printers do not instruct the the printer to add carriage returns. For laser printers, change the ct attribute with lsviprt to show ct=\33&k2G, instead of adding carriage returns to the file. The ^[(8M instructs the printer to return to a text symbol set (Roman 8). The following example uses the PS MATH Symbol Set.

     Omega:   ^[(5M[087]^[(8U ^M 
     Phi:     ^[(5M[089]^[(8U ^M
     Del      ^[(5M[209]^[(8U ^M
     Approx:  ^[(5M[064]^[(8U ^M
     Set Symbols:    ^[(5M[199][200][201][202][203][204][205][206][207]^[(8U  ^M
     Square root:    ^[(5M[214]9 [222] 3 ^[(8U ^M
     Integral:       ^[(5M[242]^[(8Uf(x) ^M
     Equivalencies:  ^[(5M[185][186][187][163]=[216]^[(8U ^M
Steps to test the results:
  1. Print the file normally with the virtual printer.
  2. Print the file with: qprt -dp math.sym -Ppclqueu.
  3. Change the _X attribute in the virtual printer to IBM-815, ISO8859-1, ISO8859-2, and to [nothing}, _X= and press Enter immediately after the _X. Do not use -dp for this test.
  4. Compare the results.

[ Doc Ref: 9174714418464     Publish Date: Feb. 22, 2001     4FAX Ref: 6487 ]