| <HTML> |
| <!-- SECTION: References --> |
| <HEAD> |
| <TITLE>PPD Compiler Driver Information File Reference</TITLE> |
| <LINK REL="STYLESHEET" TYPE="text/css" HREF="../cups-printable.css"> |
| </HEAD> |
| <BODY> |
| |
| <H1 CLASS="title">PPD Compiler Driver Information File Reference</H1> |
| |
| <p>The CUPS PPD compiler reads meta files that contain descriptions |
| of one or more PPD files to be generated by |
| <a href="man-ppdc.html">ppdc(1)</a> or the corresponding driver interface |
| program <a href="man-drv.html">drv(1)</a>. The source file format is plain |
| ASCII text that can be edited using your favorite text editor.</p> |
| |
| <p>Directives may be placed anywhere on a line and are followed by |
| zero or more values.</p> |
| |
| <p>Comments are supported using the C (/* ... */) and C++ (// ...) comment |
| mechanisms.</p> |
| |
| <p>Directives that accept expressions look for sequences of the form:</p> |
| |
| <dl> |
| |
| <dt>NAME</dt> |
| <dd>Evaluates to 1 if NAME is defined, otherwise 0.</dd> |
| |
| <dt>number</dt> |
| |
| <dd>Evaluates to the specified integer; the number can be preceded by |
| a leading sign (+/-) followed by a decimal number (1234), octal number |
| (01234), or hexadecimal number (0x1234) using the same rules as C and |
| C++.</dd> |
| |
| <dt>(NAME NAME ... number number ...)</dt> |
| <dd>Evaluates to the bitwise OR of each named #define constant or |
| number.</dd> |
| |
| <dt>(NAME == OTHERNAME)</dt> |
| <dt>(NAME == number)</dt> |
| <dd>Evaluates to 1 if NAME is equal to the other named constant or |
| number, otherwise 0.</dd> |
| |
| <dt>(NAME != OTHERNAME)</dt> |
| <dt>(NAME != number)</dt> |
| <dd>Evaluates to 1 if NAME is not equal to the other named constant or |
| number, otherwise 0.</dd> |
| |
| <dt>(NAME < OTHERNAME)</dt> |
| <dt>(NAME < number)</dt> |
| <dd>Evaluates to 1 if NAME is less than to the other named constant or |
| number, otherwise 0.</dd> |
| |
| <dt>(NAME <= OTHERNAME)</dt> |
| <dt>(NAME <= number)</dt> |
| <dd>Evaluates to 1 if NAME is less than or equal to the other named |
| constant or number, otherwise 0.</dd> |
| |
| <dt>(NAME > OTHERNAME)</dt> |
| <dt>(NAME > number)</dt> |
| <dd>Evaluates to 1 if NAME is greater than to the other named constant |
| or number, otherwise 0.</dd> |
| |
| <dt>(NAME >= OTHERNAME)</dt> |
| <dt>(NAME >= number)</dt> |
| <dd>Evaluates to 1 if NAME is greater than or equal to the other named |
| constant or number, otherwise 0.</dd> |
| |
| </dl> |
| |
| <p>Printer driver information can be grouped and shared using |
| curly braces ({ ... }); PPD files are written when a close |
| brace or end-of-file is seen and a <a href="#PCFileName">PCFileName</a> |
| directive has been defined.</p> |
| |
| |
| <h2 class="title"><a name='_define'>#define</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| #define <i>name expression</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| #define FOO 100 |
| #define BAR "Bar, Inc." |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>#define</code> directive assigns a value to a name |
| which can be later referenced using <code>$name</code>. The name is |
| case-insensitive and can be any sequence of letters, numbers, |
| and the underscore. The value can be any valid expression.</p> |
| |
| <h3>Predefined Names</h3> |
| |
| <p>The following <code>#define</code> names are set by the PPD compiler:</p> |
| |
| <ul> |
| |
| <li><code>CUPS_VERSION</code> - The full CUPS version string, e.g. |
| "1.4.0"</li> |
| |
| <li><code>CUPS_VERSION_MAJOR</code> - The major version number, e.g. |
| "1"</li> |
| |
| <li><code>CUPS_VERSION_MINOR</code> - The minor version number, e.g. |
| "4"</li> |
| |
| <li><code>CUPS_VERSION_PATCH</code> - The patch version number, e.g. |
| "0"</li> |
| |
| <li><code>PLATFORM_NAME</code> - The operating system name used by the |
| current system as reported by "uname" ("Windows" on Microsoft |
| Windows)</li> |
| |
| <li><code>PLATFORM_ARCH</code> - The processor architecture used by the |
| current system as reported by "uname -m" ("X86" or "X64" on Microsoft |
| Windows)</li> |
| |
| </ul> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_include'><code>#include</code></a></p> |
| |
| |
| <h2 class="title"><a name='_elif'>#elif</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| #elif <i>expression</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| #if HAVE_FOO |
| ... |
| #elif (HAVE_BAR >= 999) |
| ... |
| #else |
| ... |
| #endif |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>#elif</code> directive allows portions of a driver information file |
| to be used conditionally. <code>#elif</code> directives must appear after a |
| corresponding <a href="#_if"><code>#if</code></a> directive.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_else'><code>#else</code></a>, |
| <a href='#_endif'><code>#endif</code></a>, |
| <a href='#_if'><code>#if</code></a></p> |
| |
| |
| <h2 class="title"><a name='_else'>#else</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| #else |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| #if HAVE_FOO |
| ... |
| #elif (HAVE_BAR >= 999) |
| ... |
| #else |
| ... |
| #endif |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>#else</code> directive allows portions of a driver information file |
| to be used conditionally when the corresponding |
| <a href="#_if"><code>#if</code></a> and <a href="#_elif"><code>#elif</code></a> |
| expressions are non-zero.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_elif'><code>#elif</code></a>, |
| <a href='#_endif'><code>#endif</code></a>, |
| <a href='#_if'><code>#if</code></a></p> |
| |
| |
| <h2 class="title"><a name='_endif'>#endif</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| #endif |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| #if HAVE_FOO |
| ... |
| #elif (HAVE_BAR >= 999) |
| ... |
| #else |
| ... |
| #endif |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>#endif</code> directive ends a conditional block of a driver |
| information file. It must appear after all of the |
| <a href="#_if"><code>#if</code></a>, <a href="#_elif"><code>#elif</code></a>, |
| and <a href="#_else"><code>#else</code></a> directives for the current |
| conditional block.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_elif'><code>#elif</code></a>, |
| <a href='#_else'><code>#else</code></a>, |
| <a href='#_if'><code>#if</code></a></p> |
| |
| |
| <h2 class="title"><a name='_font'>#font</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| #font <i>name encoding "version" charset status</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| #font Courier Standard "(1.05)" Standard ROM |
| #font Symbol Special "(001.005)" Special ROM |
| #font Barcode-Foo Special "(1.0)" Special Disk |
| #font Unicode-Foo Expert "(2.0)" Adobe-Identity ROM |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>#font</code> directive defines a "base font" for all |
| printer drivers. The name is the PostScript font name.</p> |
| |
| <p>The encoding is the default encoding of the font, usually |
| <code>Standard</code>, <code>Expert</code>, or <code>Special</code>, as |
| defined in the Adobe PPD file specification.</p> |
| |
| <p>The version is the PostScript string definition that |
| corresponds to the font version number.</p> |
| |
| <p>The charset defines the available characters in the font, |
| usually <code>Standard</code> or <code>Special</code>, as defined in the |
| Adobe PPD file specification.</p> |
| |
| <p>The status is the installation status of the font and must be |
| either the word <code>ROM</code> or <code>Disk</code>. |
| |
| <p>Base fonts differ from fonts defined using the <a |
| href='#Font'><code>Font</code></a> directive in that they are not |
| automatically associated with all drivers - you must use the |
| special <code>Font *</code> directive to include them in a |
| driver.</p> |
| |
| <p>Currently the <code>#font</code> directive is used mainly for |
| defining the standard raster fonts in the |
| <code><font.defs></code> include file.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_include'><code>#include</code></a>, |
| <a href='#Font'><code>Font</code></a></p> |
| |
| |
| <h2 class="title"><a name='_if'>#if</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| #if <i>name or expression</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| #if HAVE_FOO |
| ... |
| #elif (HAVE_BAR >= 999) |
| ... |
| #else |
| ... |
| #endif |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>#if</code> directive allows portions of a driver information file |
| to be used conditionally. When followed by a name, the data that follows is |
| used only when the name is defined, otherwise the data is ignored. |
| <code>#if</code> directives can be nested up to 100 times.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_elif'><code>#elif</code></a>, |
| <a href='#_else'><code>#else</code></a>, |
| <a href='#_endif'><code>#endif</code></a></p> |
| |
| |
| <h2 class="title"><a name='_include'>#include</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| #include <<i>filename</i>> |
| #include "<i>filename</i>" |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| #include <font.defs> |
| #include "myfile.h" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>#include</code> directive reads the named driver |
| information file. If the filename is included inside angle |
| brackets (<code><filename></code>), then the PPD compiler will |
| look for the file in all of the include directories it knows |
| about. Otherwise, the file is opened in the current directory |
| relative to the current driver information file, and if that |
| fails then it looks in the include directories for the file.</p> |
| |
| <p>The <code>#include</code> directive can be nested to as many |
| files as are allowed by the host operating system, typically at |
| least 100 files.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_define'><code>#define</code></a>, |
| <a href='#_font'><code>#font</code></a>, |
| <a href='#_media'><code>#media</code></a></p> |
| |
| |
| <h2 class="title"><a name='_media'>#media</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| #media <i>name width length</i> |
| #media <i>"name/text" width length</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| #media "Letter/Letter - 8.5x11in" 8.5in 11in |
| #media "A4/A4 - 210x297mm" 210mm 297mm |
| #media "w936h1368/Super B/A3 - 13x19in" 936 1368 |
| #media Photo 4in 6in |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>#media</code> directive defines a named media size for |
| inclusion in a driver. The name with optional user text defines |
| the name for the media size and is used with the <a |
| href='#MediaSize'><code>MediaSize</code></a> directive to associate |
| the media size with the driver. The name may contain up to 40 ASCII |
| characters within the range of decimal 33 to decimal 126 inclusive, |
| except for the characters comma (44), slash (47) and colon (58). |
| The user text, if supplied, may not exceed 80 bytes in length.</p> |
| |
| <p>The width and length define the dimensions of the media. Each |
| number is optionally followed by one of the following unit |
| suffixes:</p> |
| |
| <ul> |
| |
| <li><code>cm</code> - centimeters</li> |
| |
| <li><code>ft</code> - feet</li> |
| |
| <li><code>in</code> - inches</li> |
| |
| <li><code>m</code> - meters</li> |
| |
| <li><code>mm</code> - millimeters</li> |
| |
| <li><code>pt</code> - points (72 points = 1 inch)</li> |
| |
| </ul> |
| |
| <p>Points are assumed if no units are specified. |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_include'><code>#include</code></a>, |
| <a href='#CustomMedia'><code>CustomMedia</code></a>, |
| <a href='#MediaSize'><code>MediaSize</code></a></p> |
| |
| |
| <h2 class="title"><a name='_po'>#po</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| #po <i>locale filename</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| #po es "es.po" |
| #po fr_CA "mydriver-fr_CA.po" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>#po</code> directive defines a message catalog to use for the |
| given POSIX language abbreviation. Multiple <code>#po</code> directives can be |
| specified to list multiple catalogs. The filename can be an absolute path or |
| relative to the driver information file. GNU gettext and macOS .strings |
| files are supported.</p> |
| |
| |
| <h2 class="title"><a name='Attribute'>Attribute</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Attribute <i>name "" value</i> |
| Attribute <i>name keyword value</i> |
| Attribute <i>name "keyword/text" value</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Attribute cupsInkChannels "" 1 |
| Attribute cupsAllDither 600dpi "1.0" |
| Attribute fooProfile "Photo/Photographic Profile" "photopro.icc" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Attribute</code> directive creates a PPD attribute. The |
| name may contain up to 40 ASCII characters within the range of decimal |
| 33 to decimal 126 inclusive, except for the characters comma (44), |
| slash (47) and colon (58).</p> |
| |
| <p>The selector can be the empty string (<code>""</code>) or text of up |
| to 80 bytes.</p> |
| |
| <p>The value is any string or number; the string may contain multiple |
| lines, however no one line may exceed 255 bytes.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href="#LocAttribute"><code>LocAttribute</code></a></p> |
| |
| |
| <h2 class="title"><a name='Choice'>Choice</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Choice <i>name "code"</i> |
| Choice <i>"name/text" "code"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Choice None "<</MediaType (None)>>setpagedevice" |
| Choice "False/No" "<</cupsCompression 0>>setpagedevice" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Choice</code> directive adds a single choice to the |
| current option. The name may contain up to 40 ASCII characters within |
| the range of decimal 33 to decimal 126 inclusive, except for the |
| characters comma (44), slash (47) and colon (58).</p> |
| |
| <p>If provided, the text can be any string up to 80 bytes |
| in length. If no text is provided, the name is used.</p> |
| |
| <p>The code is any string and may contain multiple lines, |
| however no one line may exceed 255 bytes.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><a name='ColorDevice'>ColorDevice</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| ColorDevice <i>boolean-value</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| ColorDevice no |
| ColorDevice yes |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>ColorDevice</code> directive tells the application if |
| the printer supports color. It is typically used in conjunction |
| with the <a href='#ColorModel'><code>ColorModel</code></a> directive |
| to provide color printing support.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#ColorModel'><code>ColorModel</code></a></p> |
| |
| |
| <h2 class="title"><span class="info">Deprecated</span><a name='ColorModel'>ColorModel</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| ColorModel <i>name colorspace colororder compression</i> |
| ColorModel <i>"name/text" colorspace colororder compression</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| ColorModel Gray/Grayscale w chunky 0 |
| ColorModel RGB/Color rgb chunky 0 |
| ColorModel CMYK cmyk chunky 0 |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>ColorModel</code> directive is a convenience directive |
| which creates a ColorModel option and choice for the current |
| printer driver. The name may contain up to 40 ASCII characters within |
| the range of decimal 33 to decimal 126 inclusive, except for the |
| characters comma (44), slash (47) and colon (58).</p> |
| |
| <p>If provided, the text can be any string up to 80 bytes in length. |
| If no text is provided, the name is used.</p> |
| |
| <p>The colorspace argument is one of the standard colorspace |
| keywords defined later in this appendix in the section titled, |
| "<a href='#REF_COLOR_SPACE'>Colorspace Keywords</a>".</p> |
| |
| <P>The colororder argument is one of the standard color order |
| keywords defined later in this appendix in the section titled, |
| "<a href='#REF_COLOR_ORDER'>Color Order Keywords</a>".</p> |
| |
| <p>The compression argument is any number and is assigned to the |
| <code>cupsCompression</code> attribute in the PostScript page device |
| dictionary.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorDevice'><code>ColorDevice</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><span class="info">Deprecated</span><a name='ColorProfile'>ColorProfile</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| ColorProfile <i>resolution/mediatype gamma density matrix</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| ColorProfile -/- 1.7 1.0 |
| 1.0 0.0 0.0 |
| 0.0 1.0 0.0 |
| 0.0 0.0 1.0 |
| |
| ColorProfile 360dpi/- 1.6 1.0 |
| 1.0 -0.05 -0.3 |
| -0.35 1.0 -0.15 |
| -0.095 -0.238 0.95 |
| |
| ColorProfile 720dpi/Special 1.5 1.0 |
| 1.0 0.0 -0.38 |
| -0.4 1.0 0.0 |
| 0.0 -0.38 0.9 |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>ColorProfile</code> directive defines a CMY |
| transform-based color profile. The resolution and mediatype |
| arguments specify the <code>Resolution</code> and <code>MediaType</code> |
| choices which use the profile; the hyphen (<code>-</code>) is used to |
| specify that any resolution or mediatype can be used with the |
| profile.</p> |
| |
| <p>The gamma argument specifies the gamma correction to apply to |
| the color values (P = p<sup>g</sup>) and is a real number |
| greater than 0. Values larger than 1 cause a general lightening |
| of the print while values smaller than 1 cause a general |
| darkening of the print. A value of 1 disables gamma |
| correction.</p> |
| |
| <p>The density argument specifies the linear density correction |
| to apply to the color values (P = d * p<sup>g</sup>) and is a |
| real number greater than 0 and less than or equal to 1. A value |
| 1 of disables density correction while lower values produce |
| proportionately lighter output.</p> |
| |
| <p>The matrix argument specifies a 3x3 linear transformation |
| matrix in row-major order. The matrix is applied only to the CMY |
| component of a RGB to CMYK transformation and is not used when |
| printing in grayscale or CMYK mode unless the printer only |
| supports printing with 3 colors.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#SimpleColorProfile'><code>SimpleColorProfile</code></a></p> |
| |
| |
| <h2 class="title"><a name='Copyright'>Copyright</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Copyright <i>"text"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Copyright "Copyright 2008 by Foo Enterprises" |
| |
| Copyright |
| "This software is free software; you can redistribute it and/or |
| modify it under the terms of the GNU General Public License as |
| published by the Free Software Foundation; either version 2 of |
| the License, or (at your option) any later version. |
| |
| This software is distributed in the hope that it will be useful, |
| but WITHOUT ANY WARRANTY; without even the implied warranty of |
| MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
| GNU General Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with this software; if not, write to the Free |
| Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, |
| MA 02111 USA" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Copyright</code> directive adds text comments to the |
| top of a PPD file, typically for use in copyright notices. The |
| text argument can contain multiple lines of text, but no line |
| may exceed 255 bytes.</p> |
| |
| |
| <h2 class="title"><a name='CustomMedia'>CustomMedia</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| CustomMedia <i>name width length left bottom right top |
| "size-code" "region-code"</i> |
| |
| CustomMedia <i>"name/text" width length left bottom right top |
| "size-code" "region-code"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| CustomMedia Letter 8.5in 11in 0.25in 0.46in 0.25in 0.04in |
| "<</PageSize[612 792]/ImagingBBox null/ManualFeed false>> |
| setpagedevice" |
| "<</PageSize[612 792]/ImagingBBox null/ManualFeed true>> |
| setpagedevice" |
| |
| CustomMedia "A4/A4 - 210x297mm" 210mm 297mm 12 12 12 12 |
| "<</PageSize[595 842]/ImagingBBox null>>setpagedevice" |
| "<</PageSize[595 842]/ImagingBBox null>>setpagedevice" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>CustomMedia</code> directive adds a custom media size to |
| the driver. The name may contain up to 40 ASCII characters within the |
| range of decimal 33 to decimal 126 inclusive, except for the characters |
| comma (44), slash (47) and colon (58).</p> |
| |
| <p>If provided, the text can be any string up to 80 bytes in length. |
| If no text is provided, the name is used.</p> |
| |
| <p>The width and length arguments specify the dimensions of the |
| media as defined for the <a href="#_media"><code>#media</code></a> |
| directive.</p> |
| |
| <p>The left, bottom, right, and top arguments specify the |
| printable margins of the media.</p> |
| |
| <p>The size-code and region-code arguments specify the |
| PostScript commands to run for the <code>PageSize</code> and |
| <code>PageRegion</code> options, respectively. The commands can |
| contain multiple lines, however no line may be more than 255 |
| bytes in length.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_media'><code>#media</code></a>, |
| <a href='#MediaSize'><code>MediaSize</code></a></p> |
| |
| |
| <h2 class="title"><a name='Cutter'>Cutter</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Cutter <i>boolean-value</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Cutter yes |
| Cutter no |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Cutter</code> directive specifies whether the printer |
| has a built-in media cutter. When a cutter is present, the |
| printer's PPD file will contain a <code>CutMedia</code> option that |
| allows the user to control whether the media is cut at the end |
| of the job.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><span class="info">Deprecated</span><a name='Darkness'>Darkness</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Darkness <i>temperature name</i> |
| Darkness <i>temperature "name/text"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Darkness 0 Light |
| Darkness 2 "Normal/Standard" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Darkness</code> directive defines a choice for the |
| <code>cupsDarkness</code> option which sets the |
| <code>cupsCompression</code> attribute in the PostScript page device |
| dictionary. It is used with the CUPS <VAR>rastertolabel</VAR> |
| sample driver to control the print head temperature and |
| therefore the darkness of the print.</p> |
| |
| <p>The temperature argument specifies a temperature value for |
| the Dymo driver from 0 (lowest) to 3 (highest), with 2 |
| representing the normal setting.</p> |
| |
| <p>The name may contain up to 40 ASCII characters within the range of |
| decimal 33 to decimal 126 inclusive, except for the characters comma |
| (44), slash (47) and colon (58).</p> |
| |
| <p>If provided, the text can be any string up to 80 bytes in length. |
| If no text is provided, the name is used.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><a name='DriverType'>DriverType</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| DriverType <i>type</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| DriverType custom |
| DriverType escp |
| DriverType pcl |
| DriverType ps |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>DriverType</code> directive tells the PPD compiler |
| which DDK filters to include in the PPD file. The following |
| types are supported:</p> |
| |
| <ul> |
| |
| <li><code>custom</code> - Use only those filters that are |
| defined in the driver information file</li> |
| |
| <li><code>epson</code> - Use the CUPS sample Epson driver filter |
| <var>rastertoepson</var></li> |
| |
| <li><code>escp</code> - Use the ESC/P DDK driver filters |
| <var>commandtoescpx</var> and |
| <var>rastertoescpx</var></li> |
| |
| <li><code>hp</code> - Use the CUPS sample HP driver filter |
| <var>rastertohp</var></li> |
| |
| <li><code>label</code> - Use the CUPS sample label driver filter <var>rastertolabel</var></li> |
| |
| <li><code>pcl</code> - Use the HP-PCL DDK driver filters |
| <var>commandtopclx</var> and |
| <var>rastertopclx</var></li> |
| |
| <li><code>ps</code> - Use no filters; this driver is for a |
| standard PostScript device</li> |
| |
| </ul> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Filter'><code>Filter</code></a>, |
| <a href='#ModelNumber'><code>ModelNumber</code></a></p> |
| |
| |
| <h2 class="title"><a name='Duplex'>Duplex</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Duplex <i>type</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Duplex none |
| Duplex normal |
| Duplex flip |
| Duplex rotated |
| Duplex manualtumble |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Duplex</code> directive determines whether double-sided printing |
| is supported in the current driver. The type argument specifies the type |
| of duplexing that is supported:</p> |
| |
| <ul> |
| |
| <li><code>none</code> - double-sided printing is not |
| supported</li> |
| |
| <li><code>normal</code> - double-sided printing is |
| supported</li> |
| |
| <li><code>flip</code> - double-sided printing is supported, |
| but the back side image needs to be flipped vertically |
| (used primarily with inkjet printers)</li> |
| |
| <li><code>rotated</code> - double-sided printing is supported, |
| but the back side image needs to be rotated 180 degrees for |
| DuplexNoTumble</li> |
| |
| <li><code>manualtumble</code> - double-sided printing is supported, |
| but the back side image needs to be rotated 180 degrees for |
| DuplexTumble</li> |
| |
| </ul> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><a name='FileName'>FileName</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| FileName <i>"filename"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| FileName "Acme Laser Printer 2000" |
| FileName "Acme Ink Waster 1000" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>FileName</code> attribute specifies the "long" name of the |
| PPD file for the current driver.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Manufacturer'><code>Manufacturer</code></a>, |
| <a href='#ModelName'><code>ModelName</code></a>, |
| <a href="#PCFileName"><code>PCFileName</code></a>, |
| <a href='#Version'><code>Version</code></a></p> |
| |
| |
| <h2 class="title"><a name='Filter'>Filter</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Filter <i>mime-type cost program</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Filter application/vnd.cups-raster 50 rastertofoo |
| Filter application/vnd.hp-HPGL 25 /usr/foo/filter/hpgltofoo |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Filter</code> directive adds a filter for the current |
| driver. The mime-type argument is a valid MIME media type name |
| as defined in a CUPS <var>mime.types</var> file.</p> |
| |
| <p>The cost argument specifies the relative cost of the filter. |
| In general, use a number representing the average percentage of |
| CPU time that is used when printing the specified MIME media |
| type.</p> |
| |
| <p>The program argument specifies the program to run; if the |
| program is not an absolute filename, then CUPS will look for the |
| program in the CUPS filter directory.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#DriverType'><code>DriverType</code></a></p> |
| |
| |
| <h2 class="title"><span class="info">Deprecated</span><a name='Finishing'>Finishing</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Finishing <i>name</i> |
| Finishing <i>"name/text"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Finishing None |
| Finishing "Glossy/Photo Overcoat" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Finishing</code> directive adds a choice to the |
| <code>cupsFinishing</code> option. The name may contain up to 40 ASCII |
| characters within the range of decimal 33 to decimal 126 inclusive, |
| except for the characters comma (44), slash (47) and colon (58).</p> |
| |
| <p>If provided, the text can be any string up to 80 bytes in length. |
| If no text is provided, the name is used.</p> |
| |
| <p>The name is stored in the <code>OutputType</code> attribute in the |
| PostScript page device dictionary.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><a name='Font'>Font</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Font <i>name encoding "version" charset status</i> |
| Font * |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Font * |
| Font Courier Standard "(1.05)" Standard ROM |
| Font Symbol Special "(001.005)" Special ROM |
| Font Barcode-Foo Special "(1.0)" Special Disk |
| Font Unicode-Foo Expert "(2.0)" Adobe-Identity ROM |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Font</code> directive defines a "device font" for the |
| current printer driver. The name is the PostScript font name.</p> |
| |
| <p>The encoding is the default encoding of the font, usually |
| <code>Standard</code>, <code>Expert</code>, or <code>Special</code>, as |
| defined in the Adobe PPD file specification.</p> |
| |
| <p>The version is the PostScript string definition that |
| corresponds to the font version number.</p> |
| |
| <p>The charset defines the available characters in the font, |
| usually <code>Standard</code> or <code>Special</code>, as defined in the |
| Adobe PPD file specification.</p> |
| |
| <p>The status is the installation status of the font and must be |
| either the word <code>ROM</code> or <code>Disk</code>.</p> |
| |
| <p>Device fonts differ from fonts defined using the <a |
| href='#_font'><code>#font</code></a> directive in that they are |
| automatically associated with the current driver. Fonts defined |
| using <code>#font</code> may be imported into the current driver |
| using the <code>Font *</code> form of this directive.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_font'><code>#font</code></a></p> |
| |
| |
| <h2 class="title"><a name='Group'>Group</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Group <i>name</i> |
| Group <i>"name/text"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Group General |
| Group "InstallableOptions/Options Installed" |
| Group "Special/Vendor Options" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Group</code> directive specifies the group for new |
| <code>Option</code> directives. The name may contain up to 40 ASCII |
| characters within the range of decimal 33 to decimal 126 inclusive, |
| except for the characters comma (44), slash (47) and colon (58).</p> |
| |
| <p>If provided, the text can be any string up to 40 bytes in length. |
| If no text is provided, the name is used.</p> |
| |
| <p>The names <code>General</code> and <code>InstallableOptions</code> |
| are predefined for the standard Adobe UI keywords and for installable |
| options, respectively.</p> |
| |
| <center><table width='80%' border='1' bgcolor='#cccccc' cellpadding='5' cellspacing='0'> |
| <tr> |
| <td align='justify'><b>Note:</b> |
| |
| <p>Because of certain API binary compatibility issues, |
| CUPS limits the length of PPD group translation strings |
| (text) to 40 bytes, while the PPD specification |
| allows for up to 80 bytes.</p> |
| |
| </td> |
| </tr> |
| </table></center> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><a name='HWMargins'>HWMargins</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| HWMargins <i>left bottom right top</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| HWMargins 18 36 18 36 |
| HWMargins 0.25in 0.5in 0.25in 0.5in |
| HWMargins 0.6cm 1.2cm 0.6cm 1.2cm |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>HWMargins</code> directive specifies the current |
| margins for <a href='#MediaSize'><code>MediaSize</code></a> that |
| follow. The left, bottom, right, and top margin values specify |
| the printable margins.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#MediaSize'><code>MediaSize</code></a></p> |
| |
| |
| <h2 class="title"><a name='InputSlot'>InputSlot</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| InputSlot <i>position name</i> |
| InputSlot <i>position "name/text"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| InputSlot 0 Auto |
| InputSlot 1 "Upper/Tray 1" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>InputSlot</code> directive adds a new choice to the |
| <code>InputSlot</code> option. The position argument is a number |
| from 0 to 2<sup>32</sup>-1 specifying the value that is placed |
| in the <code>MediaPosition</code> attribute in the PostScript page |
| device dictionary.</p> |
| |
| <p>The name may contain up to 40 ASCII characters within the range of |
| decimal 33 to decimal 126 inclusive, except for the characters comma |
| (44), slash (47) and colon (58).</p> |
| |
| <p>If provided, the text can be any string up to 80 bytes in length. |
| If no text is provided, the name is used.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><a name='Installable'>Installable</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Installable <i>name</i> |
| Installable <i>"name/text"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Installable EnvTray |
| Installable "Option1/Duplexer Installed" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Installable</code> directive adds a new boolean option |
| to the <code>InstallableOptions</code> group with a default value of |
| <code>False</code>. The name may contain up to 40 ASCII characters |
| within the range of decimal 33 to decimal 126 inclusive, except for |
| the characters comma (44), slash (47) and colon (58).</p> |
| |
| <p>If provided, the text can be any string up to 80 bytes in length. |
| If no text is provided, the name is used.</p> |
| |
| |
| <h2 class="title"><a name='LocAttribute'>LocAttribute</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| LocAttribute <i>name "keyword/text" value</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| LocAttribute fooProfile "Photo/Photographic Profile" "photopro.icc" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>LocAttribute</code> directive creates a localized PPD |
| attribute. The name may contain up to 40 ASCII characters within the |
| range of decimal 33 to decimal 126 inclusive, except for the characters |
| comma (44), slash (47) and colon (58).</p> |
| |
| <p>The selector can be the empty string (<code>""</code>) or text of up |
| to 80 bytes.</p> |
| |
| <p>The value is any string or number; the string may contain multiple |
| lines, however no one line may exceed 255 bytes.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href="#Attribute"><code>Attribute</code></a></p> |
| |
| |
| <h2 class="title"><a name='ManualCopies'>ManualCopies</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| ManualCopies <i>boolean-value</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| ManualCopies no |
| ManualCopies yes |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>ManualCopies</code> directive specifies whether copies |
| need to be produced by the RIP filters. The default is |
| <code>no</code>.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><a name='Manufacturer'>Manufacturer</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Manufacturer <i>"name"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Manufacturer "Foo" |
| Manufacturer "HP" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Manufacturer</code> directive specifies the |
| manufacturer name for the current driver. The name argument must |
| conform to the manufacturer name requirements in the Adobe PPD |
| file specification.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href="#FileName"><code>FileName</code></a>, |
| <a href='#ModelName'><code>ModelName</code></a>, |
| <a href='#PCFileName'><code>PCFileName</code></a>, |
| <a href='#Version'><code>Version</code></a></p> |
| |
| |
| <h2 class="title"><a name='MaxSize'>MaxSize</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| MaxSize <i>width length</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| MaxSize 36in 100ft |
| MaxSize 300cm 30m |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>MaxSize</code> directive specifies the maximum width |
| and length that is supported for custom page sizes.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#MinSize'><code>MinSize</code></a>, |
| <a href='#VariablePaperSize'><code>VariablePaperSize</code></a></p> |
| |
| |
| <h2 class="title"><a name='MediaSize'>MediaSize</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| MediaSize <i>name</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| MediaSize Letter |
| MediaSize A4 |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>MediaSize</code> directive adds the named size to the |
| current printer driver using the current margins defined with |
| the <a href="#HWMargins"><code>HWMargins</code></a> directive. The |
| name argument must match a media size defined using the <a |
| href="#_media"><code>#media</code></a> directive.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#_media'><code>#media</code></a>, |
| <a href='#HWMargins'><code>HWMargins</code></a></p> |
| |
| |
| <h2 class="title"><a name='MediaType'>MediaType</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| MediaType <i>type name</i> |
| MediaType <i>type "name/text"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| MediaType 0 Auto |
| MediaType 1 "Plain/Plain Paper" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>MediaType</code> directive adds a new choice to the |
| <code>MediaType</code> option. The type argument is a number |
| from 0 to 2<sup>32</sup>-1 specifying the value that is placed |
| in the <code>cupsMediaType</code> attribute in the PostScript page |
| device dictionary.</p> |
| |
| <p>The name may contain up to 40 ASCII characters within the range of |
| decimal 33 to decimal 126 inclusive, except for the characters comma |
| (44), slash (47) and colon (58).</p> |
| |
| <p>If provided, the text can be any string up to 80 bytes in length. |
| If no text is provided, the name is used.</p> |
| |
| <p>The name is placed in the <code>MediaType</code> attribute in the |
| PostScript page device dictionary.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><a name='MinSize'>MinSize</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| MinSize <i>width length</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| MinSize 4in 8in |
| MinSize 10cm 20cm |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>MinSize</code> directive specifies the minimum width |
| and length that is supported for custom page sizes.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#MaxSize'><code>MaxSize</code></a>, |
| <a href='#VariablePaperSize'><code>VariablePaperSize</code></a></p> |
| |
| |
| <h2 class="title"><a name='ModelName'>ModelName</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| ModelName <i>"name"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| ModelName "Foo Laser Printer 2000" |
| ModelName "Colorific 123" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>ModelName</code> directive sets the printer name for |
| the <code>ModelName</code>, <code>NickName</code>, and |
| <code>ShortNickName</code> attributes for the printer driver. The |
| name is any string of letters, numbers, spaces, and the |
| characters ".", "/", "-", and "+" and should not begin with the |
| manufacturer name since the PPD compiler will add this |
| automatically for you. The maximum length of the name string is |
| 31 bytes to conform to the Adobe limits on the length of |
| <code>ShortNickName</code>.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href="#FileName"><code>FileName</code></a>, |
| <a href='#Manufacturer'><code>Manufacturer</code></a>, |
| <a href='#PCFileName'><code>PCFileName</code></a>, |
| <a href='#Version'><code>Version</code></a></p> |
| |
| |
| <h2 class="title"><a name='ModelNumber'>ModelNumber</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| ModelNumber <i>expression</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| ModelNumber 123 |
| ModelNumber ($PCL_PAPER_SIZE $PCL_PJL) |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>ModelNumber</code> directive sets the |
| <code>cupsModelNumber</code> attribute for the printer driver, which |
| is often used by the printer driver filter to tailor its output |
| for the current device. The number is any integer or bitwise OR |
| of integers and constants that is appropriate for the printer |
| driver filters.<p> |
| |
| <p>A complete list of printer driver model number constants is |
| available later in this appendix in the section titled, "<a |
| href='#REF_MODEL_NUMBER'>Printer Driver ModelNumber |
| Constants</a>".</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#DriverType'><code>DriverType</code></a>, |
| <a href='#Filter'><code>Filter</code></a></p> |
| |
| |
| <h2 class="title"><a name='Option'>Option</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Option <i>name type section order</i> |
| Option <i>"name/text" type section order</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Option Punch Boolean AnySetup 10 |
| Option "fooFinish/Finishing Option" PickOne DocumentSetup 10 |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Option</code> directive creates a new option in the |
| current group, by default the <code>General</code> group. The name |
| may contain up to 40 ASCII characters within the range of decimal 33 |
| to decimal 126 inclusive, except for the characters comma (44), slash |
| (47) and colon (58).</p> |
| |
| <p>If provided, the text can be any string up to 80 bytes in length. |
| If no text is provided, the name is used.</p> |
| |
| <p>The type argument is one of the following keywords:</p> |
| |
| <ul> |
| |
| <li><code>Boolean</code> - a true/false option</li> |
| |
| <li><code>PickOne</code> - allows the user to pick one |
| choice from a list</li> |
| |
| <li><code>PickMany</code> - allows the user to pick zero or |
| more choices from a list</li> |
| |
| </ul> |
| |
| <p>The section argument is one of the following keywords:</p> |
| |
| <ul> |
| |
| <li><code>AnySetup</code> - The option can be placed in |
| either the DocumentSetup or PageSetup sections of the |
| PostScript document</li> |
| |
| <li><code>DocumentSetup</code> - The option must be placed |
| in the DocumentSetup section of the PostScript document; |
| this does not allow the option to be overridden on |
| individual pages</li> |
| |
| <li><code>ExitServer</code> - The option must be placed in a |
| separate initialization job prior to the document (not |
| used for raster printer drivers)</li> |
| |
| <li><code>JCLSetup</code> - The option contains job control |
| language commands and must be sent prior to the document |
| using the <code>JCLBegin</code> and |
| <code>JCLToPSInterpreter</code> attributes (not used for |
| raster printer drivers)</li> |
| |
| <li><code>PageSetup</code> - The option must be placed at the |
| beginning of each page in the PostScript document</li> |
| |
| <li><code>Prolog</code> - The option must be placed in the |
| prolog section of the PostScript document; this is |
| typically used to add special comments for high-end |
| typesetters, but can also be used to add CUPS PostScript |
| job ticket comments.</li> |
| |
| </ul> |
| |
| <p>The order argument is a real number greater than or equal to |
| 0.0 and is used to sort the printer commands from many options |
| before sending them to the printer or RIP filter.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><a name='PCFileName'>PCFileName</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| PCFileName <i>"filename.ppd"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| PCFileName "foljt2k1.ppd" |
| PCFileName "deskjet.ppd" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>PCFileName</code> attribute specifies the name of the |
| PPD file for the current driver. The filename argument must |
| conform to the Adobe PPD file specification and can be no more |
| than 8 filename characters plus the extension ".ppd".</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href="#FileName"><code>FileName</code></a>, |
| <a href='#Manufacturer'><code>Manufacturer</code></a>, |
| <a href='#ModelName'><code>ModelName</code></a>, |
| <a href='#Version'><code>Version</code></a></p> |
| |
| |
| <h2 class="title"><span class="info">Deprecated</span><a name='Resolution'>Resolution</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Resolution <i>colorspace bits-per-color row-count row-feed row-step name</i> |
| Resolution <i>colorspace bits-per-color row-count row-feed row-step "name/text"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Resolution - 8 0 0 0 300dpi |
| Resolution k 8 0 0 0 "600x300dpi/600 DPI Grayscale" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Resolution</code> directive creates a new |
| <code>Resolution</code> option choice which sets the |
| <code>HWResolution</code>, <code>cupsBitsPerColor</code>, |
| <code>cupsRowCount</code>, <code>cupsRowFeed</code>, |
| <code>cupsRowStep</code>, and optionally the <code>cupsColorSpace</code> |
| page device dictionary attributes. The colorspace argument |
| specifies a colorspace to use for the specified resolution and |
| can be the hyphen (<code>-</code>) character to make no change to |
| the selected color model or any keyword listed in the section |
| titled, "<a href='#REF_COLOR_SPACE'>Colorspace Keywords</a>", to |
| force the named colorspace.</p> |
| |
| <p>The bits-per-color argument specifies the number of bits per |
| color to generate when RIP'ing a job. The values 1, 2, 4, and 8 |
| are currently supported by CUPS.</p> |
| |
| <p>The row-count, row-feed, and row-step argument specify the |
| driver-dependent values for the <code>cupsRowCount</code>, |
| <code>cupsRowFeed</code>, and <code>cupsRowStep</code> attributes, |
| respectively. Most drivers leave these attributes set to 0, but |
| any number from 0 to 2<sup>32</sup>-1 is allowed.</p> |
| |
| <p>The name argument must conform to the resolution naming |
| conventions in the Adobe PPD file specification, either |
| <code>HHHdpi</code> for symmetric resolutions or <code>HHHxVVVdpi</code> |
| for asymmetric resolutions. The <code>HHH</code> and <code>VVV</code> in |
| the examples represent the horizontal and vertical resolutions |
| which must be positive integer values.</p> |
| |
| <p>If provided, the text can be any string up to 80 bytes in length. |
| If no text is provided, the name is used.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#UIConstraints'><code>UIConstraints</code></a></p> |
| |
| |
| <h2 class="title"><span class="info">Deprecated</span><a name='SimpleColorProfile'>SimpleColorProfile</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| SimpleColorProfile <i>resolution/mediatype density |
| yellow-density red-density gamma |
| red-adjust green-adjust blue-adjust</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| SimpleColorProfile -/- 100 100 200 1.0 0 0 0 |
| |
| SimpleColorProfile 360dpi/- 100 95 150 1.2 5 10 15 |
| |
| SimpleColorProfile 720dpi/Glossy 100 90 120 1.5 -5 5 10 |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>SimpleColorProfile</code> directive creates a |
| matrix-based <a href="#ColorProfile"><code>ColorProfile</code></a>. |
| The resolution and mediatype arguments specify the |
| <code>Resolution</code> and <code>MediaType</code> choices which use the |
| profile; the hyphen (<code>-</code>) is used to specify that any |
| resolution or mediatype can be used with the profile.</p> |
| |
| <p>The density argument specifies the linear density correction |
| to apply to the color values (P = d * 0.01 * p<sup>g</sup>) and |
| is an integer greater than 0 and less than or equal to 100. A |
| value 100 of disables density correction while lower values |
| produce proportionately lighter output. The density value |
| adjusts all color channels equally in all color modes.</p> |
| |
| <p>The yellow-density argument specifies the density of the |
| yellow channel when printing in grayscale or RGB mode and is an |
| integer greater than 0 and less then or equal to 100. A value of |
| 100 disables yellow density correction while lower values |
| produce proportionately lighter output.</p> |
| |
| <P>The red-density argument specifies the two-color density |
| limit (e.g. C + M, C + Y, M + Y) when printing in grayscale or |
| RGB mode and is an integer greater than 0 and less then or equal |
| to 200. A value of 200 disables two-color density correction |
| while lower values produce proportionately lighter output.</p> |
| |
| <p>The gamma argument specifies the gamma correction to apply to |
| the color values (P = p<sup>g</sup>) and is a real number |
| greater than 0. Values larger than 1 cause a general lightening |
| of the print while values smaller than 1 cause a general |
| darkening of the print. A value of 1 disables gamma |
| correction.</p> |
| |
| <p>The red-adjust, green-adjust, blue-adjust arguments specify |
| the percentage of color to add or remove. Positive red-adjust |
| values add magenta and negative values add yellow. Positive |
| green-adjust values add cyan and negative values add yellow. |
| Positive blue-adjust values add cyan and negative values add |
| magenta. Values of 0 disable color adjustments.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#ColorProfile'><code>ColorProfile</code></a></p> |
| |
| |
| <h2 class="title"><a name='Throughput'>Throughput</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Throughput <i>pages-per-minute</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Throughput 1 |
| Throughput 10 |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Throughput</code> directive sets the <code>Throughput</code> |
| attribute for the current printer driver. The pages-per-minute |
| argument is a positive integer representing the peak number of |
| pages per minute that the printer is capable of producing. Use a |
| value of 1 for printers that produce less than 1 page per |
| minute.</p> |
| |
| |
| <h2 class="title"><a name='UIConstraints'>UIConstraints</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| UIConstraints <i>"*Option1 *Option2"</i> |
| UIConstraints <i>"*Option1 Choice1 *Option2"</i> |
| UIConstraints <i>"*Option1 *Option2 Choice2"</i> |
| UIConstraints <i>"*Option1 Choice1 *Option2 Choice2"</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| UIConstraints "*Finishing *MediaType" |
| UIConstraints "*Option1 False *Duplex" |
| UIConstraints "*Duplex *MediaType Transparency" |
| UIConstraints "*Resolution 600dpi *ColorModel RGB" |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>UIConstraints</code> directive adds a constraint |
| between two options. Constraints inform the application when a |
| user has chosen incompatible options. Each option name is |
| preceded by the asterisk (<code>*</code>). If no choice is given for |
| an option, then all choices <i>except</i> <code>False</code> and |
| <code>None</code> will conflict with the other option and choice(s). |
| Since the PPD compiler automatically adds reciprocal constraints |
| (option A conflicts with option B, so therefore option B |
| conflicts with option A), you need only specify the constraint |
| once.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Choice'><code>Choice</code></a>, |
| <a href='#ColorModel'><code>ColorModel</code></a>, |
| <a href='#Cutter'><code>Cutter</code></a>, |
| <a href='#Darkness'><code>Darkness</code></a>, |
| <a href='#Duplex'><code>Duplex</code></a>, |
| <a href='#Finishing'><code>Finishing</code></a>, |
| <a href='#Group'><code>Group</code></a>, |
| <a href='#InputSlot'><code>InputSlot</code></a>, |
| <a href='#Installable'><code>Installable</code></a>, |
| <a href='#MediaType'><code>MediaType</code></a>, |
| <a href='#Option'><code>Option</code></a>, |
| <a href='#Resolution'><code>Resolution</code></a></p> |
| |
| |
| <h2 class="title"><a name='VariablePaperSize'>VariablePaperSize</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| VariablePaperSize <i>boolean-value</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| VariablePaperSize yes |
| VariablePaperSize no |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>VariablePaperSize</code> directive specifies whether |
| the current printer supports variable (custom) page sizes. When |
| <code>yes</code> is specified, the PPD compiler will include the |
| standard PPD attributes required to support custom page |
| sizes.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#MaxSize'><code>MaxSize</code></a>, |
| <a href='#MinSize'><code>MinSize</code></a></p> |
| |
| |
| <h2 class="title"><a name='Version'>Version</a></h2> |
| |
| <h3>Syntax</h3> |
| |
| <pre> |
| Version <i>number</i> |
| </pre> |
| |
| <h3>Examples</h3> |
| |
| <pre> |
| Version 1.0 |
| Version 3.7 |
| </pre> |
| |
| <h3>Description</h3> |
| |
| <p>The <code>Version</code> directive sets the <code>FileVersion</code> |
| attribute in the PPD file and is also used for the |
| <code>NickName</code> attribute. The number argument is a positive |
| real number.</p> |
| |
| <h3>See Also</h3> |
| |
| <p><a href='#Manufacturer'><code>Manufacturer</code></a>, |
| <a href='#ModelName'><code>ModelName</code></a>, |
| <a href='#PCFileName'><code>PCFileName</code></a></p> |
| |
| |
| <h2 class="title"><a name='REF_INCLUDE'>Standard Include Files</h2> |
| |
| <p><a href='#TABLEB-1'>Table B-1</a> shows the standard include |
| files which are provided with the DDK.</p> |
| |
| <center><table border='1' cellpadding='5' cellspacing='0' width='80%'> |
| <caption align='bottom'><a name='TABLEB-1'><i>Table B-1, |
| Standard Include Files</i></a></caption> |
| <tr bgcolor='#cccccc'> |
| <th>Include File</th> |
| <th>Description</th> |
| </tr> |
| <tr> |
| <td valign='top'><code><font.defs></code></td> |
| <td align='justify' valign='top'>Defines all of the |
| standard fonts which are included with ESP Ghostscript |
| and the Apple PDF RIP.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code><epson.h></code></td> |
| <td align='justify' valign='top'>Defines all of the |
| CUPS ESC/P sample driver constants.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code><escp.h></code></td> |
| <td align='justify' valign='top'>Defines all of the |
| DDK ESC/P driver constants.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code><hp.h></code></td> |
| <td align='justify' valign='top'>Defines all of the |
| CUPS HP-PCL sample driver constants.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code><label.h></code></td> |
| <td align='justify' valign='top'>Defines all of the |
| CUPS label sample driver constants.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code><media.defs></code></td> |
| <td align='justify' valign='top'>Defines all of the |
| standard media sizes listed in Appendix B of the Adobe |
| PostScript Printer Description File Format |
| Specification.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code><pcl.h></code></td> |
| <td align='justify' valign='top'>Defines all of the |
| DDK HP-PCL driver constants.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code><raster.defs></code></td> |
| <td align='justify' valign='top'>Defines all of the CUPS |
| raster format constants.</td> |
| </tr> |
| </table></center> |
| |
| <h2 class="title"><a name='REF_MODEL_NUMBER'>Printer Driver ModelNumber Constants</a></h2> |
| |
| <p>The CUPS DDK and sample drivers use the |
| <code>cupsModelNumber</code> attribute in the PPD file to tailor |
| their output to the printer. The following sections describe the |
| constants for each driver.</p> |
| |
| <h3><a name='REF_MODEL_EPSON'>The CUPS ESC/P Sample Driver (epson)</a></h3> |
| |
| <p>The <code>epson</code> driver supports Epson and Okidata |
| dot-matrix, Epson Stylus Color, and Epson Stylus Photo printers. |
| <a href='#TABLEB-2'>Table B-2</a> lists the constants for the <a |
| href='#ModelNumber'><code>ModelNumber</code></a> directive. |
| <code>ModelNumber</code> values should be inserted by referencing |
| only one of these constants.</p> |
| |
| <!-- NEED 20 --> |
| <center><table border='1' cellpadding='5' cellspacing='0' width='80%'> |
| <caption align='bottom'><a name='TABLEB-2'><i>Table B-2, <code>epson</code> driver |
| constants</i></a></caption> |
| <tr bgcolor='#cccccc'> |
| <th>Constant</th> |
| <th>Description</th> |
| </tr> |
| <tr> |
| <td valign='top'><code>EPSON_9PIN</code></td> |
| <td align='justify' valign='top'>Epson and Okidata 9-pin |
| dot-matrix printers</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>EPSON_24PIN</code></td> |
| <td align='justify' valign='top'>Epson and Okidata 24-pin |
| dot-matrix printers</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>EPSON_COLOR</code></td> |
| <td align='justify' valign='top'>Older Epson Stylus Color |
| printers that use the <code>ESC .</code> graphics command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>EPSON_PHOTO</code></td> |
| <td align='justify' valign='top'>Older Epson Stylus Photo |
| printers that use the <code>ESC .</code> graphics command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>EPSON_ICOLOR</code></td> |
| <td align='justify' valign='top'>Newer Epson Stylus Color |
| printers that use the <code>ESC i</code> graphics command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>EPSON_IPHOTO</code></td> |
| <td align='justify' valign='top'>Newer Epson Stylus Photo |
| printers that use the <code>ESC i</code> graphics command</td> |
| </tr> |
| </table></center> |
| |
| <h3><a name='REF_MODEL_HP'>The CUPS HP-PCL Sample Driver (hp)</a></h3> |
| |
| <p>The <code>hp</code> driver supports HP LaserJet and DeskJet |
| printers. <a href='#TABLEB-3'>Table B-3</a> lists the constants |
| for the <a href='#ModelNumber'><code>ModelNumber</code></a> |
| directive. <code>ModelNumber</code> values should be inserted by |
| referencing only one of these constants.</p> |
| |
| <center><table border='1' cellpadding='5' cellspacing='0' width='80%'> |
| <caption align='bottom'><a name='TABLEB-3'><i>Table B-3, <code>hp</code> driver |
| constants</i></a></caption> |
| <tr bgcolor='#cccccc'> |
| <th>Constant</th> |
| <th>Description</th> |
| </tr> |
| <tr> |
| <td valign='top'><code>HP_LASERJET</code></td> |
| <td align='justify' valign='top'>HP LaserJet printers supporting |
| PCL 3, 4, or 5</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>HP_DESKJET</code></td> |
| <td align='justify' valign='top'>HP DeskJet printers |
| supporting PCL 3 and using the simple color graphics |
| command (<code>ESC * r # U</code>)</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>HP_DESKJET2</code></td> |
| <td align='justify' valign='top'>HP DeskJet printers |
| supporting PCL3GUI and using the configure raster graphics |
| command (<code>ESC * g # W</code>)</td> |
| </tr> |
| </table></center> |
| |
| <h3><a name='REF_MODEL_LABEL'>The CUPS Label Sample Driver (label)</a></h3> |
| |
| <p>The <code>label</code> driver supports the Dymo Labelwriter, Zebra CPCL, Zebra EPL, and Zebra ZPL, and Intellitech PCL label printers. <a href='#TABLEB-4'>Table B-4</a> |
| lists the constants for the <a |
| href='#ModelNumber'><code>ModelNumber</code></a> directive. |
| <code>ModelNumber</code> values should be inserted by referencing |
| only one of these constants.</p> |
| |
| <center><table border='1' cellpadding='5' cellspacing='0' width='80%'> |
| <caption align='bottom'><a name='TABLEB-4'><i>Table B-4, <code>label</code> driver |
| constants</i></a></caption> |
| <tr bgcolor='#cccccc'> |
| <th>Constant</th> |
| <th>Description</th> |
| </tr> |
| <tr> |
| <td valign='top'><code>DYMO_3x0</code></td> |
| <td align='justify' valign='top'>Format output for the |
| Dymo Labelwriter 300, 330, or 330 Turbo.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>INTELLITECH_PCL</code></td> |
| <td align='justify' valign='top'>Format output for the Intellitech PCL printers.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ZEBRA_CPCL</code></td> |
| <td align='justify' valign='top'>Format output for the Zebra CPCL printers.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ZEBRA_EPL_LINE</code></td> |
| <td align='justify' valign='top'>Format output for the Zebra EPL line mode (EPL 1) printers.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ZEBRA_EPL_PAGE</code></td> |
| <td align='justify' valign='top'>Format output for the Zebra EPL page mode (EPL 2) printers.</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ZEBRA_ZPL</code></td> |
| <td align='justify' valign='top'>Format output for the Zebra ZPL printers.</td> |
| </tr> |
| </table></center> |
| |
| <h3><a name='REF_MODEL_ESCP'>The DDK ESC/P Driver (escp)</a></h3> |
| |
| <p>The <code>escp</code> driver supports all Epson inkjet printers. |
| <a href='#TABLEB-6'>Table B-6</a> lists the constants for the <a |
| href='#ModelNumber'><code>ModelNumber</code></a> directive. |
| <code>ModelNumber</code> values should be specified as the bitwise |
| OR of one or more of these constants.</p> |
| |
| <center><table border='1' cellpadding='5' cellspacing='0' width='80%'> |
| <caption align='bottom'><a name='TABLEB-6'><i>Table B-6, <code>escp</code> driver |
| constants</i></a></caption> |
| <tr bgcolor='#cccccc'> |
| <th>Constant</th> |
| <th>Description</th> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_MICROWEAVE</code></td> |
| <td align='justify' valign='top'>Use microweave command?</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_STAGGER</code></td> |
| <td align='justify' valign='top'>Are color jets staggered?</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_ESCK</code></td> |
| <td align='justify' valign='top'>Use print mode command?</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_EXT_UNITS</code></td> |
| <td align='justify' valign='top'>Use extended unit commands?</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_EXT_MARGINS</code></td> |
| <td align='justify' valign='top'>Use extended margin command?</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_USB</code></td> |
| <td align='justify' valign='top'>Send USB packet mode escape</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_PAGE_SIZE</code></td> |
| <td align='justify' valign='top'>Use page size command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_RASTER_ESCI</code></td> |
| <td align='justify' valign='top'>Use <code>ESC i</code> graphics command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE</code></td> |
| <td align='justify' valign='top'>Use remote mode commands</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_AC</code></td> |
| <td align='justify' valign='top'>Use auto-cutter command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_CO</code></td> |
| <td align='justify' valign='top'>Use cutter-operation command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_EX</code></td> |
| <td align='justify' valign='top'>Use media-position command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_MS</code></td> |
| <td align='justify' valign='top'>Use media-size command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_MT</code></td> |
| <td align='justify' valign='top'>Use media-type command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_PC</code></td> |
| <td align='justify' valign='top'>Use paper-check command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_PH</code></td> |
| <td align='justify' valign='top'>Use paper-thickness command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_PP</code></td> |
| <td align='justify' valign='top'>Use paper-path command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_SN0</code></td> |
| <td align='justify' valign='top'>Use feed-sequence-0 command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_SN1</code></td> |
| <td align='justify' valign='top'>Use platten-gap command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_SN2</code></td> |
| <td align='justify' valign='top'>Use feed-sequence-2 command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_SN6</code></td> |
| <td align='justify' valign='top'>Use eject-delay command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>ESCP_REMOTE_FP</code></td> |
| <td align='justify' valign='top'>Use print-position command</td> |
| </tr> |
| </table></center> |
| |
| <h3><a name='REF_MODEL_PCL'>The DDK HP-PCL Driver (pcl)</a></h3> |
| |
| <p>The <code>pcl</code> driver supports all HP LaserJet, DeskJet, |
| and DesignJet printers. <a href='#TABLEB-5'>Table B-5</a> lists |
| the constants for the <a |
| href='#ModelNumber'><code>ModelNumber</code></a> directive. |
| <code>ModelNumber</code> values should be specified as the bitwise |
| OR of one or more of these constants.</p> |
| |
| <center><table border='1' cellpadding='5' cellspacing='0' width='80%'> |
| <caption align='bottom'><a name='TABLEB-5'><i>Table B-5, <code>pcl</code> driver |
| constants</i></a></caption> |
| <tr bgcolor='#cccccc'> |
| <th>Constant</th> |
| <th>Description</th> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_PAPER_SIZE</code></td> |
| <td align='justify' valign='top'>Use paper size command (<code>ESC & l # A</code>)</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_INKJET</code></td> |
| <td align='justify' valign='top'>Use inkjet commands</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_RASTER_END_COLOR</code></td> |
| <td align='justify' valign='top'>Use new end-raster command (<code>ESC * r C</code>)</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_RASTER_CID</code></td> |
| <td align='justify' valign='top'>Use configure-image-data command (<code>ESC * v # W</code>)</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_RASTER_CRD</code></td> |
| <td align='justify' valign='top'>Use configure-raster-data command (<code>ESC * g # W</code>)</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_RASTER_SIMPLE</code></td> |
| <td align='justify' valign='top'>Use simple-raster-color command (<code>ESC * r # U</code>)</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_RASTER_RGB24</code></td> |
| <td align='justify' valign='top'>Use 24-bit RGB mode</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_PJL</code></td> |
| <td align='justify' valign='top'>Use PJL commands</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_PJL_PAPERWIDTH</code></td> |
| <td align='justify' valign='top'>Use PJL PAPERWIDTH/LENGTH commands</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_PJL_HPGL2</code></td> |
| <td align='justify' valign='top'>Use PJL ENTER HPGL2 command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_PJL_PCL3GUI</code></td> |
| <td align='justify' valign='top'>Use PJL ENTER PCL3GUI command</td> |
| </tr> |
| <tr> |
| <td valign='top'><code>PCL_PJL_RESOLUTION</code></td> |
| <td align='justify' valign='top'>Use PJL SET RESOLUTION command</td> |
| </tr> |
| </table></center> |
| |
| <H2><A NAME="REF_COLOR">Color Keywords</A></H2> |
| |
| <p>The PPD compiler defines two types of color keywords: |
| colorspace and color order. The following sections list the |
| supported keywords for each type.</p> |
| |
| <H3><A NAME="REF_COLOR_SPACE">Colorspace Keywords</A></H3> |
| |
| <P>The following colorspace keywords are recognized:</P> |
| |
| <UL> |
| |
| <LI><TT>cielab</TT> - CIE Lab <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>ciexyz</TT> - CIE XYZ <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>cmy</TT> - Cyan, magenta, yellow</LI> |
| |
| <LI><TT>cmyk</TT> - Cyan, magenta, yellow, black</LI> |
| |
| <LI><TT>gmck</TT> - Gold, magenta, yellow, black <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>gmcs</TT> - Gold, magenta, yellow, silver <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>gold</TT> - Gold foil <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icc1</TT> - ICC-based, 1 color <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icc2</TT> - ICC-based, 2 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icc3</TT> - ICC-based, 3 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icc4</TT> - ICC-based, 4 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icc5</TT> - ICC-based, 5 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icc6</TT> - ICC-based, 6 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icc7</TT> - ICC-based, 7 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icc8</TT> - ICC-based, 8 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icc9</TT> - ICC-based, 9 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icca</TT> - ICC-based, 10 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>iccb</TT> - ICC-based, 11 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>iccc</TT> - ICC-based, 12 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>iccd</TT> - ICC-based, 13 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>icce</TT> - ICC-based, 14 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>iccf</TT> - ICC-based, 15 colors <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>k</TT> - Black</LI> |
| |
| <LI><TT>kcmy</TT> - Black, cyan, magenta, yellow <A HREF="#REF_COLOR_APPLE">*</A></LI> |
| |
| <LI><TT>kcmycm</TT> - Black, cyan, magenta, yellow, light-cyan, light-magenta <A HREF="#REF_COLOR_APPLE">*</A></LI> |
| |
| <LI><TT>rgb</TT> - Red, green, blue</LI> |
| |
| <LI><TT>rgba</TT> - Red, green, blue, alpha</LI> |
| |
| <LI><TT>rgbw</TT> - Red, green, blue, luminance <A HREF="#REF_COLOR_APPLE">*</A></LI> |
| |
| <LI><TT>silver</TT> - Silver foil <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>w</TT> - Luminance</LI> |
| |
| <LI><TT>white</TT> - White ink (as black) <A HREF="#REF_COLOR_APPLE2">**</A></LI> |
| |
| <LI><TT>ymc</TT> - Yellow, magenta, cyan <A HREF="#REF_COLOR_APPLE">*</A></LI> |
| |
| <LI><TT>ymck</TT> - Yellow, magenta, cyan, black <A HREF="#REF_COLOR_APPLE">*</A> |
| |
| <BR> |
| |
| <BR><A NAME="REF_COLOR_APPLE">*</A> = This colorspace is not supported on macOS prior to 10.4. |
| <BR><A NAME="REF_COLOR_APPLE2">**</A> = This colorspace is not supported on macOS.</LI> |
| |
| </UL> |
| |
| <H3><A NAME="REF_COLOR_ORDER">Color Order Keywords</A></H3> |
| |
| <P>The following color order keywords are recognized:</P> |
| |
| <UL> |
| |
| <LI><TT>chunked</TT> or <TT>chunky</TT> - Color values |
| are passed together on a line as RGB RGB RGB RGB</LI> |
| |
| <LI><TT>banded</TT> - Color values are passed separately |
| on a line as RRRR GGGG BBBB <A |
| HREF="#REF_COLOR_APPLE2">*</A></LI> |
| |
| <LI><TT>planar</TT> - Color values are passed separately |
| on a page as RRRR RRRR RRRR ... GGGG GGGG GGGG ... BBBB |
| BBBB BBBB <A HREF="#REF_COLOR_APPLE2">*</A> |
| |
| <BR> |
| |
| <BR><A NAME="REF_COLOR_APPLE2">*</A> = This color order |
| is not supported by the current Apple RIP filters and |
| should not be used when developing printer drivers for |
| macOS.</LI> |
| |
| </UL> |
| |
| </BODY> |
| </HTML> |