2 <!-- SECTION: References -->
4 <TITLE>PPD Compiler Driver Information File Reference
</TITLE>
5 <LINK REL=
"STYLESHEET" TYPE=
"text/css" HREF=
"../cups-printable.css">
9 <H1 CLASS=
"title">PPD Compiler Driver Information File Reference
</H1>
11 <p>The CUPS PPD compiler reads meta files that contain descriptions
12 of one or more PPD files to be generated by
13 <a href=
"man-ppdc.html">ppdc(
1)
</a> or the corresponding driver interface
14 program
<a href=
"man-drv.html">drv(
1)
</a>. The source file format is plain
15 ASCII text that can be edited using your favorite text editor.
</p>
17 <p>Directives may be placed anywhere on a line and are followed by
18 zero or more values.
</p>
20 <p>Comments are supported using the C (/* ... */) and C++ (// ...) comment
23 <p>Directives that accept expressions look for sequences of the form:
</p>
28 <dd>Evaluates to
1 if NAME is defined, otherwise
0.
</dd>
32 <dd>Evaluates to the specified integer; the number can be preceded by
33 a leading sign (+/-) followed by a decimal number (
1234), octal number
34 (
01234), or hexadecimal number (
0x1234) using the same rules as C and
37 <dt>(NAME NAME ... number number ...)
</dt>
38 <dd>Evaluates to the bitwise OR of each named #define constant or
41 <dt>(NAME == OTHERNAME)
</dt>
42 <dt>(NAME == number)
</dt>
43 <dd>Evaluates to
1 if NAME is equal to the other named constant or
44 number, otherwise
0.
</dd>
46 <dt>(NAME != OTHERNAME)
</dt>
47 <dt>(NAME != number)
</dt>
48 <dd>Evaluates to
1 if NAME is not equal to the other named constant or
49 number, otherwise
0.
</dd>
51 <dt>(NAME
< OTHERNAME)
</dt>
52 <dt>(NAME
< number)
</dt>
53 <dd>Evaluates to
1 if NAME is less than to the other named constant or
54 number, otherwise
0.
</dd>
56 <dt>(NAME
<= OTHERNAME)
</dt>
57 <dt>(NAME
<= number)
</dt>
58 <dd>Evaluates to
1 if NAME is less than or equal to the other named
59 constant or number, otherwise
0.
</dd>
61 <dt>(NAME
> OTHERNAME)
</dt>
62 <dt>(NAME
> number)
</dt>
63 <dd>Evaluates to
1 if NAME is greater than to the other named constant
64 or number, otherwise
0.
</dd>
66 <dt>(NAME
>= OTHERNAME)
</dt>
67 <dt>(NAME
>= number)
</dt>
68 <dd>Evaluates to
1 if NAME is greater than or equal to the other named
69 constant or number, otherwise
0.
</dd>
73 <p>Printer driver information can be grouped and shared using
74 curly braces ({ ... }); PPD files are written when a close
75 brace or end-of-file is seen and a
<a href=
"#PCFileName">PCFileName
</a>
76 directive has been defined.
</p>
79 <h2 class=
"title"><a name='_define'
>#define
</a></h2>
84 #define
<i>name expression
</i>
91 #define BAR
"Bar, Inc."
96 <p>The
<code>#define
</code> directive assigns a value to a name
97 which can be later referenced using
<code>$name
</code>. The name is
98 case-insensitive and can be any sequence of letters, numbers,
99 and the underscore. The value can be any valid expression.
</p>
101 <h3>Predefined Names
</h3>
103 <p>The following
<code>#define
</code> names are set by the PPD compiler:
</p>
107 <li><code>CUPS_VERSION
</code> - The full CUPS version string, e.g.
110 <li><code>CUPS_VERSION_MAJOR
</code> - The major version number, e.g.
113 <li><code>CUPS_VERSION_MINOR
</code> - The minor version number, e.g.
116 <li><code>CUPS_VERSION_PATCH
</code> - The patch version number, e.g.
119 <li><code>PLATFORM_NAME
</code> - The operating system name used by the
120 current system as reported by
"uname" (
"Windows" on Microsoft
123 <li><code>PLATFORM_ARCH
</code> - The processor architecture used by the
124 current system as reported by
"uname -m" (
"X86" or
"X64" on Microsoft
131 <p><a href='#_include'
><code>#include
</code></a></p>
134 <h2 class=
"title"><a name='_elif'
>#elif
</a></h2>
139 #elif
<i>expression
</i>
147 #elif (HAVE_BAR
>=
999)
156 <p>The
<code>#elif
</code> directive allows portions of a driver information file
157 to be used conditionally.
<code>#elif
</code> directives must appear after a
158 corresponding
<a href=
"#_if"><code>#if
</code></a> directive.
</p>
162 <p><a href='#_else'
><code>#else
</code></a>,
163 <a href='#_endif'
><code>#endif
</code></a>,
164 <a href='#_if'
><code>#if
</code></a></p>
167 <h2 class=
"title"><a name='_else'
>#else
</a></h2>
180 #elif (HAVE_BAR
>=
999)
189 <p>The
<code>#else
</code> directive allows portions of a driver information file
190 to be used conditionally when the corresponding
191 <a href=
"#_if"><code>#if
</code></a> and
<a href=
"#_elif"><code>#elif
</code></a>
192 expressions are non-zero.
</p>
196 <p><a href='#_elif'
><code>#elif
</code></a>,
197 <a href='#_endif'
><code>#endif
</code></a>,
198 <a href='#_if'
><code>#if
</code></a></p>
201 <h2 class=
"title"><a name='_endif'
>#endif
</a></h2>
214 #elif (HAVE_BAR
>=
999)
223 <p>The
<code>#endif
</code> directive ends a conditional block of a driver
224 information file. It must appear after all of the
225 <a href=
"#_if"><code>#if
</code></a>,
<a href=
"#_elif"><code>#elif
</code></a>,
226 and
<a href=
"#_else"><code>#else
</code></a> directives for the current
227 conditional block.
</p>
231 <p><a href='#_elif'
><code>#elif
</code></a>,
232 <a href='#_else'
><code>#else
</code></a>,
233 <a href='#_if'
><code>#if
</code></a></p>
236 <h2 class=
"title"><a name='_font'
>#font
</a></h2>
241 #font
<i>name encoding
"version" charset status
</i>
247 #font Courier Standard
"(1.05)" Standard ROM
248 #font Symbol Special
"(001.005)" Special ROM
249 #font Barcode-Foo Special
"(1.0)" Special Disk
250 #font Unicode-Foo Expert
"(2.0)" Adobe-Identity ROM
255 <p>The
<code>#font
</code> directive defines a
"base font" for all
256 printer drivers. The name is the PostScript font name.
</p>
258 <p>The encoding is the default encoding of the font, usually
259 <code>Standard
</code>,
<code>Expert
</code>, or
<code>Special
</code>, as
260 defined in the Adobe PPD file specification.
</p>
262 <p>The version is the PostScript string definition that
263 corresponds to the font version number.
</p>
265 <p>The charset defines the available characters in the font,
266 usually
<code>Standard
</code> or
<code>Special
</code>, as defined in the
267 Adobe PPD file specification.
</p>
269 <p>The status is the installation status of the font and must be
270 either the word
<code>ROM
</code> or
<code>Disk
</code>.
272 <p>Base fonts differ from fonts defined using the
<a
273 href='#Font'
><code>Font
</code></a> directive in that they are not
274 automatically associated with all drivers - you must use the
275 special
<code>Font *
</code> directive to include them in a
278 <p>Currently the
<code>#font
</code> directive is used mainly for
279 defining the standard raster fonts in the
280 <code><font.defs
></code> include file.
</p>
284 <p><a href='#_include'
><code>#include
</code></a>,
285 <a href='#Font'
><code>Font
</code></a></p>
288 <h2 class=
"title"><a name='_if'
>#if
</a></h2>
293 #if
<i>name or expression
</i>
301 #elif (HAVE_BAR
>=
999)
310 <p>The
<code>#if
</code> directive allows portions of a driver information file
311 to be used conditionally. When followed by a name, the data that follows is
312 used only when the name is defined, otherwise the data is ignored.
313 <code>#if
</code> directives can be nested up to
100 times.
</p>
317 <p><a href='#_elif'
><code>#elif
</code></a>,
318 <a href='#_else'
><code>#else
</code></a>,
319 <a href='#_endif'
><code>#endif
</code></a></p>
322 <h2 class=
"title"><a name='_include'
>#include
</a></h2>
327 #include
<<i>filename
</i>>
328 #include
"<i>filename</i>"
334 #include
<font.defs
>
340 <p>The
<code>#include
</code> directive reads the named driver
341 information file. If the filename is included inside angle
342 brackets (
<code><filename
></code>), then the PPD compiler will
343 look for the file in all of the include directories it knows
344 about. Otherwise, the file is opened in the current directory
345 relative to the current driver information file, and if that
346 fails then it looks in the include directories for the file.
</p>
348 <p>The
<code>#include
</code> directive can be nested to as many
349 files as are allowed by the host operating system, typically at
354 <p><a href='#_define'
><code>#define
</code></a>,
355 <a href='#_font'
><code>#font
</code></a>,
356 <a href='#_media'
><code>#media
</code></a></p>
359 <h2 class=
"title"><a name='_media'
>#media
</a></h2>
364 #media
<i>name width length
</i>
365 #media
<i>"name/text" width length
</i>
371 #media
"Letter/Letter - 8.5x11in" 8.5in
11in
372 #media
"A4/A4 - 210x297mm" 210mm
297mm
373 #media
"w936h1368/Super B/A3 - 13x19in" 936 1368
379 <p>The
<code>#media
</code> directive defines a named media size for
380 inclusion in a driver. The name with optional user text defines
381 the name for the media size and is used with the
<a
382 href='#MediaSize'
><code>MediaSize
</code></a> directive to associate
383 the media size with the driver. The name may contain up to
40 ASCII
384 characters within the range of decimal
33 to decimal
126 inclusive,
385 except for the characters comma (
44), slash (
47) and colon (
58).
386 The user text, if supplied, may not exceed
80 bytes in length.
</p>
388 <p>The width and length define the dimensions of the media. Each
389 number is optionally followed by one of the following unit
394 <li><code>cm
</code> - centimeters
</li>
396 <li><code>ft
</code> - feet
</li>
398 <li><code>in
</code> - inches
</li>
400 <li><code>m
</code> - meters
</li>
402 <li><code>mm
</code> - millimeters
</li>
404 <li><code>pt
</code> - points (
72 points =
1 inch)
</li>
408 <p>Points are assumed if no units are specified.
412 <p><a href='#_include'
><code>#include
</code></a>,
413 <a href='#CustomMedia'
><code>CustomMedia
</code></a>,
414 <a href='#MediaSize'
><code>MediaSize
</code></a></p>
417 <h2 class=
"title"><a name='_po'
>#po
</a></h2>
422 #po
<i>locale filename
</i>
429 #po fr_CA
"mydriver-fr_CA.po"
434 <p>The
<code>#po
</code> directive defines a message catalog to use for the
435 given POSIX language abbreviation. Multiple
<code>#po
</code> directives can be
436 specified to list multiple catalogs. The filename can be an absolute path or
437 relative to the driver information file. GNU gettext and macOS .strings
438 files are supported.
</p>
441 <h2 class=
"title"><a name='Attribute'
>Attribute
</a></h2>
446 Attribute
<i>name
"" value
</i>
447 Attribute
<i>name keyword value
</i>
448 Attribute
<i>name
"keyword/text" value
</i>
454 Attribute cupsInkChannels
"" 1
455 Attribute cupsAllDither
600dpi
"1.0"
456 Attribute fooProfile
"Photo/Photographic Profile" "photopro.icc"
461 <p>The
<code>Attribute
</code> directive creates a PPD attribute. The
462 name may contain up to
40 ASCII characters within the range of decimal
463 33 to decimal
126 inclusive, except for the characters comma (
44),
464 slash (
47) and colon (
58).
</p>
466 <p>The selector can be the empty string (
<code>""</code>) or text of up
469 <p>The value is any string or number; the string may contain multiple
470 lines, however no one line may exceed
255 bytes.
</p>
474 <p><a href=
"#LocAttribute"><code>LocAttribute
</code></a></p>
477 <h2 class=
"title"><a name='Choice'
>Choice
</a></h2>
482 Choice
<i>name
"code"</i>
483 Choice
<i>"name/text" "code"</i>
489 Choice None
"<</MediaType (None)>>setpagedevice"
490 Choice
"False/No" "<</cupsCompression 0>>setpagedevice"
495 <p>The
<code>Choice
</code> directive adds a single choice to the
496 current option. The name may contain up to
40 ASCII characters within
497 the range of decimal
33 to decimal
126 inclusive, except for the
498 characters comma (
44), slash (
47) and colon (
58).
</p>
500 <p>If provided, the text can be any string up to
80 bytes
501 in length. If no text is provided, the name is used.
</p>
503 <p>The code is any string and may contain multiple lines,
504 however no one line may exceed
255 bytes.
</p>
508 <p><a href='#ColorModel'
><code>ColorModel
</code></a>,
509 <a href='#Cutter'
><code>Cutter
</code></a>,
510 <a href='#Darkness'
><code>Darkness
</code></a>,
511 <a href='#Duplex'
><code>Duplex
</code></a>,
512 <a href='#Finishing'
><code>Finishing
</code></a>,
513 <a href='#Group'
><code>Group
</code></a>,
514 <a href='#InputSlot'
><code>InputSlot
</code></a>,
515 <a href='#Installable'
><code>Installable
</code></a>,
516 <a href='#MediaType'
><code>MediaType
</code></a>,
517 <a href='#Option'
><code>Option
</code></a>,
518 <a href='#Resolution'
><code>Resolution
</code></a>,
519 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
522 <h2 class=
"title"><a name='ColorDevice'
>ColorDevice
</a></h2>
527 ColorDevice
<i>boolean-value
</i>
539 <p>The
<code>ColorDevice
</code> directive tells the application if
540 the printer supports color. It is typically used in conjunction
541 with the
<a href='#ColorModel'
><code>ColorModel
</code></a> directive
542 to provide color printing support.
</p>
546 <p><a href='#ColorModel'
><code>ColorModel
</code></a></p>
549 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='ColorModel'
>ColorModel
</a></h2>
554 ColorModel
<i>name colorspace colororder compression
</i>
555 ColorModel
<i>"name/text" colorspace colororder compression
</i>
561 ColorModel Gray/Grayscale w chunky
0
562 ColorModel RGB/Color rgb chunky
0
563 ColorModel CMYK cmyk chunky
0
568 <p>The
<code>ColorModel
</code> directive is a convenience directive
569 which creates a ColorModel option and choice for the current
570 printer driver. The name may contain up to
40 ASCII characters within
571 the range of decimal
33 to decimal
126 inclusive, except for the
572 characters comma (
44), slash (
47) and colon (
58).
</p>
574 <p>If provided, the text can be any string up to
80 bytes in length.
575 If no text is provided, the name is used.
</p>
577 <p>The colorspace argument is one of the standard colorspace
578 keywords defined later in this appendix in the section titled,
579 "<a href='#REF_COLOR_SPACE'>Colorspace Keywords</a>".
</p>
581 <P>The colororder argument is one of the standard color order
582 keywords defined later in this appendix in the section titled,
583 "<a href='#REF_COLOR_ORDER'>Color Order Keywords</a>".
</p>
585 <p>The compression argument is any number and is assigned to the
586 <code>cupsCompression
</code> attribute in the PostScript page device
591 <p><a href='#Choice'
><code>Choice
</code></a>,
592 <a href='#ColorDevice'
><code>ColorDevice
</code></a>,
593 <a href='#Cutter'
><code>Cutter
</code></a>,
594 <a href='#Darkness'
><code>Darkness
</code></a>,
595 <a href='#Duplex'
><code>Duplex
</code></a>,
596 <a href='#Finishing'
><code>Finishing
</code></a>,
597 <a href='#Group'
><code>Group
</code></a>,
598 <a href='#InputSlot'
><code>InputSlot
</code></a>,
599 <a href='#Installable'
><code>Installable
</code></a>,
600 <a href='#MediaType'
><code>MediaType
</code></a>,
601 <a href='#Option'
><code>Option
</code></a>,
602 <a href='#Resolution'
><code>Resolution
</code></a>,
603 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
606 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='ColorProfile'
>ColorProfile
</a></h2>
611 ColorProfile
<i>resolution/mediatype gamma density matrix
</i>
617 ColorProfile -/-
1.7 1.0
622 ColorProfile
360dpi/-
1.6 1.0
627 ColorProfile
720dpi/Special
1.5 1.0
635 <p>The
<code>ColorProfile
</code> directive defines a CMY
636 transform-based color profile. The resolution and mediatype
637 arguments specify the
<code>Resolution
</code> and
<code>MediaType
</code>
638 choices which use the profile; the hyphen (
<code>-
</code>) is used to
639 specify that any resolution or mediatype can be used with the
642 <p>The gamma argument specifies the gamma correction to apply to
643 the color values (P = p
<sup>g
</sup>) and is a real number
644 greater than
0. Values larger than
1 cause a general lightening
645 of the print while values smaller than
1 cause a general
646 darkening of the print. A value of
1 disables gamma
649 <p>The density argument specifies the linear density correction
650 to apply to the color values (P = d * p
<sup>g
</sup>) and is a
651 real number greater than
0 and less than or equal to
1. A value
652 1 of disables density correction while lower values produce
653 proportionately lighter output.
</p>
655 <p>The matrix argument specifies a
3x3 linear transformation
656 matrix in row-major order. The matrix is applied only to the CMY
657 component of a RGB to CMYK transformation and is not used when
658 printing in grayscale or CMYK mode unless the printer only
659 supports printing with
3 colors.
</p>
663 <p><a href='#SimpleColorProfile'
><code>SimpleColorProfile
</code></a></p>
666 <h2 class=
"title"><a name='Copyright'
>Copyright
</a></h2>
671 Copyright
<i>"text"</i>
677 Copyright
"Copyright 2008 by Foo Enterprises"
680 "This software is free software; you can redistribute it and/or
681 modify it under the terms of the GNU General Public License as
682 published by the Free Software Foundation; either version 2 of
683 the License, or (at your option) any later version.
685 This software is distributed in the hope that it will be useful,
686 but WITHOUT ANY WARRANTY; without even the implied warranty of
687 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
688 GNU General Public License for more details.
690 You should have received a copy of the GNU General Public
691 License along with this software; if not, write to the Free
692 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
698 <p>The
<code>Copyright
</code> directive adds text comments to the
699 top of a PPD file, typically for use in copyright notices. The
700 text argument can contain multiple lines of text, but no line
701 may exceed
255 bytes.
</p>
704 <h2 class=
"title"><a name='CustomMedia'
>CustomMedia
</a></h2>
709 CustomMedia
<i>name width length left bottom right top
710 "size-code" "region-code"</i>
712 CustomMedia
<i>"name/text" width length left bottom right top
713 "size-code" "region-code"</i>
719 CustomMedia Letter
8.5in
11in
0.25in
0.46in
0.25in
0.04in
720 "<</PageSize[612 792]/ImagingBBox null/ManualFeed false>>
722 "<</PageSize[612 792]/ImagingBBox null/ManualFeed true>>
725 CustomMedia
"A4/A4 - 210x297mm" 210mm
297mm
12 12 12 12
726 "<</PageSize[595 842]/ImagingBBox null>>setpagedevice"
727 "<</PageSize[595 842]/ImagingBBox null>>setpagedevice"
732 <p>The
<code>CustomMedia
</code> directive adds a custom media size to
733 the driver. The name may contain up to
40 ASCII characters within the
734 range of decimal
33 to decimal
126 inclusive, except for the characters
735 comma (
44), slash (
47) and colon (
58).
</p>
737 <p>If provided, the text can be any string up to
80 bytes in length.
738 If no text is provided, the name is used.
</p>
740 <p>The width and length arguments specify the dimensions of the
741 media as defined for the
<a href=
"#_media"><code>#media
</code></a>
744 <p>The left, bottom, right, and top arguments specify the
745 printable margins of the media.
</p>
747 <p>The size-code and region-code arguments specify the
748 PostScript commands to run for the
<code>PageSize
</code> and
749 <code>PageRegion
</code> options, respectively. The commands can
750 contain multiple lines, however no line may be more than
255
755 <p><a href='#_media'
><code>#media
</code></a>,
756 <a href='#MediaSize'
><code>MediaSize
</code></a></p>
759 <h2 class=
"title"><a name='Cutter'
>Cutter
</a></h2>
764 Cutter
<i>boolean-value
</i>
776 <p>The
<code>Cutter
</code> directive specifies whether the printer
777 has a built-in media cutter. When a cutter is present, the
778 printer's PPD file will contain a
<code>CutMedia
</code> option that
779 allows the user to control whether the media is cut at the end
784 <p><a href='#Choice'
><code>Choice
</code></a>,
785 <a href='#ColorModel'
><code>ColorModel
</code></a>,
786 <a href='#Darkness'
><code>Darkness
</code></a>,
787 <a href='#Duplex'
><code>Duplex
</code></a>,
788 <a href='#Finishing'
><code>Finishing
</code></a>,
789 <a href='#Group'
><code>Group
</code></a>,
790 <a href='#InputSlot'
><code>InputSlot
</code></a>,
791 <a href='#Installable'
><code>Installable
</code></a>,
792 <a href='#MediaType'
><code>MediaType
</code></a>,
793 <a href='#Option'
><code>Option
</code></a>,
794 <a href='#Resolution'
><code>Resolution
</code></a>,
795 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
798 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='Darkness'
>Darkness
</a></h2>
803 Darkness
<i>temperature name
</i>
804 Darkness
<i>temperature
"name/text"</i>
811 Darkness
2 "Normal/Standard"
816 <p>The
<code>Darkness
</code> directive defines a choice for the
817 <code>cupsDarkness
</code> option which sets the
818 <code>cupsCompression
</code> attribute in the PostScript page device
819 dictionary. It is used with the CUPS
<VAR>rastertolabel
</VAR>
820 sample driver to control the print head temperature and
821 therefore the darkness of the print.
</p>
823 <p>The temperature argument specifies a temperature value for
824 the Dymo driver from
0 (lowest) to
3 (highest), with
2
825 representing the normal setting.
</p>
827 <p>The name may contain up to
40 ASCII characters within the range of
828 decimal
33 to decimal
126 inclusive, except for the characters comma
829 (
44), slash (
47) and colon (
58).
</p>
831 <p>If provided, the text can be any string up to
80 bytes in length.
832 If no text is provided, the name is used.
</p>
836 <p><a href='#Choice'
><code>Choice
</code></a>,
837 <a href='#ColorModel'
><code>ColorModel
</code></a>,
838 <a href='#Cutter'
><code>Cutter
</code></a>,
839 <a href='#Duplex'
><code>Duplex
</code></a>,
840 <a href='#Finishing'
><code>Finishing
</code></a>,
841 <a href='#Group'
><code>Group
</code></a>,
842 <a href='#InputSlot'
><code>InputSlot
</code></a>,
843 <a href='#Installable'
><code>Installable
</code></a>,
844 <a href='#MediaType'
><code>MediaType
</code></a>,
845 <a href='#Option'
><code>Option
</code></a>,
846 <a href='#Resolution'
><code>Resolution
</code></a>,
847 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
850 <h2 class=
"title"><a name='DriverType'
>DriverType
</a></h2>
855 DriverType
<i>type
</i>
869 <p>The
<code>DriverType
</code> directive tells the PPD compiler
870 which DDK filters to include in the PPD file. The following
871 types are supported:
</p>
875 <li><code>custom
</code> - Use only those filters that are
876 defined in the driver information file
</li>
878 <li><code>epson
</code> - Use the CUPS sample Epson driver filter
879 <var>rastertoepson
</var></li>
881 <li><code>escp
</code> - Use the ESC/P DDK driver filters
882 <var>commandtoescpx
</var> and
883 <var>rastertoescpx
</var></li>
885 <li><code>hp
</code> - Use the CUPS sample HP driver filter
886 <var>rastertohp
</var></li>
888 <li><code>label
</code> - Use the CUPS sample label driver filter
<var>rastertolabel
</var></li>
890 <li><code>pcl
</code> - Use the HP-PCL DDK driver filters
891 <var>commandtopclx
</var> and
892 <var>rastertopclx
</var></li>
894 <li><code>ps
</code> - Use no filters; this driver is for a
895 standard PostScript device
</li>
901 <p><a href='#Filter'
><code>Filter
</code></a>,
902 <a href='#ModelNumber'
><code>ModelNumber
</code></a></p>
905 <h2 class=
"title"><a name='Duplex'
>Duplex
</a></h2>
925 <p>The
<code>Duplex
</code> directive determines whether double-sided printing
926 is supported in the current driver. The type argument specifies the type
927 of duplexing that is supported:
</p>
931 <li><code>none
</code> - double-sided printing is not
934 <li><code>normal
</code> - double-sided printing is
937 <li><code>flip
</code> - double-sided printing is supported,
938 but the back side image needs to be flipped vertically
939 (used primarily with inkjet printers)
</li>
941 <li><code>rotated
</code> - double-sided printing is supported,
942 but the back side image needs to be rotated
180 degrees for
945 <li><code>manualtumble
</code> - double-sided printing is supported,
946 but the back side image needs to be rotated
180 degrees for
953 <p><a href='#Choice'
><code>Choice
</code></a>,
954 <a href='#ColorModel'
><code>ColorModel
</code></a>,
955 <a href='#Cutter'
><code>Cutter
</code></a>,
956 <a href='#Darkness'
><code>Darkness
</code></a>,
957 <a href='#Finishing'
><code>Finishing
</code></a>,
958 <a href='#Group'
><code>Group
</code></a>,
959 <a href='#InputSlot'
><code>InputSlot
</code></a>,
960 <a href='#Installable'
><code>Installable
</code></a>,
961 <a href='#MediaType'
><code>MediaType
</code></a>,
962 <a href='#Option'
><code>Option
</code></a>,
963 <a href='#Resolution'
><code>Resolution
</code></a>,
964 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
967 <h2 class=
"title"><a name='FileName'
>FileName
</a></h2>
972 FileName
<i>"filename"</i>
978 FileName
"Acme Laser Printer 2000"
979 FileName
"Acme Ink Waster 1000"
984 <p>The
<code>FileName
</code> attribute specifies the
"long" name of the
985 PPD file for the current driver.
</p>
989 <p><a href='#Manufacturer'
><code>Manufacturer
</code></a>,
990 <a href='#ModelName'
><code>ModelName
</code></a>,
991 <a href=
"#PCFileName"><code>PCFileName
</code></a>,
992 <a href='#Version'
><code>Version
</code></a></p>
995 <h2 class=
"title"><a name='Filter'
>Filter
</a></h2>
1000 Filter
<i>mime-type cost program
</i>
1006 Filter application/vnd.cups-raster
50 rastertofoo
1007 Filter application/vnd.hp-HPGL
25 /usr/foo/filter/hpgltofoo
1010 <h3>Description
</h3>
1012 <p>The
<code>Filter
</code> directive adds a filter for the current
1013 driver. The mime-type argument is a valid MIME media type name
1014 as defined in a CUPS
<var>mime.types
</var> file.
</p>
1016 <p>The cost argument specifies the relative cost of the filter.
1017 In general, use a number representing the average percentage of
1018 CPU time that is used when printing the specified MIME media
1021 <p>The program argument specifies the program to run; if the
1022 program is not an absolute filename, then CUPS will look for the
1023 program in the CUPS filter directory.
</p>
1027 <p><a href='#DriverType'
><code>DriverType
</code></a></p>
1030 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='Finishing'
>Finishing
</a></h2>
1035 Finishing
<i>name
</i>
1036 Finishing
<i>"name/text"</i>
1043 Finishing
"Glossy/Photo Overcoat"
1046 <h3>Description
</h3>
1048 <p>The
<code>Finishing
</code> directive adds a choice to the
1049 <code>cupsFinishing
</code> option. The name may contain up to
40 ASCII
1050 characters within the range of decimal
33 to decimal
126 inclusive,
1051 except for the characters comma (
44), slash (
47) and colon (
58).
</p>
1053 <p>If provided, the text can be any string up to
80 bytes in length.
1054 If no text is provided, the name is used.
</p>
1056 <p>The name is stored in the
<code>OutputType
</code> attribute in the
1057 PostScript page device dictionary.
</p>
1061 <p><a href='#Choice'
><code>Choice
</code></a>,
1062 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1063 <a href='#Cutter'
><code>Cutter
</code></a>,
1064 <a href='#Darkness'
><code>Darkness
</code></a>,
1065 <a href='#Duplex'
><code>Duplex
</code></a>,
1066 <a href='#Group'
><code>Group
</code></a>,
1067 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1068 <a href='#Installable'
><code>Installable
</code></a>,
1069 <a href='#MediaType'
><code>MediaType
</code></a>,
1070 <a href='#Option'
><code>Option
</code></a>,
1071 <a href='#Resolution'
><code>Resolution
</code></a>,
1072 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1075 <h2 class=
"title"><a name='Font'
>Font
</a></h2>
1080 Font
<i>name encoding
"version" charset status
</i>
1088 Font Courier Standard
"(1.05)" Standard ROM
1089 Font Symbol Special
"(001.005)" Special ROM
1090 Font Barcode-Foo Special
"(1.0)" Special Disk
1091 Font Unicode-Foo Expert
"(2.0)" Adobe-Identity ROM
1094 <h3>Description
</h3>
1096 <p>The
<code>Font
</code> directive defines a
"device font" for the
1097 current printer driver. The name is the PostScript font name.
</p>
1099 <p>The encoding is the default encoding of the font, usually
1100 <code>Standard
</code>,
<code>Expert
</code>, or
<code>Special
</code>, as
1101 defined in the Adobe PPD file specification.
</p>
1103 <p>The version is the PostScript string definition that
1104 corresponds to the font version number.
</p>
1106 <p>The charset defines the available characters in the font,
1107 usually
<code>Standard
</code> or
<code>Special
</code>, as defined in the
1108 Adobe PPD file specification.
</p>
1110 <p>The status is the installation status of the font and must be
1111 either the word
<code>ROM
</code> or
<code>Disk
</code>.
</p>
1113 <p>Device fonts differ from fonts defined using the
<a
1114 href='#_font'
><code>#font
</code></a> directive in that they are
1115 automatically associated with the current driver. Fonts defined
1116 using
<code>#font
</code> may be imported into the current driver
1117 using the
<code>Font *
</code> form of this directive.
</p>
1121 <p><a href='#_font'
><code>#font
</code></a></p>
1124 <h2 class=
"title"><a name='Group'
>Group
</a></h2>
1130 Group
<i>"name/text"</i>
1137 Group
"InstallableOptions/Options Installed"
1138 Group
"Special/Vendor Options"
1141 <h3>Description
</h3>
1143 <p>The
<code>Group
</code> directive specifies the group for new
1144 <code>Option
</code> directives. The name may contain up to
40 ASCII
1145 characters within the range of decimal
33 to decimal
126 inclusive,
1146 except for the characters comma (
44), slash (
47) and colon (
58).
</p>
1148 <p>If provided, the text can be any string up to
40 bytes in length.
1149 If no text is provided, the name is used.
</p>
1151 <p>The names
<code>General
</code> and
<code>InstallableOptions
</code>
1152 are predefined for the standard Adobe UI keywords and for installable
1153 options, respectively.
</p>
1155 <center><table width='
80%' border='
1' bgcolor='#cccccc' cellpadding='
5' cellspacing='
0'
>
1157 <td align='justify'
><b>Note:
</b>
1159 <p>Because of certain API binary compatibility issues,
1160 CUPS limits the length of PPD group translation strings
1161 (text) to
40 bytes, while the PPD specification
1162 allows for up to
80 bytes.
</p>
1170 <p><a href='#Choice'
><code>Choice
</code></a>,
1171 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1172 <a href='#Cutter'
><code>Cutter
</code></a>,
1173 <a href='#Darkness'
><code>Darkness
</code></a>,
1174 <a href='#Duplex'
><code>Duplex
</code></a>,
1175 <a href='#Finishing'
><code>Finishing
</code></a>,
1176 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1177 <a href='#Installable'
><code>Installable
</code></a>,
1178 <a href='#MediaType'
><code>MediaType
</code></a>,
1179 <a href='#Option'
><code>Option
</code></a>,
1180 <a href='#Resolution'
><code>Resolution
</code></a>,
1181 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1184 <h2 class=
"title"><a name='HWMargins'
>HWMargins
</a></h2>
1189 HWMargins
<i>left bottom right top
</i>
1195 HWMargins
18 36 18 36
1196 HWMargins
0.25in
0.5in
0.25in
0.5in
1197 HWMargins
0.6cm
1.2cm
0.6cm
1.2cm
1200 <h3>Description
</h3>
1202 <p>The
<code>HWMargins
</code> directive specifies the current
1203 margins for
<a href='#MediaSize'
><code>MediaSize
</code></a> that
1204 follow. The left, bottom, right, and top margin values specify
1205 the printable margins.
</p>
1209 <p><a href='#MediaSize'
><code>MediaSize
</code></a></p>
1212 <h2 class=
"title"><a name='InputSlot'
>InputSlot
</a></h2>
1217 InputSlot
<i>position name
</i>
1218 InputSlot
<i>position
"name/text"</i>
1225 InputSlot
1 "Upper/Tray 1"
1228 <h3>Description
</h3>
1230 <p>The
<code>InputSlot
</code> directive adds a new choice to the
1231 <code>InputSlot
</code> option. The position argument is a number
1232 from
0 to
2<sup>32</sup>-
1 specifying the value that is placed
1233 in the
<code>MediaPosition
</code> attribute in the PostScript page
1234 device dictionary.
</p>
1236 <p>The name may contain up to
40 ASCII characters within the range of
1237 decimal
33 to decimal
126 inclusive, except for the characters comma
1238 (
44), slash (
47) and colon (
58).
</p>
1240 <p>If provided, the text can be any string up to
80 bytes in length.
1241 If no text is provided, the name is used.
</p>
1245 <p><a href='#Choice'
><code>Choice
</code></a>,
1246 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1247 <a href='#Cutter'
><code>Cutter
</code></a>,
1248 <a href='#Darkness'
><code>Darkness
</code></a>,
1249 <a href='#Duplex'
><code>Duplex
</code></a>,
1250 <a href='#Finishing'
><code>Finishing
</code></a>,
1251 <a href='#Group'
><code>Group
</code></a>,
1252 <a href='#Installable'
><code>Installable
</code></a>,
1253 <a href='#MediaType'
><code>MediaType
</code></a>,
1254 <a href='#Option'
><code>Option
</code></a>,
1255 <a href='#Resolution'
><code>Resolution
</code></a>,
1256 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1259 <h2 class=
"title"><a name='Installable'
>Installable
</a></h2>
1264 Installable
<i>name
</i>
1265 Installable
<i>"name/text"</i>
1272 Installable
"Option1/Duplexer Installed"
1275 <h3>Description
</h3>
1277 <p>The
<code>Installable
</code> directive adds a new boolean option
1278 to the
<code>InstallableOptions
</code> group with a default value of
1279 <code>False
</code>. The name may contain up to
40 ASCII characters
1280 within the range of decimal
33 to decimal
126 inclusive, except for
1281 the characters comma (
44), slash (
47) and colon (
58).
</p>
1283 <p>If provided, the text can be any string up to
80 bytes in length.
1284 If no text is provided, the name is used.
</p>
1287 <h2 class=
"title"><a name='LocAttribute'
>LocAttribute
</a></h2>
1292 LocAttribute
<i>name
"keyword/text" value
</i>
1298 LocAttribute fooProfile
"Photo/Photographic Profile" "photopro.icc"
1301 <h3>Description
</h3>
1303 <p>The
<code>LocAttribute
</code> directive creates a localized PPD
1304 attribute. The name may contain up to
40 ASCII characters within the
1305 range of decimal
33 to decimal
126 inclusive, except for the characters
1306 comma (
44), slash (
47) and colon (
58).
</p>
1308 <p>The selector can be the empty string (
<code>""</code>) or text of up
1311 <p>The value is any string or number; the string may contain multiple
1312 lines, however no one line may exceed
255 bytes.
</p>
1316 <p><a href=
"#Attribute"><code>Attribute
</code></a></p>
1319 <h2 class=
"title"><a name='ManualCopies'
>ManualCopies
</a></h2>
1324 ManualCopies
<i>boolean-value
</i>
1334 <h3>Description
</h3>
1336 <p>The
<code>ManualCopies
</code> directive specifies whether copies
1337 need to be produced by the RIP filters. The default is
1338 <code>no
</code>.
</p>
1342 <p><a href='#Choice'
><code>Choice
</code></a>,
1343 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1344 <a href='#Cutter'
><code>Cutter
</code></a>,
1345 <a href='#Darkness'
><code>Darkness
</code></a>,
1346 <a href='#Duplex'
><code>Duplex
</code></a>,
1347 <a href='#Finishing'
><code>Finishing
</code></a>,
1348 <a href='#Group'
><code>Group
</code></a>,
1349 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1350 <a href='#MediaType'
><code>MediaType
</code></a>,
1351 <a href='#Option'
><code>Option
</code></a>,
1352 <a href='#Resolution'
><code>Resolution
</code></a>,
1353 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1356 <h2 class=
"title"><a name='Manufacturer'
>Manufacturer
</a></h2>
1361 Manufacturer
<i>"name"</i>
1371 <h3>Description
</h3>
1373 <p>The
<code>Manufacturer
</code> directive specifies the
1374 manufacturer name for the current driver. The name argument must
1375 conform to the manufacturer name requirements in the Adobe PPD
1376 file specification.
</p>
1380 <p><a href=
"#FileName"><code>FileName
</code></a>,
1381 <a href='#ModelName'
><code>ModelName
</code></a>,
1382 <a href='#PCFileName'
><code>PCFileName
</code></a>,
1383 <a href='#Version'
><code>Version
</code></a></p>
1386 <h2 class=
"title"><a name='MaxSize'
>MaxSize
</a></h2>
1391 MaxSize
<i>width length
</i>
1401 <h3>Description
</h3>
1403 <p>The
<code>MaxSize
</code> directive specifies the maximum width
1404 and length that is supported for custom page sizes.
</p>
1408 <p><a href='#MinSize'
><code>MinSize
</code></a>,
1409 <a href='#VariablePaperSize'
><code>VariablePaperSize
</code></a></p>
1412 <h2 class=
"title"><a name='MediaSize'
>MediaSize
</a></h2>
1417 MediaSize
<i>name
</i>
1427 <h3>Description
</h3>
1429 <p>The
<code>MediaSize
</code> directive adds the named size to the
1430 current printer driver using the current margins defined with
1431 the
<a href=
"#HWMargins"><code>HWMargins
</code></a> directive. The
1432 name argument must match a media size defined using the
<a
1433 href=
"#_media"><code>#media
</code></a> directive.
</p>
1437 <p><a href='#_media'
><code>#media
</code></a>,
1438 <a href='#HWMargins'
><code>HWMargins
</code></a></p>
1441 <h2 class=
"title"><a name='MediaType'
>MediaType
</a></h2>
1446 MediaType
<i>type name
</i>
1447 MediaType
<i>type
"name/text"</i>
1454 MediaType
1 "Plain/Plain Paper"
1457 <h3>Description
</h3>
1459 <p>The
<code>MediaType
</code> directive adds a new choice to the
1460 <code>MediaType
</code> option. The type argument is a number
1461 from
0 to
2<sup>32</sup>-
1 specifying the value that is placed
1462 in the
<code>cupsMediaType
</code> attribute in the PostScript page
1463 device dictionary.
</p>
1465 <p>The name may contain up to
40 ASCII characters within the range of
1466 decimal
33 to decimal
126 inclusive, except for the characters comma
1467 (
44), slash (
47) and colon (
58).
</p>
1469 <p>If provided, the text can be any string up to
80 bytes in length.
1470 If no text is provided, the name is used.
</p>
1472 <p>The name is placed in the
<code>MediaType
</code> attribute in the
1473 PostScript page device dictionary.
</p>
1477 <p><a href='#Choice'
><code>Choice
</code></a>,
1478 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1479 <a href='#Cutter'
><code>Cutter
</code></a>,
1480 <a href='#Darkness'
><code>Darkness
</code></a>,
1481 <a href='#Duplex'
><code>Duplex
</code></a>,
1482 <a href='#Finishing'
><code>Finishing
</code></a>,
1483 <a href='#Group'
><code>Group
</code></a>,
1484 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1485 <a href='#Installable'
><code>Installable
</code></a>,
1486 <a href='#Option'
><code>Option
</code></a>,
1487 <a href='#Resolution'
><code>Resolution
</code></a>,
1488 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1491 <h2 class=
"title"><a name='MinSize'
>MinSize
</a></h2>
1496 MinSize
<i>width length
</i>
1506 <h3>Description
</h3>
1508 <p>The
<code>MinSize
</code> directive specifies the minimum width
1509 and length that is supported for custom page sizes.
</p>
1513 <p><a href='#MaxSize'
><code>MaxSize
</code></a>,
1514 <a href='#VariablePaperSize'
><code>VariablePaperSize
</code></a></p>
1517 <h2 class=
"title"><a name='ModelName'
>ModelName
</a></h2>
1522 ModelName
<i>"name"</i>
1528 ModelName
"Foo Laser Printer 2000"
1529 ModelName
"Colorific 123"
1532 <h3>Description
</h3>
1534 <p>The
<code>ModelName
</code> directive sets the printer name for
1535 the
<code>ModelName
</code>,
<code>NickName
</code>, and
1536 <code>ShortNickName
</code> attributes for the printer driver. The
1537 name is any string of letters, numbers, spaces, and the
1538 characters
".",
"/",
"-", and
"+" and should not begin with the
1539 manufacturer name since the PPD compiler will add this
1540 automatically for you. The maximum length of the name string is
1541 31 bytes to conform to the Adobe limits on the length of
1542 <code>ShortNickName
</code>.
</p>
1546 <p><a href=
"#FileName"><code>FileName
</code></a>,
1547 <a href='#Manufacturer'
><code>Manufacturer
</code></a>,
1548 <a href='#PCFileName'
><code>PCFileName
</code></a>,
1549 <a href='#Version'
><code>Version
</code></a></p>
1552 <h2 class=
"title"><a name='ModelNumber'
>ModelNumber
</a></h2>
1557 ModelNumber
<i>expression
</i>
1564 ModelNumber ($PCL_PAPER_SIZE $PCL_PJL)
1567 <h3>Description
</h3>
1569 <p>The
<code>ModelNumber
</code> directive sets the
1570 <code>cupsModelNumber
</code> attribute for the printer driver, which
1571 is often used by the printer driver filter to tailor its output
1572 for the current device. The number is any integer or bitwise OR
1573 of integers and constants that is appropriate for the printer
1576 <p>A complete list of printer driver model number constants is
1577 available later in this appendix in the section titled,
"<a
1578 href='#REF_MODEL_NUMBER'>Printer Driver ModelNumber
1583 <p><a href='#DriverType'
><code>DriverType
</code></a>,
1584 <a href='#Filter'
><code>Filter
</code></a></p>
1587 <h2 class=
"title"><a name='Option'
>Option
</a></h2>
1592 Option
<i>name type section order
</i>
1593 Option
<i>"name/text" type section order
</i>
1599 Option Punch Boolean AnySetup
10
1600 Option
"fooFinish/Finishing Option" PickOne DocumentSetup
10
1603 <h3>Description
</h3>
1605 <p>The
<code>Option
</code> directive creates a new option in the
1606 current group, by default the
<code>General
</code> group. The name
1607 may contain up to
40 ASCII characters within the range of decimal
33
1608 to decimal
126 inclusive, except for the characters comma (
44), slash
1609 (
47) and colon (
58).
</p>
1611 <p>If provided, the text can be any string up to
80 bytes in length.
1612 If no text is provided, the name is used.
</p>
1614 <p>The type argument is one of the following keywords:
</p>
1618 <li><code>Boolean
</code> - a true/false option
</li>
1620 <li><code>PickOne
</code> - allows the user to pick one
1621 choice from a list
</li>
1623 <li><code>PickMany
</code> - allows the user to pick zero or
1624 more choices from a list
</li>
1628 <p>The section argument is one of the following keywords:
</p>
1632 <li><code>AnySetup
</code> - The option can be placed in
1633 either the DocumentSetup or PageSetup sections of the
1634 PostScript document
</li>
1636 <li><code>DocumentSetup
</code> - The option must be placed
1637 in the DocumentSetup section of the PostScript document;
1638 this does not allow the option to be overridden on
1639 individual pages
</li>
1641 <li><code>ExitServer
</code> - The option must be placed in a
1642 separate initialization job prior to the document (not
1643 used for raster printer drivers)
</li>
1645 <li><code>JCLSetup
</code> - The option contains job control
1646 language commands and must be sent prior to the document
1647 using the
<code>JCLBegin
</code> and
1648 <code>JCLToPSInterpreter
</code> attributes (not used for
1649 raster printer drivers)
</li>
1651 <li><code>PageSetup
</code> - The option must be placed at the
1652 beginning of each page in the PostScript document
</li>
1654 <li><code>Prolog
</code> - The option must be placed in the
1655 prolog section of the PostScript document; this is
1656 typically used to add special comments for high-end
1657 typesetters, but can also be used to add CUPS PostScript
1658 job ticket comments.
</li>
1662 <p>The order argument is a real number greater than or equal to
1663 0.0 and is used to sort the printer commands from many options
1664 before sending them to the printer or RIP filter.
</p>
1668 <p><a href='#Choice'
><code>Choice
</code></a>,
1669 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1670 <a href='#Cutter'
><code>Cutter
</code></a>,
1671 <a href='#Darkness'
><code>Darkness
</code></a>,
1672 <a href='#Duplex'
><code>Duplex
</code></a>,
1673 <a href='#Finishing'
><code>Finishing
</code></a>,
1674 <a href='#Group'
><code>Group
</code></a>,
1675 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1676 <a href='#Installable'
><code>Installable
</code></a>,
1677 <a href='#MediaType'
><code>MediaType
</code></a>,
1678 <a href='#Resolution'
><code>Resolution
</code></a>,
1679 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1682 <h2 class=
"title"><a name='PCFileName'
>PCFileName
</a></h2>
1687 PCFileName
<i>"filename.ppd"</i>
1693 PCFileName
"foljt2k1.ppd"
1694 PCFileName
"deskjet.ppd"
1697 <h3>Description
</h3>
1699 <p>The
<code>PCFileName
</code> attribute specifies the name of the
1700 PPD file for the current driver. The filename argument must
1701 conform to the Adobe PPD file specification and can be no more
1702 than
8 filename characters plus the extension
".ppd".
</p>
1706 <p><a href=
"#FileName"><code>FileName
</code></a>,
1707 <a href='#Manufacturer'
><code>Manufacturer
</code></a>,
1708 <a href='#ModelName'
><code>ModelName
</code></a>,
1709 <a href='#Version'
><code>Version
</code></a></p>
1712 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='Resolution'
>Resolution
</a></h2>
1717 Resolution
<i>colorspace bits-per-color row-count row-feed row-step name
</i>
1718 Resolution
<i>colorspace bits-per-color row-count row-feed row-step
"name/text"</i>
1724 Resolution -
8 0 0 0 300dpi
1725 Resolution k
8 0 0 0 "600x300dpi/600 DPI Grayscale"
1728 <h3>Description
</h3>
1730 <p>The
<code>Resolution
</code> directive creates a new
1731 <code>Resolution
</code> option choice which sets the
1732 <code>HWResolution
</code>,
<code>cupsBitsPerColor
</code>,
1733 <code>cupsRowCount
</code>,
<code>cupsRowFeed
</code>,
1734 <code>cupsRowStep
</code>, and optionally the
<code>cupsColorSpace
</code>
1735 page device dictionary attributes. The colorspace argument
1736 specifies a colorspace to use for the specified resolution and
1737 can be the hyphen (
<code>-
</code>) character to make no change to
1738 the selected color model or any keyword listed in the section
1739 titled,
"<a href='#REF_COLOR_SPACE'>Colorspace Keywords</a>", to
1740 force the named colorspace.
</p>
1742 <p>The bits-per-color argument specifies the number of bits per
1743 color to generate when RIP'ing a job. The values
1,
2,
4, and
8
1744 are currently supported by CUPS.
</p>
1746 <p>The row-count, row-feed, and row-step argument specify the
1747 driver-dependent values for the
<code>cupsRowCount
</code>,
1748 <code>cupsRowFeed
</code>, and
<code>cupsRowStep
</code> attributes,
1749 respectively. Most drivers leave these attributes set to
0, but
1750 any number from
0 to
2<sup>32</sup>-
1 is allowed.
</p>
1752 <p>The name argument must conform to the resolution naming
1753 conventions in the Adobe PPD file specification, either
1754 <code>HHHdpi
</code> for symmetric resolutions or
<code>HHHxVVVdpi
</code>
1755 for asymmetric resolutions. The
<code>HHH
</code> and
<code>VVV
</code> in
1756 the examples represent the horizontal and vertical resolutions
1757 which must be positive integer values.
</p>
1759 <p>If provided, the text can be any string up to
80 bytes in length.
1760 If no text is provided, the name is used.
</p>
1764 <p><a href='#Choice'
><code>Choice
</code></a>,
1765 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1766 <a href='#Cutter'
><code>Cutter
</code></a>,
1767 <a href='#Darkness'
><code>Darkness
</code></a>,
1768 <a href='#Duplex'
><code>Duplex
</code></a>,
1769 <a href='#Finishing'
><code>Finishing
</code></a>,
1770 <a href='#Group'
><code>Group
</code></a>,
1771 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1772 <a href='#Installable'
><code>Installable
</code></a>,
1773 <a href='#MediaType'
><code>MediaType
</code></a>,
1774 <a href='#Option'
><code>Option
</code></a>,
1775 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1778 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='SimpleColorProfile'
>SimpleColorProfile
</a></h2>
1783 SimpleColorProfile
<i>resolution/mediatype density
1784 yellow-density red-density gamma
1785 red-adjust green-adjust blue-adjust
</i>
1791 SimpleColorProfile -/-
100 100 200 1.0 0 0 0
1793 SimpleColorProfile
360dpi/-
100 95 150 1.2 5 10 15
1795 SimpleColorProfile
720dpi/Glossy
100 90 120 1.5 -
5 5 10
1798 <h3>Description
</h3>
1800 <p>The
<code>SimpleColorProfile
</code> directive creates a
1801 matrix-based
<a href=
"#ColorProfile"><code>ColorProfile
</code></a>.
1802 The resolution and mediatype arguments specify the
1803 <code>Resolution
</code> and
<code>MediaType
</code> choices which use the
1804 profile; the hyphen (
<code>-
</code>) is used to specify that any
1805 resolution or mediatype can be used with the profile.
</p>
1807 <p>The density argument specifies the linear density correction
1808 to apply to the color values (P = d *
0.01 * p
<sup>g
</sup>) and
1809 is an integer greater than
0 and less than or equal to
100. A
1810 value
100 of disables density correction while lower values
1811 produce proportionately lighter output. The density value
1812 adjusts all color channels equally in all color modes.
</p>
1814 <p>The yellow-density argument specifies the density of the
1815 yellow channel when printing in grayscale or RGB mode and is an
1816 integer greater than
0 and less then or equal to
100. A value of
1817 100 disables yellow density correction while lower values
1818 produce proportionately lighter output.
</p>
1820 <P>The red-density argument specifies the two-color density
1821 limit (e.g. C + M, C + Y, M + Y) when printing in grayscale or
1822 RGB mode and is an integer greater than
0 and less then or equal
1823 to
200. A value of
200 disables two-color density correction
1824 while lower values produce proportionately lighter output.
</p>
1826 <p>The gamma argument specifies the gamma correction to apply to
1827 the color values (P = p
<sup>g
</sup>) and is a real number
1828 greater than
0. Values larger than
1 cause a general lightening
1829 of the print while values smaller than
1 cause a general
1830 darkening of the print. A value of
1 disables gamma
1833 <p>The red-adjust, green-adjust, blue-adjust arguments specify
1834 the percentage of color to add or remove. Positive red-adjust
1835 values add magenta and negative values add yellow. Positive
1836 green-adjust values add cyan and negative values add yellow.
1837 Positive blue-adjust values add cyan and negative values add
1838 magenta. Values of
0 disable color adjustments.
</p>
1842 <p><a href='#ColorProfile'
><code>ColorProfile
</code></a></p>
1845 <h2 class=
"title"><a name='Throughput'
>Throughput
</a></h2>
1850 Throughput
<i>pages-per-minute
</i>
1860 <h3>Description
</h3>
1862 <p>The
<code>Throughput
</code> directive sets the
<code>Throughput
</code>
1863 attribute for the current printer driver. The pages-per-minute
1864 argument is a positive integer representing the peak number of
1865 pages per minute that the printer is capable of producing. Use a
1866 value of
1 for printers that produce less than
1 page per
1870 <h2 class=
"title"><a name='UIConstraints'
>UIConstraints
</a></h2>
1875 UIConstraints
<i>"*Option1 *Option2"</i>
1876 UIConstraints
<i>"*Option1 Choice1 *Option2"</i>
1877 UIConstraints
<i>"*Option1 *Option2 Choice2"</i>
1878 UIConstraints
<i>"*Option1 Choice1 *Option2 Choice2"</i>
1884 UIConstraints
"*Finishing *MediaType"
1885 UIConstraints
"*Option1 False *Duplex"
1886 UIConstraints
"*Duplex *MediaType Transparency"
1887 UIConstraints
"*Resolution 600dpi *ColorModel RGB"
1890 <h3>Description
</h3>
1892 <p>The
<code>UIConstraints
</code> directive adds a constraint
1893 between two options. Constraints inform the application when a
1894 user has chosen incompatible options. Each option name is
1895 preceded by the asterisk (
<code>*
</code>). If no choice is given for
1896 an option, then all choices
<i>except
</i> <code>False
</code> and
1897 <code>None
</code> will conflict with the other option and choice(s).
1898 Since the PPD compiler automatically adds reciprocal constraints
1899 (option A conflicts with option B, so therefore option B
1900 conflicts with option A), you need only specify the constraint
1905 <p><a href='#Choice'
><code>Choice
</code></a>,
1906 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1907 <a href='#Cutter'
><code>Cutter
</code></a>,
1908 <a href='#Darkness'
><code>Darkness
</code></a>,
1909 <a href='#Duplex'
><code>Duplex
</code></a>,
1910 <a href='#Finishing'
><code>Finishing
</code></a>,
1911 <a href='#Group'
><code>Group
</code></a>,
1912 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1913 <a href='#Installable'
><code>Installable
</code></a>,
1914 <a href='#MediaType'
><code>MediaType
</code></a>,
1915 <a href='#Option'
><code>Option
</code></a>,
1916 <a href='#Resolution'
><code>Resolution
</code></a></p>
1919 <h2 class=
"title"><a name='VariablePaperSize'
>VariablePaperSize
</a></h2>
1924 VariablePaperSize
<i>boolean-value
</i>
1930 VariablePaperSize yes
1931 VariablePaperSize no
1934 <h3>Description
</h3>
1936 <p>The
<code>VariablePaperSize
</code> directive specifies whether
1937 the current printer supports variable (custom) page sizes. When
1938 <code>yes
</code> is specified, the PPD compiler will include the
1939 standard PPD attributes required to support custom page
1944 <p><a href='#MaxSize'
><code>MaxSize
</code></a>,
1945 <a href='#MinSize'
><code>MinSize
</code></a></p>
1948 <h2 class=
"title"><a name='Version'
>Version
</a></h2>
1953 Version
<i>number
</i>
1963 <h3>Description
</h3>
1965 <p>The
<code>Version
</code> directive sets the
<code>FileVersion
</code>
1966 attribute in the PPD file and is also used for the
1967 <code>NickName
</code> attribute. The number argument is a positive
1972 <p><a href='#Manufacturer'
><code>Manufacturer
</code></a>,
1973 <a href='#ModelName'
><code>ModelName
</code></a>,
1974 <a href='#PCFileName'
><code>PCFileName
</code></a></p>
1977 <h2 class=
"title"><a name='REF_INCLUDE'
>Standard Include Files
</h2>
1979 <p><a href='#TABLEB-
1'
>Table B-
1</a> shows the standard include
1980 files which are provided with the DDK.
</p>
1982 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
1983 <caption align='bottom'
><a name='TABLEB-
1'
><i>Table B-
1,
1984 Standard Include Files
</i></a></caption>
1985 <tr bgcolor='#cccccc'
>
1986 <th>Include File
</th>
1987 <th>Description
</th>
1990 <td valign='top'
><code><font.defs
></code></td>
1991 <td align='justify' valign='top'
>Defines all of the
1992 standard fonts which are included with ESP Ghostscript
1993 and the Apple PDF RIP.
</td>
1996 <td valign='top'
><code><epson.h
></code></td>
1997 <td align='justify' valign='top'
>Defines all of the
1998 CUPS ESC/P sample driver constants.
</td>
2001 <td valign='top'
><code><escp.h
></code></td>
2002 <td align='justify' valign='top'
>Defines all of the
2003 DDK ESC/P driver constants.
</td>
2006 <td valign='top'
><code><hp.h
></code></td>
2007 <td align='justify' valign='top'
>Defines all of the
2008 CUPS HP-PCL sample driver constants.
</td>
2011 <td valign='top'
><code><label.h
></code></td>
2012 <td align='justify' valign='top'
>Defines all of the
2013 CUPS label sample driver constants.
</td>
2016 <td valign='top'
><code><media.defs
></code></td>
2017 <td align='justify' valign='top'
>Defines all of the
2018 standard media sizes listed in Appendix B of the Adobe
2019 PostScript Printer Description File Format
2023 <td valign='top'
><code><pcl.h
></code></td>
2024 <td align='justify' valign='top'
>Defines all of the
2025 DDK HP-PCL driver constants.
</td>
2028 <td valign='top'
><code><raster.defs
></code></td>
2029 <td align='justify' valign='top'
>Defines all of the CUPS
2030 raster format constants.
</td>
2034 <h2 class=
"title"><a name='REF_MODEL_NUMBER'
>Printer Driver ModelNumber Constants
</a></h2>
2036 <p>The CUPS DDK and sample drivers use the
2037 <code>cupsModelNumber
</code> attribute in the PPD file to tailor
2038 their output to the printer. The following sections describe the
2039 constants for each driver.
</p>
2041 <h3><a name='REF_MODEL_EPSON'
>The CUPS ESC/P Sample Driver (epson)
</a></h3>
2043 <p>The
<code>epson
</code> driver supports Epson and Okidata
2044 dot-matrix, Epson Stylus Color, and Epson Stylus Photo printers.
2045 <a href='#TABLEB-
2'
>Table B-
2</a> lists the constants for the
<a
2046 href='#ModelNumber'
><code>ModelNumber
</code></a> directive.
2047 <code>ModelNumber
</code> values should be inserted by referencing
2048 only one of these constants.
</p>
2051 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
2052 <caption align='bottom'
><a name='TABLEB-
2'
><i>Table B-
2,
<code>epson
</code> driver
2053 constants
</i></a></caption>
2054 <tr bgcolor='#cccccc'
>
2056 <th>Description
</th>
2059 <td valign='top'
><code>EPSON_9PIN
</code></td>
2060 <td align='justify' valign='top'
>Epson and Okidata
9-pin
2061 dot-matrix printers
</td>
2064 <td valign='top'
><code>EPSON_24PIN
</code></td>
2065 <td align='justify' valign='top'
>Epson and Okidata
24-pin
2066 dot-matrix printers
</td>
2069 <td valign='top'
><code>EPSON_COLOR
</code></td>
2070 <td align='justify' valign='top'
>Older Epson Stylus Color
2071 printers that use the
<code>ESC .
</code> graphics command
</td>
2074 <td valign='top'
><code>EPSON_PHOTO
</code></td>
2075 <td align='justify' valign='top'
>Older Epson Stylus Photo
2076 printers that use the
<code>ESC .
</code> graphics command
</td>
2079 <td valign='top'
><code>EPSON_ICOLOR
</code></td>
2080 <td align='justify' valign='top'
>Newer Epson Stylus Color
2081 printers that use the
<code>ESC i
</code> graphics command
</td>
2084 <td valign='top'
><code>EPSON_IPHOTO
</code></td>
2085 <td align='justify' valign='top'
>Newer Epson Stylus Photo
2086 printers that use the
<code>ESC i
</code> graphics command
</td>
2090 <h3><a name='REF_MODEL_HP'
>The CUPS HP-PCL Sample Driver (hp)
</a></h3>
2092 <p>The
<code>hp
</code> driver supports HP LaserJet and DeskJet
2093 printers.
<a href='#TABLEB-
3'
>Table B-
3</a> lists the constants
2094 for the
<a href='#ModelNumber'
><code>ModelNumber
</code></a>
2095 directive.
<code>ModelNumber
</code> values should be inserted by
2096 referencing only one of these constants.
</p>
2098 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
2099 <caption align='bottom'
><a name='TABLEB-
3'
><i>Table B-
3,
<code>hp
</code> driver
2100 constants
</i></a></caption>
2101 <tr bgcolor='#cccccc'
>
2103 <th>Description
</th>
2106 <td valign='top'
><code>HP_LASERJET
</code></td>
2107 <td align='justify' valign='top'
>HP LaserJet printers supporting
2111 <td valign='top'
><code>HP_DESKJET
</code></td>
2112 <td align='justify' valign='top'
>HP DeskJet printers
2113 supporting PCL
3 and using the simple color graphics
2114 command (
<code>ESC * r # U
</code>)
</td>
2117 <td valign='top'
><code>HP_DESKJET2
</code></td>
2118 <td align='justify' valign='top'
>HP DeskJet printers
2119 supporting PCL3GUI and using the configure raster graphics
2120 command (
<code>ESC * g # W
</code>)
</td>
2124 <h3><a name='REF_MODEL_LABEL'
>The CUPS Label Sample Driver (label)
</a></h3>
2126 <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>
2127 lists the constants for the
<a
2128 href='#ModelNumber'
><code>ModelNumber
</code></a> directive.
2129 <code>ModelNumber
</code> values should be inserted by referencing
2130 only one of these constants.
</p>
2132 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
2133 <caption align='bottom'
><a name='TABLEB-
4'
><i>Table B-
4,
<code>label
</code> driver
2134 constants
</i></a></caption>
2135 <tr bgcolor='#cccccc'
>
2137 <th>Description
</th>
2140 <td valign='top'
><code>DYMO_3x0
</code></td>
2141 <td align='justify' valign='top'
>Format output for the
2142 Dymo Labelwriter
300,
330, or
330 Turbo.
</td>
2145 <td valign='top'
><code>INTELLITECH_PCL
</code></td>
2146 <td align='justify' valign='top'
>Format output for the Intellitech PCL printers.
</td>
2149 <td valign='top'
><code>ZEBRA_CPCL
</code></td>
2150 <td align='justify' valign='top'
>Format output for the Zebra CPCL printers.
</td>
2153 <td valign='top'
><code>ZEBRA_EPL_LINE
</code></td>
2154 <td align='justify' valign='top'
>Format output for the Zebra EPL line mode (EPL
1) printers.
</td>
2157 <td valign='top'
><code>ZEBRA_EPL_PAGE
</code></td>
2158 <td align='justify' valign='top'
>Format output for the Zebra EPL page mode (EPL
2) printers.
</td>
2161 <td valign='top'
><code>ZEBRA_ZPL
</code></td>
2162 <td align='justify' valign='top'
>Format output for the Zebra ZPL printers.
</td>
2166 <h3><a name='REF_MODEL_ESCP'
>The DDK ESC/P Driver (escp)
</a></h3>
2168 <p>The
<code>escp
</code> driver supports all Epson inkjet printers.
2169 <a href='#TABLEB-
6'
>Table B-
6</a> lists the constants for the
<a
2170 href='#ModelNumber'
><code>ModelNumber
</code></a> directive.
2171 <code>ModelNumber
</code> values should be specified as the bitwise
2172 OR of one or more of these constants.
</p>
2174 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
2175 <caption align='bottom'
><a name='TABLEB-
6'
><i>Table B-
6,
<code>escp
</code> driver
2176 constants
</i></a></caption>
2177 <tr bgcolor='#cccccc'
>
2179 <th>Description
</th>
2182 <td valign='top'
><code>ESCP_MICROWEAVE
</code></td>
2183 <td align='justify' valign='top'
>Use microweave command?
</td>
2186 <td valign='top'
><code>ESCP_STAGGER
</code></td>
2187 <td align='justify' valign='top'
>Are color jets staggered?
</td>
2190 <td valign='top'
><code>ESCP_ESCK
</code></td>
2191 <td align='justify' valign='top'
>Use print mode command?
</td>
2194 <td valign='top'
><code>ESCP_EXT_UNITS
</code></td>
2195 <td align='justify' valign='top'
>Use extended unit commands?
</td>
2198 <td valign='top'
><code>ESCP_EXT_MARGINS
</code></td>
2199 <td align='justify' valign='top'
>Use extended margin command?
</td>
2202 <td valign='top'
><code>ESCP_USB
</code></td>
2203 <td align='justify' valign='top'
>Send USB packet mode escape
</td>
2206 <td valign='top'
><code>ESCP_PAGE_SIZE
</code></td>
2207 <td align='justify' valign='top'
>Use page size command
</td>
2210 <td valign='top'
><code>ESCP_RASTER_ESCI
</code></td>
2211 <td align='justify' valign='top'
>Use
<code>ESC i
</code> graphics command
</td>
2214 <td valign='top'
><code>ESCP_REMOTE
</code></td>
2215 <td align='justify' valign='top'
>Use remote mode commands
</td>
2218 <td valign='top'
><code>ESCP_REMOTE_AC
</code></td>
2219 <td align='justify' valign='top'
>Use auto-cutter command
</td>
2222 <td valign='top'
><code>ESCP_REMOTE_CO
</code></td>
2223 <td align='justify' valign='top'
>Use cutter-operation command
</td>
2226 <td valign='top'
><code>ESCP_REMOTE_EX
</code></td>
2227 <td align='justify' valign='top'
>Use media-position command
</td>
2230 <td valign='top'
><code>ESCP_REMOTE_MS
</code></td>
2231 <td align='justify' valign='top'
>Use media-size command
</td>
2234 <td valign='top'
><code>ESCP_REMOTE_MT
</code></td>
2235 <td align='justify' valign='top'
>Use media-type command
</td>
2238 <td valign='top'
><code>ESCP_REMOTE_PC
</code></td>
2239 <td align='justify' valign='top'
>Use paper-check command
</td>
2242 <td valign='top'
><code>ESCP_REMOTE_PH
</code></td>
2243 <td align='justify' valign='top'
>Use paper-thickness command
</td>
2246 <td valign='top'
><code>ESCP_REMOTE_PP
</code></td>
2247 <td align='justify' valign='top'
>Use paper-path command
</td>
2250 <td valign='top'
><code>ESCP_REMOTE_SN0
</code></td>
2251 <td align='justify' valign='top'
>Use feed-sequence-
0 command
</td>
2254 <td valign='top'
><code>ESCP_REMOTE_SN1
</code></td>
2255 <td align='justify' valign='top'
>Use platten-gap command
</td>
2258 <td valign='top'
><code>ESCP_REMOTE_SN2
</code></td>
2259 <td align='justify' valign='top'
>Use feed-sequence-
2 command
</td>
2262 <td valign='top'
><code>ESCP_REMOTE_SN6
</code></td>
2263 <td align='justify' valign='top'
>Use eject-delay command
</td>
2266 <td valign='top'
><code>ESCP_REMOTE_FP
</code></td>
2267 <td align='justify' valign='top'
>Use print-position command
</td>
2271 <h3><a name='REF_MODEL_PCL'
>The DDK HP-PCL Driver (pcl)
</a></h3>
2273 <p>The
<code>pcl
</code> driver supports all HP LaserJet, DeskJet,
2274 and DesignJet printers.
<a href='#TABLEB-
5'
>Table B-
5</a> lists
2275 the constants for the
<a
2276 href='#ModelNumber'
><code>ModelNumber
</code></a> directive.
2277 <code>ModelNumber
</code> values should be specified as the bitwise
2278 OR of one or more of these constants.
</p>
2280 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
2281 <caption align='bottom'
><a name='TABLEB-
5'
><i>Table B-
5,
<code>pcl
</code> driver
2282 constants
</i></a></caption>
2283 <tr bgcolor='#cccccc'
>
2285 <th>Description
</th>
2288 <td valign='top'
><code>PCL_PAPER_SIZE
</code></td>
2289 <td align='justify' valign='top'
>Use paper size command (
<code>ESC
& l # A
</code>)
</td>
2292 <td valign='top'
><code>PCL_INKJET
</code></td>
2293 <td align='justify' valign='top'
>Use inkjet commands
</td>
2296 <td valign='top'
><code>PCL_RASTER_END_COLOR
</code></td>
2297 <td align='justify' valign='top'
>Use new end-raster command (
<code>ESC * r C
</code>)
</td>
2300 <td valign='top'
><code>PCL_RASTER_CID
</code></td>
2301 <td align='justify' valign='top'
>Use configure-image-data command (
<code>ESC * v # W
</code>)
</td>
2304 <td valign='top'
><code>PCL_RASTER_CRD
</code></td>
2305 <td align='justify' valign='top'
>Use configure-raster-data command (
<code>ESC * g # W
</code>)
</td>
2308 <td valign='top'
><code>PCL_RASTER_SIMPLE
</code></td>
2309 <td align='justify' valign='top'
>Use simple-raster-color command (
<code>ESC * r # U
</code>)
</td>
2312 <td valign='top'
><code>PCL_RASTER_RGB24
</code></td>
2313 <td align='justify' valign='top'
>Use
24-bit RGB mode
</td>
2316 <td valign='top'
><code>PCL_PJL
</code></td>
2317 <td align='justify' valign='top'
>Use PJL commands
</td>
2320 <td valign='top'
><code>PCL_PJL_PAPERWIDTH
</code></td>
2321 <td align='justify' valign='top'
>Use PJL PAPERWIDTH/LENGTH commands
</td>
2324 <td valign='top'
><code>PCL_PJL_HPGL2
</code></td>
2325 <td align='justify' valign='top'
>Use PJL ENTER HPGL2 command
</td>
2328 <td valign='top'
><code>PCL_PJL_PCL3GUI
</code></td>
2329 <td align='justify' valign='top'
>Use PJL ENTER PCL3GUI command
</td>
2332 <td valign='top'
><code>PCL_PJL_RESOLUTION
</code></td>
2333 <td align='justify' valign='top'
>Use PJL SET RESOLUTION command
</td>
2337 <H2><A NAME=
"REF_COLOR">Color Keywords
</A></H2>
2339 <p>The PPD compiler defines two types of color keywords:
2340 colorspace and color order. The following sections list the
2341 supported keywords for each type.
</p>
2343 <H3><A NAME=
"REF_COLOR_SPACE">Colorspace Keywords
</A></H3>
2345 <P>The following colorspace keywords are recognized:
</P>
2349 <LI><TT>cielab
</TT> - CIE Lab
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2351 <LI><TT>ciexyz
</TT> - CIE XYZ
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2353 <LI><TT>cmy
</TT> - Cyan, magenta, yellow
</LI>
2355 <LI><TT>cmyk
</TT> - Cyan, magenta, yellow, black
</LI>
2357 <LI><TT>gmck
</TT> - Gold, magenta, yellow, black
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2359 <LI><TT>gmcs
</TT> - Gold, magenta, yellow, silver
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2361 <LI><TT>gold
</TT> - Gold foil
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2363 <LI><TT>icc1
</TT> - ICC-based,
1 color
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2365 <LI><TT>icc2
</TT> - ICC-based,
2 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2367 <LI><TT>icc3
</TT> - ICC-based,
3 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2369 <LI><TT>icc4
</TT> - ICC-based,
4 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2371 <LI><TT>icc5
</TT> - ICC-based,
5 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2373 <LI><TT>icc6
</TT> - ICC-based,
6 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2375 <LI><TT>icc7
</TT> - ICC-based,
7 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2377 <LI><TT>icc8
</TT> - ICC-based,
8 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2379 <LI><TT>icc9
</TT> - ICC-based,
9 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2381 <LI><TT>icca
</TT> - ICC-based,
10 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2383 <LI><TT>iccb
</TT> - ICC-based,
11 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2385 <LI><TT>iccc
</TT> - ICC-based,
12 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2387 <LI><TT>iccd
</TT> - ICC-based,
13 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2389 <LI><TT>icce
</TT> - ICC-based,
14 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2391 <LI><TT>iccf
</TT> - ICC-based,
15 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2393 <LI><TT>k
</TT> - Black
</LI>
2395 <LI><TT>kcmy
</TT> - Black, cyan, magenta, yellow
<A HREF=
"#REF_COLOR_APPLE">*
</A></LI>
2397 <LI><TT>kcmycm
</TT> - Black, cyan, magenta, yellow, light-cyan, light-magenta
<A HREF=
"#REF_COLOR_APPLE">*
</A></LI>
2399 <LI><TT>rgb
</TT> - Red, green, blue
</LI>
2401 <LI><TT>rgba
</TT> - Red, green, blue, alpha
</LI>
2403 <LI><TT>rgbw
</TT> - Red, green, blue, luminance
<A HREF=
"#REF_COLOR_APPLE">*
</A></LI>
2405 <LI><TT>silver
</TT> - Silver foil
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2407 <LI><TT>w
</TT> - Luminance
</LI>
2409 <LI><TT>white
</TT> - White ink (as black)
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2411 <LI><TT>ymc
</TT> - Yellow, magenta, cyan
<A HREF=
"#REF_COLOR_APPLE">*
</A></LI>
2413 <LI><TT>ymck
</TT> - Yellow, magenta, cyan, black
<A HREF=
"#REF_COLOR_APPLE">*
</A>
2417 <BR><A NAME=
"REF_COLOR_APPLE">*
</A> = This colorspace is not supported on macOS prior to
10.4.
2418 <BR><A NAME=
"REF_COLOR_APPLE2">**
</A> = This colorspace is not supported on macOS.
</LI>
2422 <H3><A NAME=
"REF_COLOR_ORDER">Color Order Keywords
</A></H3>
2424 <P>The following color order keywords are recognized:
</P>
2428 <LI><TT>chunked
</TT> or
<TT>chunky
</TT> - Color values
2429 are passed together on a line as RGB RGB RGB RGB
</LI>
2431 <LI><TT>banded
</TT> - Color values are passed separately
2432 on a line as RRRR GGGG BBBB
<A
2433 HREF=
"#REF_COLOR_APPLE2">*
</A></LI>
2435 <LI><TT>planar
</TT> - Color values are passed separately
2436 on a page as RRRR RRRR RRRR ... GGGG GGGG GGGG ... BBBB
2437 BBBB BBBB
<A HREF=
"#REF_COLOR_APPLE2">*
</A>
2441 <BR><A NAME=
"REF_COLOR_APPLE2">*
</A> = This color order
2442 is not supported by the current Apple RIP filters and
2443 should not be used when developing printer drivers for