Embed PCL Commands for Check Printing

PCL (Printer Command Language) is a page description language. Like Postscript, it's widely supported in office printers. To support PCL printers, Publisher provides a PDF to PCL converter. In addition to translating the PDF document into a sequence of PCL commands, specific PCL commands can be embedded in an RTF template, so that when the report output is generated in PDF and then converted to PCL the commands are maintained in the PCL file. When the PCL printer receives the PCL file, it invokes the embedded commands.

Publisher supports PCL commands to enable font selection commands for secure check printing; for example, to invoke the MICR font used for the machine-readable account codes and the custom font used for the check signer's signature. The MICR font and the custom signature font are stored in hardware cartridges on the printer and are invoked using PCL escape sequences embedded in the PCL-formatted file.

To embed the PCL commands in the file that is printed, use the Publisher commands described in this section in your RTF template in the specific position on the page where you want the PCL commands to render.

To use this feature, an administrator must also define the PCL printer in the Publisher printer setup page to use the PDF to PCL filter.


This feature is provided to support commands for font selection as described in the chapter, PCL Font Selection of the PCL5 Printer Language Technical Reference Manual. If you include other PCL commands (such as tray switching) in the template, the report output may produce the results desired, although these commands are not strictly supported.

Procedure Overview

This overview discusses how to embed PCL commands in a template

To embed PCL commands in a template to be invoked by your PCL printer, perform the following:

  1. Define the PCL printer in the Publisher Administration Delivery options.
  2. Include the commands in the RTF template.
  3. To generate the output, schedule or run the report selecting PDF as the output type. Select the PCL printer defined in step 1 as the destination.

Embed PCL Commands in RTF Templates

Publisher supports custom PCL command embedding, which means that in addition to translating PDF documents into a sequence of PCL commands, Publisher supports specifying exact PCL commands to be included at a specific position on a PCL page.

To use this feature, include the following syntax in a template or data at the position where you want to print out the text.

<pcl><control><esc/>(pcl command)</control>(text or data field)<sp/>(text or data field)</pcl>


<pcl></pcl>: indicates the start and end of the custom PCL command sequence and the text to print using the custom command. If any text data appears before <pcl> or after </pcl>, it's printed as regular text using the font and font size in effect.

<control></control>: indicates the start and end of the PCL sequence. The data inserted after </control> is considered text data. The PCL command included between <control> and </control> is applied to it. Inserting any data between <pcl> and <control> is invalid and the data is ignored.

<esc/>: include <esc/> between <control> and </control> to escape character (ASCII 0x1b) in the output.

<sp/>: inserts a space. Include <sp/> in the text section (after </control> and before </pcl>) to insert a space character in the output.

The entire command and text sequence between <pcl></pcl> must be entered as a single line of text rendered by a single text-showing (Tj) operator in PDF. To insert a space, you must use <sp/> because the inclusion of an actual space in the text or data would separate the sequence into multiple text sequences in the PDF.

The following figure shows a sample check template with the command sequence:

The PCL command sequence in the example is


Note that (70X is the font to substitute; ROUTING and ACCOUNT are form fields mapped to the input XML data and the <sp/> command is used to insert the space between the routing and account numbers.

This RTF template is merged with data and converted to PDF as shown in the following figure. The PCL command sequence is displayed as regular text.


You can make the font size smaller to make the line less visible, but you cannot hide it.

When this PDF is converted to PCL, <esc/> is converted to the escape character 0x1b; the PCL command is included from the PDF ((70X); <sp/> is converted to a space character and the text is generated with the PCL absolute cursor positioning command (&a#v#h#P). The following figure shows the PCL output displayed using a text editor.

When this PCL file is sent to a printer where the MICR font with font ID 70 is installed, the printer produces the final printed output as shown in the following figure:

Specifications and Restrictions

The PDF to PCL converter supports input of PDF files up to version 1.7 and output of PCL 5 (including HP/GL2 and PJL) and PCL 5c.

The converter supports basic text and vector/raster graphic features in PDF that are required for most business reporting and office printing.

Note the following limitations for documents processed by the PDF to PCL converter:

  • SVG graphics, such as graphs, aren't supported.

  • Embedded objects (such as Flash objects) and file attachments aren't supported.

  • Use of Adobe core dingbats and symbol font isn't supported. Use TrueType fonts to print dingbats and symbols and embed the font when generating PDF.

  • Supports printing of the generated output on any printer that supports PCL 5/PCL 5c standard. However, the display of the generated output using PCL viewer applications or any software that re-processes PCL for other than direct printing purposes isn't supported.

  • The PDF to PCL converter supports, with limitations, the conversion of PDF documents generated by the FO processor. Other PDFs, such as PDF files processed with FormProcessor or PDF documents generated by external applications may produce the printed results desired, but aren't strictly supported.

  • The PDF to PCL converter supports the conversion of PDF documents generated by the PDFBookBinder and PDFDocMerger utilities so far as all the PDF documents used for generating the output are originally generated by the FOProcessor and the documents don't include restricted features.