1Pbmtoppa User Manual(0) Pbmtoppa User Manual(0)
2
3
4
6 pbmtoppa - convert PBM image to HP Printer Performance Architecture
7 (PPA)
8
9
11 pbmtoppa [pbm_file [ppa_file]]
12
13
15 This program is part of Netpbm(1).
16
17 pbmtoppa converts page images in PBM format to Hewlett Packard's PPA
18 (Printer Performance Architecture) format, which is the data stream
19 format expected by some HP "Windows-only" printers including the HP
20 Deskjet 820C series, the HP DeskJet 720 series, and the HP DeskJet 1000
21 series.
22
23 pbm_file is the file specification of the input file or - for Standard
24 Input. The default is Standard Input.
25
26 The input file contains one or more PBM images, with each one being a
27 single page. Each image must have the exact dimensions of a page (at
28 600 pixels per inch in both directions). Significantly, this is the
29 format that Ghostscript produces.
30
31 ppa_file is the file specification of the output file or - for Standard
32 Output. The default is Standard Output.
33
34 To print Postscript on an HP PPA printer, just use Ghostscript with the
35 pbmraw (or pbm) device driver.
36
37 You can generate a test page for use with this program with pbmpage.
38
39 You can also set up a printer filter so you can submit PBM input
40 directly to your print queue. See the documentation for your print
41 spooler for information on how to do that, or look in hp820install.doc
42 for an example lpd print filter for Postscript and text files.
43
44 Sometimes, pbmtoppa generates a file which the printer will not print
45 (because pbmtoppa's input is unprintable). When this happens, all
46 three lights blink to signal the error. This is usually because there
47 is material outside of the printer's printable area. To make the file
48 print, increase the margins via pbmtoppa options or a configuration
49 file. See the section on calibration ⟨#calibration⟩ below.
50
51
52 About PPA
53 The PPA printer language is a far lower level language than most. When
54 you use a PPA printer, most of the processing that a conventional
55 printer does is done instead on the computer end of the wire. In par‐
56 ticular, pbmtoppa has to do "swath cutting," and "sweep formatting,"
57 which other printers do themselves. There is very little intelligence
58 inside a PPA printer; pbmtoppa generates direct controls for the
59 printer's hardware.
60
61 The design goal of PPA was to reduce the cost of a printer by exploit‐
62 ing computing resources already present in the computer that requests
63 the printing. CPU power, ROM, and RAM requirements inside the printer
64 are all reduced compared to a conventional printer.
65
66 PPA was new in 1997. It was preceded by Hewlett Packard's PCL (Printer
67 Control Language) language. HP manufactured PPA printers for only a
68 few years, and no one else ever did.
69
70
72 In addition to the options common to all programs based on libnetpbm
73 (most notably -quiet, see
74 Common Options ⟨index.html#commonoptions⟩ ), pbmtoppa recognizes the
75 following command line options:
76
77
78
79 -v version
80 printer version (720, 820, or 1000)
81
82
83 -x xoff
84 horizontal offset adjustment in 1/600 inches.
85
86
87 -y yoff
88 vertical offset adjustment in 1/600 inches.
89
90
91 -t topmarg
92 top margin in 1/600 inches (default: 150 = 0.25 inch)
93
94
95 -l leftmarg
96 left margin in 1/600 inches (default: 150 = 0.25 inch)
97
98
99 -r rightmarg
100 right margin in 1/600 inches (default: 150 = 0.25 inch)
101
102
103 -b botmarg
104 bottom margin in 1/600 inches (default: 150 = 0.25 inch)
105
106
107 -s paper
108 paper size: us or a4. Default is us.
109
110
111 -d dpi Print resolution in dots per inch.
112
113
114 -f cfgfile
115 Read parameters from the configuration file named cfgfile. See
116 CONFIGURATION FILES ⟨#configfile⟩
117
118
119
120 The offset adjustments you specify with -x and -y accumulate. I.e. if
121 you specify them multiple times, the total offset adjustment is the sum
122 of the adjustments you specify. -x 60 -x 120 is the same as -x 180.
123
124 The -v option undoes any preceding -x and -y options, leaving the hori‐
125 zontal and vertical adjustments their default values.
126
127
128
130 You can use a configuration file to specify parameters rather than use
131 invocation options. pbmtoppa processes the file /etc/pbmtoppa.conf, if
132 it exists, before processing any options. It then processes each con‐
133 figuration file named by a -f option in order, applying the parameters
134 from the configuration file as if they were invocation options used in
135 the place of the -f option.
136
137 Configuration files have the following format:
138
139 #Comment
140 key1 value1
141 key2 value2
142 [etc.]
143
144 Valid keys are version, xoffset, yoffset, topmargin, leftmargin, right‐
145 margin, bottommargin, papersize, or any non-null prefix of these words.
146 Valid values are the same as with the corresponding invocation parame‐
147 ters.
148
149
151 Print a test pattern:
152 pbmpage | pbmppa >/dev/lp1
153
154 Print three pages:
155 cat page1.pbm page2.pbm page3.pbm | pbmppa >/dev/lp1
156
157 Print the Postscript file myfile.ps:
158 gs -sDEVICE=rawpbm -q -dNOPAUSE -r600 \
159 -sOutputFile=- myfile.ps ;\
160 | pbmtoppa | lpr
161
162
164 To be able to print successfully and properly, you need to tell pbm‐
165 toppa an X and a Y offset appropriate for your printer to use when gen‐
166 erating the page. You can specify these offsets with the -x and -y
167 invocation options or with the xoff and yoff parameters in a pbmtoppa
168 configuration file.
169
170 To determine the correct offsets, use the pbmpage program.
171
172 If while trying to do this calibration, the printer refuses to print a
173 page, but just blinks all three lights, specify large margins (e.g. 600
174 pixels -- one inch) via pbmpage invocation options while doing the cal‐
175 ibration.
176
177 For example:
178 pbmpage | pbmtoppa >/dev/lp1
179 or
180 pbmpage | pbmtoppa | lpr -l
181
182 (if your printer filter recognizes the '-l' (direct output) parameter).
183
184 In the test pattern, the grid is marked off in pixel coordinate num‐
185 bers. Unfortunately, these coordinates are probably cut off before the
186 edge of the paper. You'll have to use a ruler to estimate the pixel
187 coordinate of the left and top edges of the actual sheet of paper
188 (should be within +/- 300, may be negative; there are 600 pixels per
189 inch).
190
191 Add these coordinates to the X and Y offsets by either editing the con‐
192 figuration file or using the -x and -y command-line parameters.
193
194 When pbmtoppa is properly calibrated, the center mark should be in the
195 center of the paper. Also, the margins should be able to be as small
196 as 1/4 inch without causing the printer to choke with 'blinking lights
197 syndrome'.
198
199
201 RedHat users may find the following tip from Panayotis Vryonis <vry‐
202 pan@hol.gr> helpful. The same should work for the 820 and 1000, but it
203 hasn't been tested. Also, use the pbmraw GSDriver if you have it; it's
204 faster.
205
206 Here is a tip to integrate HP720C capability in RedHat's printtool:
207
208 Install pbmtoppa. Copy pbmtoppa to /usr/bin.
209
210 Edit "printerdb" (in my system it is found in /usr/lib/rhs/rhs-print‐
211 filters ) and append the following lines:
212
213
214 ----------------------Cut here-----------------------
215
216 StartEntry: DeskJet720C
217 GSDriver: pbm
218 Description: {HP DeskJet 720C}
219 About: { \
220 This driver drives the HP DeskJet 720C \
221 inkjet printer. \
222 It cannot do color printing. \
223 IMPORTANT! Insert \
224 "- | pbm2ppa -" \
225 in the "Extra GS Options " field.\
226 }
227
228 Resolution: {600} {600} {}
229
230 EndEntry
231 ----------------------------------------------------
232
233
234 Now you can add an HP720C printer just like any other, using printtool.
235
236
238 pbmpage(1), pstopnm(1), pbm(1)
239
240 This program was derived from pbm2ppa. pbm2ppa is obsolete and has
241 been replaced by pnm2ppa, which does the same things as pbmtoppa except
242 it also works with color and has lots more features. See
243 http://pnm2ppa.sourceforge.net ⟨http://pnm2ppa.sourceforge.net⟩ for
244 more information about the PPA protocol and the separately distributed
245 pnm2ppa program.
246
247 The file INSTALL-MORE in the pbmtoppa directory of the Netpbm source
248 code contains detailed instructions on setting up a system to use pbm‐
249 toppa to allow convenient printing on HP PPA printers. It was written
250 by Michael Buehlmann.
251
252
254 Tim Norman. Copyright (C) 1998. Licensed under GNU Public License
255
256 Manual page by Bryan Henderson, May 2000.
257
259 This manual page was generated by the Netpbm tool 'makeman' from HTML
260 source. The master documentation is at
261
262 http://netpbm.sourceforge.net/doc/pbmtoppa.html
263
264netpbm documentation 01 May 2005 Pbmtoppa User Manual(0)