Tutorial :C# PCL rendering into TIFF (or other image format)


I'm looking for the best solution -- and perhaps the cheapest also -- to take PCL5e and PCL6 compliant code and render it into a TIFF image. Reliably.

Does anyone have any experience with the PCLTool SDK from PageTech (http://www.pagetech.com/pcl.php)? This looks to be the best I can find, but I'm not sure how flexible it really is.

The other options is trying to write my own interface, which would be a BEAST of a project and not one I really want to try to tackle.

Any open-source solutions out there? Anyone with a C#/.NET project having success with PCL rendering? If so, how?


Converting PCL into TIFF is the easiest conversion for any PCL transformation tool. However, converting a all-points-addressable printer control language with download/printer resident bitmap and two types of scalable fonts that may or may not be bound to 100's of symbol sets... it full of surprises. So, make sure you have a wide range of test PCL files from both legacy and current applications before you make any major application development decisions.

These are the questions you need to ask yourself before you try to write your own code (with/without any vendor's SDK):

  1. "any PCL?" No tool can convert "any PCL". And, PCL XL/PCL6 is a completely different language. The HP PCL5e technical documentation was last updated in 1997, but most of it dates back to 1992. Do you want to become a PCL expert? Do you want to become an expert in some PCL transformation SDK? Or, do you just want to support PCL and get the job done?

  2. How is the PCL captured? Will you know which user created it?

  3. Does the PCL have a meaningful filename, that you want the TIFF to also have?

  4. Are you going to fax the TIFF? How will you get the fax number and match it up with the TIFF?

  5. Are you going to index the TIFF? How will you get the index keys?

  6. Do you have multiple document PCL print files? Do you want them split into individually named/indexed/routed TIFF's.

  7. Do you expect that all your PCL to have immediately searchable text for you to access?

We have specialized in PCL transformation technologies for 18 years. We have the most versatile tools in the world. However, only recommend writing custom code with our API if our Windows console program (PCLXForm.exe) can't provide you with all your application and workflow requirements in a more extensible way. PCLXForm has a very powerful ASCII text script programming language for rapid application development and is much easier for us to support versus custom API code.

We run into legacy PCL every month that requires us to adapt our product to it. Or, HP, Lexmark or Xerox come-out with a new printer that has a new proprietary compression method in their PCL that we have to reverse-engineer in order to convert it. HP just came-out with a printer that uses a third party PCL5 (not PCL5e) emulator that is not even fully compatible with PCL5 level code. We have many clients that use our tools to stream edit PCL into another level of PCL just to print legacy PCL on a newer PCL printer.

So, before you start writing a C# program that simply uses a pcl2tif function. I highly recommend that you first answer the above questions. Or, better yet - create a complete Statement of Work and present to various vendors to see what they recommend.

Regards, Bob Pooley pagetech.com


Have used PageTech and it works well. I'd also suggest looking at http://www.lincolnco.com/ We've had very good success with this solution. It's a couple of libraries you can call from C# with ease and convert to PDF, from there a quick Ghostscript or other tool will produce the TIFF you need.

The problem is that PCL is nasty. Not the language but rather the fact that so much PCL breaks the rules. As such there are only a few engines that work well. PageTech and Lincoln are the only ones we've used that have had really good success.

We consider ourselves to be PCL experts and would NEVER tackle the project of builing our own parser.


Ghostpcl (under GPL) renders PCL5 and PCL6, output to many Ghostscript devices like tiffg3, tiffg4, pdfwrite, jpeg. See www.ghostscript.com for download of source and precompiled binaries for Win32 and Linux.

Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Next Post »