| // Include standard font and media definitions | |
| #include <font.defs> | |
| #include <media.defs> | |
| // Specify this is a PostScript printer driver | |
| DriverType ps | |
| // List the fonts that are supported, in this case all standard fonts | |
| Font * | |
| // Manufacturer, model name, and version | |
| Manufacturer "Foo" | |
| ModelName "Foo LaserProofer 2000" | |
| Version 1.0 | |
| // PostScript printer attributes | |
| Attribute DefaultColorSpace "" Gray | |
| Attribute LandscapeOrientation "" Minus90 | |
| Attribute LanguageLevel "" "3" | |
| Attribute Product "" "(Foo LaserProofer 2000)" | |
| Attribute PSVersion "" "(3010) 0" | |
| Attribute TTRasterizer "" Type42 | |
| // Supported page sizes | |
| *MediaSize Letter | |
| MediaSize Legal | |
| MediaSize A4 | |
| // Query command for page size | |
| Attribute "?PageSize" "" " | |
| save | |
| currentpagedevice /PageSize get aload pop | |
| 2 copy gt {exch} if (Unknown) | |
| 23 dict | |
| dup [612 792] (Letter) put | |
| dup [612 1008] (Legal) put | |
| dup [595 842] (A4) put | |
| {exch aload pop 4 index sub abs 5 le exch | |
| 5 index sub abs 5 le and | |
| {exch pop exit} {pop} ifelse | |
| } bind forall = flush pop pop | |
| restore" | |
| // Specify the name of the PPD file we want to generate | |
| PCFileName "fooproof.ppd" | |