2 *% Adobe Systems PostScript(R) Printer Description File
\r
3 *% Copyright 1987-1994 Adobe Systems Incorporated.
\r
4 *% All Rights Reserved.
\r
5 *% Permission is granted for redistribution of this file as
\r
6 *% long as this copyright notice is intact and the contents
\r
7 *% of the file is not altered in any way from its original form.
\r
8 *% End of Copyright statement
\r
9 *FormatVersion: "4.1"
\r
11 *PCFileName: "HP_3P522.PPD"
\r
12 *LanguageVersion: English
\r
13 *Product: "(HP LaserJet IIIP)"
\r
14 *PSVersion: "(52.2) 0"
\r
15 *ModelName: "HP LaserJet IIIP PostScript Cartridge"
\r
16 *ShortNickName: "HP LaserJetIIIP Cartridge v52.2"
\r
17 *NickName: "HP LaserJet IIIP PostScript Cartridge v52.2"
\r
19 *% ==== Options and Constraints =====
\r
20 *OpenGroup: InstallableOptions/Options Installed
\r
22 *OpenUI *Option1/Optional Lower Tray: Boolean
\r
23 *DefaultOption1: False
\r
24 *Option1 True/Installed: ""
\r
25 *Option1 False/Not Installed: ""
\r
28 *CloseGroup: InstallableOptions
\r
30 *UIConstraints: *Option1 False *InputSlot Lower
\r
31 *UIConstraints: *ManualFeed False *PageSize B5
\r
32 *UIConstraints: *PageSize B5 *ManualFeed False
\r
33 *UIConstraints: *ManualFeed False *PageRegion B5
\r
34 *UIConstraints: *PageRegion B5 *ManualFeed False
\r
36 *% General Information and Defaults ===============
\r
40 *DefaultColorSpace: Gray
\r
41 *VariablePaperSize: False
\r
46 count 0 eq { % is the password on the stack?
\r
49 dup % potential password
\r
50 statusdict /checkpassword get exec not
\r
52 { % if no password or not valid
\r
53 (WARNING : Cannot perform the exitserver command.) =
\r
54 (Password supplied is not valid.) =
\r
55 (Please contact the author of this software.) = flush
\r
58 serverdict /exitserver get exec
\r
62 count 0 eq { % is the password on the stack?
\r
65 dup % potential password
\r
66 statusdict /checkpassword get exec not
\r
68 { % if no password or not valid
\r
69 (WARNING : Cannot reset printer.) =
\r
70 (Password supplied is not valid.) =
\r
71 (Please contact the author of this software.) = flush
\r
74 serverdict /exitserver get exec
\r
75 systemdict /quit get exec
\r
76 (WARNING : Printer Reset Failed.) = flush
\r
80 *DefaultResolution: 300dpi
\r
84 0 0 moveto currentpoint matrix defaultmatrix transform
\r
85 0 72 lineto currentpoint matrix defaultmatrix transform
\r
86 3 -1 roll sub dup mul
\r
87 3 1 roll exch sub dup mul
\r
89 ( ) cvs print (dpi) = flush
\r
94 *OpenUI *Smoothing/RET: PickOne
\r
95 *OrderDependency: 50 AnySetup *Smoothing
\r
96 *DefaultSmoothing: Medium
\r
97 *Smoothing None/Off: "0 statusdict /setdoret get exec"
\r
98 *Smoothing Light: "1 statusdict /setdoret get exec"
\r
99 *Smoothing Medium: "2 statusdict /setdoret get exec"
\r
100 *Smoothing Dark: "3 statusdict /setdoret get exec"
\r
103 [(None)(Light)(Medium)(Dark)(Unknown)] statusdict /doret get exec
\r
104 dup 3 gt{pop 4}if get = flush
\r
108 *CloseUI: *Smoothing
\r
110 *% Halftone Information ===============
\r
111 *ScreenFreq: "60.0"
\r
112 *ScreenAngle: "45.0"
\r
113 *DefaultScreenProc: Dot
\r
115 {abs exch abs 2 copy add 1 gt {1 sub dup mul exch 1 sub dup mul add 1
\r
116 sub }{dup mul exch dup mul add 1 exch sub }ifelse }
\r
119 *ScreenProc Line: "{ pop }"
\r
120 *ScreenProc Ellipse: "{ dup 5 mul 8 div mul exch dup mul exch add sqrt 1 exch sub }"
\r
122 *DefaultTransfer: Null
\r
123 *Transfer Null: "{ }"
\r
124 *Transfer Null.Inverse: "{ 1 exch sub }"
\r
126 *% Paper Handling ===================
\r
127 *% Use these entries to set paper size most of the time, unless there is
\r
128 *% specific reason to use PageRegion.
\r
129 *OpenUI *PageSize: PickOne
\r
130 *OrderDependency: 30 AnySetup *PageSize
\r
131 *DefaultPageSize: Letter
\r
132 *PageSize Letter: "statusdict /lettertray get exec"
\r
133 *PageSize Legal: "statusdict /legaltray get exec"
\r
134 *PageSize Executive: "statusdict /executivetray get exec"
\r
135 *PageSize A4: "statusdict /a4tray get exec"
\r
136 *PageSize B5: "statusdict /b5tray get exec"
\r
137 *PageSize Comm10/Comm #10 Envelope: "statusdict /com10envelopetray get exec"
\r
138 *PageSize Monarch/Monarch Envelope: "statusdict /monarcenvelopetray get exec"
\r
139 *PageSize DL/DL Envelope: "statusdict /dlenvelopetray get exec"
\r
140 *PageSize C5/C5 Envelope: "statusdict /c5envelopetray get exec"
\r
144 dup /lettertray (Letter) put
\r
145 dup /legaltray (Legal) put
\r
146 dup /executivetray (Executive) put
\r
147 dup /a4tray (A4) put
\r
148 dup /b5tray (B5) put
\r
149 dup /com10envelopetray (Comm10) put
\r
150 dup /monarcenvelopetray (Monarch) put
\r
151 dup /dlenvelopetray (DL) put
\r
152 dup /c5envelopetray (C5) put
\r
153 statusdict /papersize get exec
\r
154 3 1 roll {get} stopped {(Unknown)}if
\r
155 exch not { print (.Transverse) }if
\r
160 *CloseUI: *PageSize
\r
162 *% These entries will set up the frame buffer. Usually used with manual feed.
\r
163 *OpenUI *PageRegion: PickOne
\r
164 *OrderDependency: 40 AnySetup *PageRegion
\r
165 *DefaultPageRegion: Letter
\r
166 *PageRegion Letter: "letter"
\r
167 *PageRegion Legal: "legal"
\r
168 *PageRegion Executive: "executivepage"
\r
169 *PageRegion A4: "a4"
\r
170 *PageRegion B5: "b5"
\r
171 *PageRegion Comm10/Comm #10 Envelope: "com10envelope"
\r
172 *PageRegion Monarch/Monarch Envelope: "monarcenvelope"
\r
173 *PageRegion DL/DL Envelope: "dlenvelope"
\r
174 *PageRegion C5/C5 Envelope: "c5envelope"
\r
175 *CloseUI: *PageRegion
\r
177 *% The following entries provide information about specific paper keywords.
\r
178 *DefaultImageableArea: Letter
\r
179 *ImageableArea Letter: "18 19 593 774 "
\r
180 *ImageableArea Legal: "18 19 593 990 "
\r
181 *ImageableArea Executive: "18 19 501 738 "
\r
182 *ImageableArea A4: "18 19 578 824 "
\r
183 *ImageableArea B5: "18 19 505 713 "
\r
184 *ImageableArea Comm10/Comm #10 Envelope: "18 19 278 666 "
\r
185 *ImageableArea Monarch/Monarch Envelope: "18 19 259 522 "
\r
186 *ImageableArea DL/DL Envelope: "18 19 294 605 "
\r
187 *ImageableArea C5/C5 Envelope: "18 19 440 630 "
\r
190 /cvp {( ) cvs print ( ) print } bind def
\r
191 /upperright {10000 mul floor 10000 div} bind def
\r
192 /lowerleft {10000 mul ceiling 10000 div} bind def
\r
193 newpath clippath pathbbox
\r
194 4 -2 roll exch 2 {lowerleft cvp} repeat
\r
195 exch 2 {upperright cvp} repeat flush
\r
200 *% These provide the physical dimensions of the paper (by keyword)
\r
201 *DefaultPaperDimension: Letter
\r
202 *PaperDimension Letter: "612 792"
\r
203 *PaperDimension Legal: "612 1008"
\r
204 *PaperDimension Executive: "522 756"
\r
205 *PaperDimension A4: "595 842"
\r
206 *PaperDimension B5: "516 729"
\r
207 *PaperDimension Comm10/Comm #10 Envelope: "297 684"
\r
208 *PaperDimension Monarch/Monarch Envelope: "279 540"
\r
209 *PaperDimension DL/DL Envelope: "312 624"
\r
210 *PaperDimension C5/C5 Envelope: "459 649"
\r
212 *LandscapeOrientation: Plus90
\r
213 *OpenUI *InputSlot: PickOne
\r
214 *OrderDependency: 20 AnySetup *InputSlot
\r
215 *DefaultInputSlot: Unknown
\r
216 *InputSlot Upper/Upper Tray: "0 statusdict /setpapertray get exec"
\r
217 *InputSlot Lower/Lower Tray: "1 statusdict /setpapertray get exec"
\r
220 [ (Upper) (Lower) ] statusdict /papertray get exec
\r
221 {get exec} stopped { pop pop (Unknown)} if = flush
\r
225 *CloseUI: *InputSlot
\r
227 *OpenUI *ManualFeed: Boolean
\r
228 *OrderDependency: 20 AnySetup *ManualFeed
\r
229 *DefaultManualFeed: False
\r
230 *ManualFeed True: "statusdict /manualfeed true put"
\r
231 *ManualFeed False: "statusdict /manualfeed false put"
\r
234 statusdict /manualfeed get {(True)}{(False)}ifelse = flush
\r
238 *CloseUI: *ManualFeed
\r
240 *DefaultOutputOrder: Normal
\r
242 *% Font Information =====================
\r
243 *DefaultFont: Courier
\r
244 *Font AvantGarde-Book: Standard "(001.002)" Standard ROM
\r
245 *Font AvantGarde-BookOblique: Standard "(001.002)" Standard ROM
\r
246 *Font AvantGarde-Demi: Standard "(001.003)" Standard ROM
\r
247 *Font AvantGarde-DemiOblique: Standard "(001.003)" Standard ROM
\r
248 *Font Bookman-Demi: Standard "(001.001)" Standard ROM
\r
249 *Font Bookman-DemiItalic: Standard "(001.001)" Standard ROM
\r
250 *Font Bookman-Light: Standard "(001.001)" Standard ROM
\r
251 *Font Bookman-LightItalic: Standard "(001.001)" Standard ROM
\r
252 *Font Courier: Standard "(002.002)" Standard ROM
\r
253 *Font Courier-Bold: Standard "(002.002)" Standard ROM
\r
254 *Font Courier-BoldOblique: Standard "(002.002)" Standard ROM
\r
255 *Font Courier-Oblique: Standard "(002.002)" Standard ROM
\r
256 *Font Helvetica: Standard "(001.002)" Standard ROM
\r
257 *Font Helvetica-Bold: Standard "(001.002)" Standard ROM
\r
258 *Font Helvetica-BoldOblique: Standard "(001.002)" Standard ROM
\r
259 *Font Helvetica-Narrow: Standard "(001.002)" Standard ROM
\r
260 *Font Helvetica-Narrow-Bold: Standard "(001.002)" Standard ROM
\r
261 *Font Helvetica-Narrow-BoldOblique: Standard "(001.002)" Standard ROM
\r
262 *Font Helvetica-Narrow-Oblique: Standard "(001.002)" Standard ROM
\r
263 *Font Helvetica-Oblique: Standard "(001.002)" Standard ROM
\r
264 *Font NewCenturySchlbk-Bold: Standard "(001.006)" Standard ROM
\r
265 *Font NewCenturySchlbk-BoldItalic: Standard "(001.004)" Standard ROM
\r
266 *Font NewCenturySchlbk-Italic: Standard "(001.003)" Standard ROM
\r
267 *Font NewCenturySchlbk-Roman: Standard "(001.004)" Standard ROM
\r
268 *Font Palatino-Bold: Standard "(001.002)" Standard ROM
\r
269 *Font Palatino-BoldItalic: Standard "(001.002)" Standard ROM
\r
270 *Font Palatino-Italic: Standard "(001.002)" Standard ROM
\r
271 *Font Palatino-Roman: Standard "(001.001)" Standard ROM
\r
272 *Font Symbol: Special "(001.003)" Special ROM
\r
273 *Font Times-Bold: Standard "(001.002)" Standard ROM
\r
274 *Font Times-BoldItalic: Standard "(001.004)" Standard ROM
\r
275 *Font Times-Italic: Standard "(001.002)" Standard ROM
\r
276 *Font Times-Roman: Standard "(001.002)" Standard ROM
\r
277 *Font ZapfChancery-MediumItalic: Standard "(001.003)" Standard ROM
\r
278 *Font ZapfDingbats: Special "(001.002)" Special ROM
\r
281 /str 100 string dup 0 (fonts/) putinterval def
\r
285 exch dup str 6 94 getinterval cvs
\r
286 (/) print print (:) print
\r
287 FontDirectory exch known
\r
288 {(Yes)}{(No)} ifelse =
\r
299 FontDirectory { pop == } bind forall flush
\r
305 *% Printer Messages (verbatim from printer):
\r
306 *Message: "%%[ exitserver: permanent state may be changed ]%%"
\r
307 *Message: "%%[ Flushing: rest of job (to end-of-file) will be ignored ]%%"
\r
308 *Message: "\FontName\ not found, using Courier"
\r
310 *% Status (format: %%[ status: <one of these> ]%% )
\r
314 *Status: "printing"
\r
315 *Status: "PrinterError: Out Of Paper"
\r
316 *Status: "PrinterError: Cover Open"
\r
317 *Status: "PrinterError: Feed Manual"
\r
318 *Status: "PrinterError: Paper Jam"
\r
319 *Status: "PrinterError: Miscellaneous Error"
\r
320 *Status: "PrinterError: Fatal Error"
\r
322 *% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%% )
\r
324 *Source: "serial25"
\r
325 *Source: "AppleTalk"
\r
326 *Source: "Centronics"
\r
328 *% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
\r
329 *PrinterError: "Out Of Paper"
\r
330 *PrinterError: "Cover Open"
\r
331 *PrinterError: "Feed Manual"
\r
332 *PrinterError: "Paper Jam"
\r
333 *PrinterError: "Miscellaneous Error"
\r
334 *PrinterError: "Fatal Error"
\r
336 *%DeviceAdjustMatrix: "[1 0 0 1 0 0]"
\r
338 *% Color Separation Information =====================
\r
340 *DefaultColorSep: ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi
\r
342 *InkName: ProcessBlack/Process Black
\r
343 *InkName: CustomColor/Custom Color
\r
344 *InkName: ProcessCyan/Process Cyan
\r
345 *InkName: ProcessMagenta/Process Magenta
\r
346 *InkName: ProcessYellow/Process Yellow
\r
348 *% For 60 lpi / 300 dpi ===============================
\r
350 *ColorSepScreenAngle ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "45"
\r
351 *ColorSepScreenAngle CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "45"
\r
352 *ColorSepScreenAngle ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "15"
\r
353 *ColorSepScreenAngle ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "75"
\r
354 *ColorSepScreenAngle ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "0"
\r
356 *ColorSepScreenFreq ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "60"
\r
357 *ColorSepScreenFreq CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "60"
\r
358 *ColorSepScreenFreq ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "60"
\r
359 *ColorSepScreenFreq ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "60"
\r
360 *ColorSepScreenFreq ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "60"
\r
362 *% For 53 lpi / 300 dpi ===============================
\r
364 *ColorSepScreenAngle ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "45.0"
\r
365 *ColorSepScreenAngle CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "45.0"
\r
366 *ColorSepScreenAngle ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "71.5651"
\r
367 *ColorSepScreenAngle ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "18.4349"
\r
368 *ColorSepScreenAngle ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "0.0"
\r
370 *ColorSepScreenFreq ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "53.033"
\r
371 *ColorSepScreenFreq CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "53.033"
\r
372 *ColorSepScreenFreq ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"
\r
373 *ColorSepScreenFreq ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"
\r
374 *ColorSepScreenFreq ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "50.0"
\r
376 *% For "HP LaserJet IIIP" version 52.2
\r
377 *% Produced by "BuildPPD.ps" version 3.0 edit 58
\r
378 *% Converted to meet 4.0 specification
\r
379 *% Last Edit Date: Jun 16 1994
\r
380 *% The byte count of this file should be exactly 012998 or 013380
\r
381 *% depending on the filesystem it resides in.
\r
382 *% end of PPD file for HP LaserJet IIIP
\r