You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
350 lines
12 KiB
350 lines
12 KiB
*PPD-Adobe: "4.0"
|
|
*% Adobe Systems PostScript(R) Printer Description File
|
|
*% Copyright 1987-1993 Adobe Systems Incorporated.
|
|
*% All Rights Reserved.
|
|
*% Permission is granted for redistribution of this file as
|
|
*% long as this copyright notice is intact and the contents
|
|
*% of the file is not altered in any way from its original form.
|
|
*% End of Copyright statement
|
|
*FormatVersion: "4.0"
|
|
*FileVersion: "3.3"
|
|
*PCFileName: "APPLE230.PPD"
|
|
*LanguageVersion: English
|
|
*Product: "(LaserWriter)"
|
|
*PSVersion: "(23.0) 0"
|
|
*ModelName: "Apple LaserWriter"
|
|
*NickName: "Apple LaserWriter v23.0"
|
|
|
|
*% General Information and Defaults ===============
|
|
*ColorDevice: False
|
|
*DefaultColorSpace: Gray
|
|
*FreeVM: "173936"
|
|
*LanguageLevel: "1"
|
|
*VariablePaperSize: False
|
|
*FileSystem: False
|
|
*Throughput: "8"
|
|
*Password: "0"
|
|
*ExitServer: "
|
|
count 0 eq { % is the password on the stack?
|
|
true
|
|
}{
|
|
dup % potential password
|
|
statusdict /checkpassword get exec not
|
|
} ifelse
|
|
{ % if no password or not valid
|
|
(WARNING : Cannot perform the exitserver command.) =
|
|
(Password supplied is not valid.) =
|
|
(Please contact the author of this software.) = flush
|
|
quit
|
|
} if
|
|
serverdict /exitserver get exec
|
|
"
|
|
*End
|
|
|
|
*Reset: "
|
|
count 0 eq { % is the password on the stack?
|
|
true
|
|
}{
|
|
dup % potential password
|
|
statusdict /checkpassword get exec not
|
|
} ifelse
|
|
{ % if no password or not valid
|
|
(WARNING : Cannot reset printer.) =
|
|
(Password supplied is not valid.) =
|
|
(Please contact the author of this software.) = flush
|
|
quit
|
|
} if
|
|
serverdict /exitserver get exec
|
|
systemdict /quit get exec
|
|
(WARNING : Printer Reset Failed.) = flush
|
|
"
|
|
*End
|
|
|
|
*DefaultResolution: 300dpi
|
|
*?Resolution: "
|
|
save
|
|
initgraphics
|
|
0 0 moveto currentpoint matrix defaultmatrix transform
|
|
0 72 lineto currentpoint matrix defaultmatrix transform
|
|
3 -1 roll sub dup mul
|
|
3 1 roll exch sub dup mul
|
|
add sqrt round cvi
|
|
( ) cvs print (dpi) = flush
|
|
restore
|
|
"
|
|
*End
|
|
|
|
*% Halftone Information ===============
|
|
*ScreenFreq: "60.0"
|
|
*ScreenAngle: "45.0"
|
|
*DefaultScreenProc: Dot
|
|
*ScreenProc Dot: "
|
|
{dup mul exch dup mul add 1.0 exch sub }
|
|
"
|
|
*End
|
|
*ScreenProc Line: "{ pop }"
|
|
*ScreenProc Ellipse: "{ dup 5 mul 8 div mul exch dup mul exch add sqrt 1 exch sub }"
|
|
|
|
*DefaultTransfer: Null
|
|
*Transfer Null: "{ }"
|
|
*Transfer Null.Inverse: "{ 1 exch sub }"
|
|
|
|
*% Paper Handling ===================
|
|
*% Use these entries to set paper size most of the time, unless there is
|
|
*% specific reason to use PageRegion.
|
|
*OpenUI *PageSize: PickOne
|
|
*OrderDependency: 30 AnySetup *PageSize
|
|
*DefaultPageSize: Letter
|
|
*PageSize Letter/US Letter: "letter"
|
|
*PageSize Legal/US Legal: "legal"
|
|
*PageSize LetterSmall/US Letter Small: "lettersmall"
|
|
*PageSize LegalSmall/US Legal Small: "legal"
|
|
*PageSize A4: "a4"
|
|
*PageSize Monarch/Monarch Envelope Edge Fed: "letter"
|
|
*PageSize Com10/Com10 Envelope Edge Fed: "letter"
|
|
*?PageSize: "
|
|
save
|
|
[(Letter)(Legal)] statusdict /pagetype get exec
|
|
{get} stopped { pop pop (Unknown)} if = flush
|
|
restore
|
|
"
|
|
*End
|
|
*CloseUI: *PageSize
|
|
|
|
*% These entries will set up the frame buffer. Usually used with manual feed.
|
|
*OpenUI *PageRegion: PickOne
|
|
*OrderDependency: 40 AnySetup *PageRegion
|
|
*DefaultPageRegion: Letter
|
|
*PageRegion Letter/US Letter: "letter"
|
|
*PageRegion Legal/US Legal: "legal"
|
|
*PageRegion LetterSmall/US Letter Small: "lettersmall"
|
|
*PageRegion LegalSmall/US Legal Small: "legal"
|
|
*PageRegion A4: "a4"
|
|
*PageRegion Monarch/Monarch Envelope Edge Fed: "letter"
|
|
*PageRegion Com10/Com10 Envelope Edge Fed: "letter"
|
|
*CloseUI: *PageRegion
|
|
|
|
*% The following entries provide information about specific paper keywords.
|
|
*DefaultImageableArea: Letter
|
|
*ImageableArea Letter/US Letter: "18 8 593 784 "
|
|
*ImageableArea Legal/US Legal: "65 37 547 972 "
|
|
*ImageableArea LetterSmall/US Letter Small: "31 31 583 761 "
|
|
*ImageableArea LegalSmall/US Legal Small: "64 54 548 954 "
|
|
*ImageableArea A4:"17 22 578 820 "
|
|
*ImageableArea Monarch/Monarch Envelope Edge Fed: "19 269 274 773 "
|
|
*ImageableArea Com10/Com10 Envelope Edge Fed: "19 125 292 773 "
|
|
*?ImageableArea: "
|
|
save
|
|
/cvp {( ) cvs print ( ) print } bind def
|
|
/upperright {10000 mul floor 10000 div} bind def
|
|
/lowerleft {10000 mul ceiling 10000 div} bind def
|
|
newpath clippath pathbbox
|
|
4 -2 roll exch 2 {lowerleft cvp} repeat
|
|
exch 2 {upperright cvp} repeat flush
|
|
restore
|
|
"
|
|
*End
|
|
|
|
*% These provide the physical dimensions of the paper (by keyword)
|
|
*DefaultPaperDimension: Letter
|
|
*PaperDimension Letter/US Letter: "612 792"
|
|
*PaperDimension Legal/US Legal: "612 1008"
|
|
*PaperDimension LetterSmall/US Letter Small: "612 792"
|
|
*PaperDimension LegalSmall/US Legal Small: "612 1008"
|
|
*PaperDimension A4: "595 842"
|
|
*PaperDimension Monarch/Monarch Envelope Edge Fed: "611 792"
|
|
*PaperDimension Com10/Com10 Envelope Edge Fed: "610 792"
|
|
|
|
*RequiresPageRegion All: True
|
|
*OpenUI *InputSlot: PickOne
|
|
*OrderDependency: 20 AnySetup *InputSlot
|
|
*DefaultInputSlot: Cassette
|
|
*InputSlot Cassette: ""
|
|
*CloseUI: *InputSlot
|
|
|
|
*OpenUI *ManualFeed/Manual Feed: Boolean
|
|
*OrderDependency: 20 AnySetup *ManualFeed
|
|
*DefaultManualFeed: False
|
|
*ManualFeed True: "statusdict /manualfeed true put"
|
|
*ManualFeed False: "statusdict /manualfeed false put"
|
|
*?ManualFeed: "
|
|
save
|
|
statusdict /manualfeed get {(True)}{(False)}ifelse = flush
|
|
restore
|
|
"
|
|
*End
|
|
*CloseUI: *ManualFeed
|
|
|
|
*DefaultOutputOrder: Reverse
|
|
|
|
*% Font Information =====================
|
|
*DefaultFont: Courier
|
|
*Font Courier-Bold: Standard "(001.000)" Standard ROM
|
|
*Font Courier-BoldOblique: Standard "(001.000)" Standard ROM
|
|
*Font Courier-Oblique: Standard "(001.000)" Standard ROM
|
|
*Font Helvetica: Standard "(001.001)" Standard ROM
|
|
*Font Helvetica-Bold: Standard "(001.001)" Standard ROM
|
|
*Font Helvetica-BoldOblique: Standard "(001.000)" Standard ROM
|
|
*Font Helvetica-Oblique: Standard "(001.000)" Standard ROM
|
|
*Font Symbol: Special "(001.001)" Special ROM
|
|
*Font Times-Bold: Standard "(001.001)" Standard ROM
|
|
*Font Times-BoldItalic: Standard "(001.001)" Standard ROM
|
|
*Font Times-Italic: Standard "(001.001)" Standard ROM
|
|
*Font Times-Roman: Standard "(001.000)" Standard ROM
|
|
*?FontQuery: "
|
|
save
|
|
/str 100 string dup 0 (fonts/) putinterval def
|
|
{
|
|
count 1 gt
|
|
{
|
|
exch dup str 6 94 getinterval cvs
|
|
(/) print print (:) print
|
|
FontDirectory exch known
|
|
{(Yes)}{(No)} ifelse =
|
|
}
|
|
{exit} ifelse
|
|
}bind loop
|
|
(*) = flush
|
|
restore
|
|
"
|
|
*End
|
|
|
|
*?FontList: "
|
|
save
|
|
FontDirectory { pop == } bind flush forall (*) = flush
|
|
restore
|
|
"
|
|
*End
|
|
|
|
*% Printer Messages (verbatim from printer):
|
|
*Message: "%%[ exitserver: permanent state may be changed ]%%"
|
|
*Message: "%%[ Flushing: rest of job (to end-of-file) will be ignored ]%%"
|
|
*Message: "\FontName\ not found, using Courier"
|
|
|
|
*% Status (format: %%[ status: <one of these> ]%% )
|
|
*Status: "idle"
|
|
*Status: "busy"
|
|
*Status: "waiting"
|
|
*Status: "printing"
|
|
*Status: "PrinterError: timeout, clearing printer"
|
|
*Status: "PrinterError: timeout"
|
|
*Status: "PrinterError: paper entry misfeed"
|
|
*Status: "PrinterError: no toner cartridge"
|
|
*Status: "PrinterError: service call"
|
|
*Status: "PrinterError: paper entry misfeed"
|
|
*Status: "PrinterError: no paper tray"
|
|
*Status: "PrinterError: out of paper"
|
|
*Status: "PrinterError: cover open"
|
|
*Status: "PrinterError: resetting printer"
|
|
*Status: "PrinterError: manual feed timeout"
|
|
*Status: "PrinterError: warming up"
|
|
|
|
*% Input Sources (format: %%[ status: <stat>; source: <one of these> ]%% )
|
|
*Source: "serial9"
|
|
*Source: "serial25"
|
|
*Source: "AppleTalk"
|
|
|
|
*% Printer Error (format: %%[ PrinterError: <one of these> ]%%)
|
|
*PrinterError: "timeout, clearing printer"
|
|
*PrinterError: "timeout"
|
|
*PrinterError: "paper entry misfeed"
|
|
*PrinterError: "no toner cartridge"
|
|
*PrinterError: "service call"
|
|
*PrinterError: "paper entry misfeed"
|
|
*PrinterError: "no paper tray"
|
|
*PrinterError: "out of paper"
|
|
*PrinterError: "cover open"
|
|
*PrinterError: "resetting printer"
|
|
*PrinterError: "manual feed timeout"
|
|
*PrinterError: "warming up"
|
|
|
|
*%DeviceAdjustMatrix: "[1 0 0 1 0 0]"
|
|
|
|
*% Color Separation Information =====================
|
|
|
|
*DefaultColorSep: ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi
|
|
|
|
*InkName: ProcessBlack/Process Black
|
|
*InkName: CustomColor/Custom Color
|
|
*InkName: ProcessCyan/Process Cyan
|
|
*InkName: ProcessMagenta/Process Magenta
|
|
*InkName: ProcessYellow/Process Yellow
|
|
|
|
*% For 60 lpi / 300 dpi =====================================================
|
|
|
|
*ColorSepScreenAngle ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "45"
|
|
*ColorSepScreenAngle CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "45"
|
|
*ColorSepScreenAngle ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "15"
|
|
*ColorSepScreenAngle ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "75"
|
|
*ColorSepScreenAngle ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "0"
|
|
|
|
*ColorSepScreenFreq ProcessBlack.60lpi.300dpi/60 lpi / 300 dpi: "60"
|
|
*ColorSepScreenFreq CustomColor.60lpi.300dpi/60 lpi / 300 dpi: "60"
|
|
*ColorSepScreenFreq ProcessCyan.60lpi.300dpi/60 lpi / 300 dpi: "60"
|
|
*ColorSepScreenFreq ProcessMagenta.60lpi.300dpi/60 lpi / 300 dpi: "60"
|
|
*ColorSepScreenFreq ProcessYellow.60lpi.300dpi/60 lpi / 300 dpi: "60"
|
|
|
|
*% For 53 lpi / 300 dpi =====================================================
|
|
|
|
*ColorSepScreenAngle ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "45.0"
|
|
*ColorSepScreenAngle CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "45.0"
|
|
*ColorSepScreenAngle ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "71.5651"
|
|
*ColorSepScreenAngle ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "18.4349"
|
|
*ColorSepScreenAngle ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "0.0"
|
|
|
|
*ColorSepScreenFreq ProcessBlack.53lpi.300dpi/53 lpi / 300 dpi: "53.033"
|
|
*ColorSepScreenFreq CustomColor.53lpi.300dpi/53 lpi / 300 dpi: "53.033"
|
|
*ColorSepScreenFreq ProcessCyan.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"
|
|
*ColorSepScreenFreq ProcessMagenta.53lpi.300dpi/53 lpi / 300 dpi: "47.4342"
|
|
*ColorSepScreenFreq ProcessYellow.53lpi.300dpi/53 lpi / 300 dpi: "50.0"
|
|
|
|
*% This patch file inserts a delay before manualfeed to fix a bug
|
|
*% in the version 23 LaserWriter.
|
|
*JobPatchFile 1/ManualFeedDelay: "
|
|
save
|
|
/version23-manualfeedpatch where { pop false } { true }ifelse
|
|
% we don't do an explicit 'get' since product and version MAY
|
|
% be in systemdict or statusdict - this technique gets the lookup
|
|
% without failure
|
|
statusdict begin
|
|
product (LaserWriter) eq % true if LaserWriter
|
|
version cvr 23.0 eq % true if version 23
|
|
end
|
|
|
|
and % only install this patch if both are true
|
|
and % true only if patch is not installed and is for this printer
|
|
% save object and boolean on stack
|
|
dup { exch restore }if
|
|
% either true OR saveobject false
|
|
dup
|
|
{
|
|
/version23-manualfeedpatch true def
|
|
/oldversion23-showpage /showpage load def
|
|
/showpage % this showpage will wait extra time if manualfeed is true
|
|
{%
|
|
statusdict /manualfeed known
|
|
{% manualfeed known in statusdict
|
|
statusdict /manualfeed get
|
|
{% if true then we loop for 5 seconds
|
|
usertime 5000 add % target usertime
|
|
{ % loop
|
|
dup usertime sub 0 lt
|
|
{ exit }if
|
|
}loop
|
|
pop % pop the usertime off the stac
|
|
}if
|
|
}if
|
|
oldversion23-showpage
|
|
}bind def
|
|
}if
|
|
not{ restore }if
|
|
"
|
|
*End
|
|
|
|
*% For "LaserWriter" version 23.0
|
|
*% Produced by "GETapd.ps" version 2.0 edit 45
|
|
*% Converted to meet 4.0 specification
|
|
*% Last Edit Date: Aug 11 1993
|
|
*% The byte count of this file should be exactly 011416 or 011766
|
|
*% depending on the filesystem it resides in.
|
|
*% end of PPD file for LaserWriter
|