last updated August 15, 2000

Question: How do I unpack this .tar.gz file?

Answer: .tar.gz is the standard archiving format under Unix. It is similar (but not identical) to ZIP on Windows or Stuffit on the Macintosh. To unpack it under Linux, do the following (If you are not using version 0.8.6, substitute your version number with what appears below.):

  1. Make sure the filename ends in .tar.gz. Some versions of Netscape and/or Internet Explorer mangle the filename.
  2. Copy the file somewhere where you keep third-party software. I suggest /usr/local/src or /usr/src.
  3. Extract the archive with the following command:
    tar zxvf ppa-0.8.6.tar.gz
  4. Change directories to pbm2ppa-0.8.6
    cd pbm2ppa-0.8.6
  5. Read the README and INSTALL files for further instructions, and continue from there.

If you run into problems with this procedure, please email me at tim@normsoft.com.

Question: I can't get it working. What now?

Answer: Please look at the Reporting Problems page for instructions on how to report a problem you are having.

Question: Is color support planned?

Answer: Yes, pnm2ppa 1.0 fully supports color.

Question: How do I print text files?

Answer: The enscript (or nenscript) program will convert text files to postscript files, which you can then pass through ghostscript to print. Some people have suggested a direct text to ppa converter, but that is currently not planned.

Question: How do I print on A4-sized paper?

Answer: Beginning with version 0.8.6, pbm2ppa supports the A4 paper size. You can use the "-s a4" option to pbm2ppa or you can add the line "papersize a4" to your pbm2ppa.conf file. When printing test pages with pbmtpg, make sure to also use the "-a4" option to pbmtpg. You may also need to add the flag -sPAPERSIZE=a4 to your ghostscript command. See the README file for explicit instructions.

Question: Which printers does pbm2ppa support?

Answer: Currently the following printers are supported: HP 720 series (710C, 720C, 722C), HP 820 series (820Cse, 820Cxi), HP 1000 series (1000Cse, 1000Cxi). 

Question: Are there plans to support other host-based printers?

Answer: No. Only PPA-based printers will be supported. I am relatively certain that the 710, 720, 820, and 1000 series are the only HP printers that use PPA.

Question: I want to buy a new printer. Should I consider the HP 710, 720, 820, or 1000?

Answer: No. If you want to use your printer under Linux, you are much better off getting a PCL or Postscript printer. (See the next question for where to find a list of supported printers.) The support for these printers is much better since the protocols are widely used and more compatible.

Question: Where can I find a list of other printers that Linux supports?

Answer: The Linux Hardware HOWTO has a list of printers that are supported by ghostscript and other software packages. The latest version of the Hardware HOWTO can be found at http://users.bart.nl/~patrickr/hardware-howto/Hardware-HOWTO.html. You may also find the Printing HOWTO Support Database useful. They keep a live list of supported printers with pointers on how to use them and how well they are supported.

Question: Will pbm2ppa be integrated with ghostscript instead of being a separate utility?

Answer: Eventually. Debugging and testing is easier when the converter is a separate program.

Question: I can't print past the first page. Or I get an error that says "custswath(): could not read next line". Or I have trouble printing anything. What gives?

Answer: This is often caused by mismatched paper sizes. If you are trying to print to A4 paper, make sure that you have both ghostscript and pbm2ppa configured for A4 paper. To configure pbm2ppa, either put "papersize a4" in your /etc/pbm2ppa.conf file or specify "-s a4" on the command-line. To configure ghostscript, you may need to add "-sPAPERSIZE=a4" to the ghostscript command-line.

Question: When I print using lpr, sometimes the last page does not eject. How can I fix this?

Answer: First, see the previous question to make sure that is not the cause of the problem. If not, then one solution is to add the following line to your /etc/printcap entry for the printer:


The /etc/filter.ppa file should be world executable (chmod a+x filter.ppa) and contain the following:


If anyone has an easier solution, feel free to email me. This works for me and a few others who have reported the problem.