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 di‐
40 rectly 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
145 Valid keys are version, xoffset, yoffset, topmargin, leftmargin, right‐
146 margin, bottommargin, papersize, or any non-null prefix of these words.
147 Valid values are the same as with the corresponding invocation parame‐
148 ters.
149
150
152 Print a test pattern:
153 pbmpage | pbmppa >/dev/lp1
154
155
156 Print three pages:
157 cat page1.pbm page2.pbm page3.pbm | pbmppa >/dev/lp1
158
159
160 Print the Postscript file myfile.ps:
161 gs -sDEVICE=rawpbm -q -dNOPAUSE -r600 \
162 -sOutputFile=- myfile.ps ;\
163 | pbmtoppa | lpr
164
165
166
168 To be able to print successfully and properly, you need to tell pbm‐
169 toppa an X and a Y offset appropriate for your printer to use when gen‐
170 erating the page. You can specify these offsets with the -x and -y in‐
171 vocation options or with the xoff and yoff parameters in a pbmtoppa
172 configuration file.
173
174 To determine the correct offsets, use the pbmpage program.
175
176 If while trying to do this calibration, the printer refuses to print a
177 page, but just blinks all three lights, specify large margins (e.g. 600
178 pixels -- one inch) via pbmpage invocation options while doing the cal‐
179 ibration.
180
181 For example:
182 pbmpage | pbmtoppa >/dev/lp1
183
184 or
185 pbmpage | pbmtoppa | lpr -l
186
187
188 (if your printer filter recognizes the '-l' (direct output) parameter).
189
190 In the test pattern, the grid is marked off in pixel coordinate num‐
191 bers. Unfortunately, these coordinates are probably cut off before the
192 edge of the paper. You'll have to use a ruler to estimate the pixel
193 coordinate of the left and top edges of the actual sheet of paper
194 (should be within +/- 300, may be negative; there are 600 pixels per
195 inch).
196
197 Add these coordinates to the X and Y offsets by either editing the con‐
198 figuration file or using the -x and -y command-line parameters.
199
200 When pbmtoppa is properly calibrated, the center mark should be in the
201 center of the paper. Also, the margins should be able to be as small
202 as 1/4 inch without causing the printer to choke with 'blinking lights
203 syndrome'.
204
205
207 RedHat users may find the following tip from Panayotis Vryonis <vry‐
208 pan@hol.gr> helpful. The same should work for the 820 and 1000, but it
209 hasn't been tested. Also, use the pbmraw GSDriver if you have it; it's
210 faster.
211
212 Here is a tip to integrate HP720C capability in RedHat's printtool:
213
214 Install pbmtoppa. Copy pbmtoppa to /usr/bin.
215
216 Edit "printerdb" (in my system it is found in /usr/lib/rhs/rhs-print‐
217 filters ) and append the following lines:
218
219
220 ----------------------Cut here-----------------------
221
222 StartEntry: DeskJet720C
223 GSDriver: pbm
224 Description: {HP DeskJet 720C}
225 About: { \
226 This driver drives the HP DeskJet 720C \
227 inkjet printer. \
228 It cannot do color printing. \
229 IMPORTANT! Insert \
230 "- | pbm2ppa -" \
231 in the "Extra GS Options " field.\
232 }
233
234 Resolution: {600} {600} {}
235
236 EndEntry
237 ----------------------------------------------------
238
239
240
241 Now you can add an HP720C printer just like any other, using printtool.
242
243
245 pbmpage(1), pstopnm(1), pbm(1)
246
247 This program was derived from pbm2ppa. pbm2ppa is obsolete and has
248 been replaced by pnm2ppa, which does the same things as pbmtoppa except
249 it also works with color and has lots more features. See
250 http://pnm2ppa.sourceforge.net ⟨http://pnm2ppa.sourceforge.net⟩ for
251 more information about the PPA protocol and the separately distributed
252 pnm2ppa program.
253
254 The file INSTALL-MORE in the pbmtoppa directory of the Netpbm source
255 code contains detailed instructions on setting up a system to use pbm‐
256 toppa to allow convenient printing on HP PPA printers. It was written
257 by Michael Buehlmann.
258
259
261 Tim Norman. Copyright (C) 1998. Licensed under GNU Public License
262
263 Manual page by Bryan Henderson, May 2000.
264
266 This manual page was generated by the Netpbm tool 'makeman' from HTML
267 source. The master documentation is at
268
269 http://netpbm.sourceforge.net/doc/pbmtoppa.html
270
271netpbm documentation 01 May 2005 Pbmtoppa User Manual(0)