2 <!-- SECTION: References -->
4 <TITLE>PPD Compiler Driver Information File Reference
</TITLE>
8 <p>The CUPS PPD compiler reads meta files that contain descriptions
9 of one or more PPD files to be generated by
10 <a href=
"man-ppdc.html">ppdc(
1)
</a> or the corresponding driver interface
11 program
<a href=
"man-drv.html">drv(
1)
</a>. The source file format is plain
12 ASCII text that can be edited using your favorite text editor.
</p>
14 <p>Directives may be placed anywhere on a line and are followed by
15 zero or more values.
</p>
17 <p>Comments are supported using the C (/* ... */) and C++ (// ...) comment
20 <p>Directives that accept expressions look for sequences of the form:
</p>
25 <dd>Evaluates to
1 if NAME is defined, otherwise
0.
</dd>
29 <dd>Evaluates to the specified integer; the number can be preceded by
30 a leading sign (+/-) followed by a decimal number (
1234), octal number
31 (
01234), or hexidecimal number (
0x1234) using the same rules as C and
34 <dt>(NAME NAME ... number number ...)
</dt>
35 <dd>Evaluates to the bitwise OR of each named #define constant or
38 <dt>(NAME == OTHERNAME)
</dt>
39 <dt>(NAME == number)
</dt>
40 <dd>Evaluates to
1 if NAME is equal to the other named constant or
41 number, otherwise
0.
</dd>
43 <dt>(NAME != OTHERNAME)
</dt>
44 <dt>(NAME != number)
</dt>
45 <dd>Evaluates to
1 if NAME is not equal to the other named constant or
46 number, otherwise
0.
</dd>
48 <dt>(NAME
< OTHERNAME)
</dt>
49 <dt>(NAME
< number)
</dt>
50 <dd>Evaluates to
1 if NAME is less than to the other named constant or
51 number, otherwise
0.
</dd>
53 <dt>(NAME
<= OTHERNAME)
</dt>
54 <dt>(NAME
<= number)
</dt>
55 <dd>Evaluates to
1 if NAME is less than or equal to the other named
56 constant or number, otherwise
0.
</dd>
58 <dt>(NAME
> OTHERNAME)
</dt>
59 <dt>(NAME
> number)
</dt>
60 <dd>Evaluates to
1 if NAME is greater than to the other named constant
61 or number, otherwise
0.
</dd>
63 <dt>(NAME
>= OTHERNAME)
</dt>
64 <dt>(NAME
>= number)
</dt>
65 <dd>Evaluates to
1 if NAME is greater than or equal to the other named
66 constant or number, otherwise
0.
</dd>
70 <p>Printer driver information can be grouped and shared using
71 curley braces ({ ... }); PPD files are written when a close
72 brace or end-of-file is seen and a
<a href=
"#PCFileName">PCFileName
</a>
73 directive has been defined.
</p>
76 <h2 class=
"title"><a name='_define'
>#define
</a></h2>
81 #define
<i>name expression
</i>
88 #define BAR
"Bar, Inc."
93 <p>The
<code>#define
</code> directive assigns a value to a name
94 which can be later referenced using
<code>$name
</code>. The name is
95 case-insensitive and can be any sequence of letters, numbers,
96 and the underscore. The value can be any valid expression.
</p>
100 <p><a href='#_include'
><code>#include
</code></a></p>
103 <h2 class=
"title"><a name='_elif'
>#elif
</a></h2>
108 #elif
<i>expression
</i>
116 #elif (HAVE_BAR
>=
999)
125 <p>The
<code>#elif
</code> directive allows portions of a driver information file
126 to be used conditionally.
<code>#elif
</code> directives must appear after a
127 corresponding
<a href=
"#_if"><code>#if
</code></a> directive.
</p>
131 <p><a href='#_else'
><code>#else
</code></a>,
132 <a href='#_endif'
><code>#endif
</code></a>,
133 <a href='#_if'
><code>#if
</code></a></p>
136 <h2 class=
"title"><a name='_else'
>#else
</a></h2>
149 #elif (HAVE_BAR
>=
999)
158 <p>The
<code>#else
</code> directive allows portions of a driver information file
159 to be used conditionally when the corresponding
160 <a href=
"#_if"><code>#if
</code></a> and
<a href=
"#_elif"><code>#elif
</code></a>
161 expressions are non-zero.
</p>
165 <p><a href='#_elif'
><code>#elif
</code></a>,
166 <a href='#_endif'
><code>#endif
</code></a>,
167 <a href='#_if'
><code>#if
</code></a></p>
170 <h2 class=
"title"><a name='_endif'
>#endif
</a></h2>
183 #elif (HAVE_BAR
>=
999)
192 <p>The
<code>#endif
</code> directive ends a conditional block of a driver
193 information file. It must appear after all of the
194 <a href=
"#_if"><code>#if
</code></a>,
<a href=
"#_elif"><code>#elif
</code></a>,
195 and
<a href=
"#_else"><code>#else
</code></a> directives for the current
196 conditional block.
</p>
200 <p><a href='#_elif'
><code>#elif
</code></a>,
201 <a href='#_else'
><code>#else
</code></a>,
202 <a href='#_if'
><code>#if
</code></a></p>
205 <h2 class=
"title"><a name='_font'
>#font
</a></h2>
210 #font
<i>name encoding
"version" charset status
</i>
216 #font Courier Standard
"(1.05)" Standard ROM
217 #font Symbol Special
"(001.005)" Special ROM
218 #font Barcode-Foo Special
"(1.0)" Special Disk
219 #font Unicode-Foo Expert
"(2.0)" Adobe-Identity ROM
224 <p>The
<code>#font
</code> directive defines a
"base font" for all
225 printer drivers. The name is the PostScript font name.
</p>
227 <p>The encoding is the default encoding of the font, usually
228 <code>Standard
</code>,
<code>Expert
</code>, or
<code>Special
</code>, as
229 defined in the Adobe PPD file specification.
</p>
231 <p>The version is the PostScript string definition that
232 corresponds to the font version number.
</p>
234 <p>The charset defines the available characters in the font,
235 usually
<code>Standard
</code> or
<code>Special
</code>, as defined in the
236 Adobe PPD file specification.
</p>
238 <p>The status is the installation status of the font and must be
239 either the word
<code>ROM
</code> or
<code>Disk
</code>.
241 <p>Base fonts differ from fonts defined using the
<a
242 href='#Font'
><code>Font
</code></a> directive in that they are not
243 automatically associated with all drivers - you must use the
244 special
<code>Font *
</code> directive to include them in a
247 <p>Currently the
<code>#font
</code> directive is used mainly for
248 defining the standard raster fonts in the
249 <code><font.defs
></code> include file.
</p>
253 <p><a href='#_include'
><code>#include
</code></a>,
254 <a href='#Font'
><code>Font
</code></a></p>
257 <h2 class=
"title"><a name='_if'
>#if
</a></h2>
262 #if
<i>name or expression
</i>
270 #elif (HAVE_BAR
>=
999)
279 <p>The
<code>#if
</code> directive allows portions of a driver information file
280 to be used conditionally. When followed by a name, the data that follows is
281 used only when the name is defined, otherwise the data is ignored.
282 <code>#if
</code> directives can be nested up to
100 times.
</p>
286 <p><a href='#_elif'
><code>#elif
</code></a>,
287 <a href='#_else'
><code>#else
</code></a>,
288 <a href='#_endif'
><code>#endif
</code></a></p>
291 <h2 class=
"title"><a name='_include'
>#include
</a></h2>
296 #include
<<i>filename
</i>>
297 #include
"<i>filename</i>"
303 #include
<font.defs
>
309 <p>The
<code>#include
</code> directive reads the named driver
310 information file. If the filename is included inside angle
311 brackets (
<code><filename
></code>), then the PPD compiler will
312 look for the file in all of the include directories it knows
313 about. Otherwise, the file is opened in the current directory
314 relative to the current driver information file, and if that
315 fails then it looks in the include directories for the file.
</p>
317 <p>The
<code>#include
</code> directive can be nested to as many
318 files as are allowed by the host operating system, typically at
323 <p><a href='#_define'
><code>#define
</code></a>,
324 <a href='#_font'
><code>#font
</code></a>,
325 <a href='#_media'
><code>#media
</code></a></p>
328 <h2 class=
"title"><a name='_media'
>#media
</a></h2>
333 #media
<i>name width length
</i>
334 #media
<i>"name/text" width length
</i>
340 #media
"Letter/Letter - 8.5x11in" 8.5in
11in
341 #media
"A4/A4 - 210x297mm" 210mm
297mm
342 #media
"w936h1368/Super B/A3 - 13x19in" 936 1368
348 <p>The
<code>#media
</code> directive defines a named media size for
349 inclusion in a driver. The name with optional user text defines
350 the name for the media size and is used with the
<a
351 href='#MediaSize'
><code>MediaSize
</code></a> directive to associate
352 the media size with the driver. The name may only contain
353 letters, numbers, and the underscore and may not exceed
40
354 characters in length. The user text, if supplied, may not exceed
355 80 characters in length.
</p>
357 <p>The width and length define the dimensions of the media. Each
358 number is optionally followed by one of the following unit
363 <li><code>cm
</code> - centimeters
</li>
365 <li><code>ft
</code> - feet
</li>
367 <li><code>in
</code> - inches
</li>
369 <li><code>m
</code> - meters
</li>
371 <li><code>mm
</code> - millimeters
</li>
373 <li><code>pt
</code> - points (
72 points =
1 inch)
</li>
377 <p>Points are assumed if no units are specified.
381 <p><a href='#_include'
><code>#include
</code></a>,
382 <a href='#CustomMedia'
><code>CustomMedia
</code></a>,
383 <a href='#MediaSize'
><code>MediaSize
</code></a></p>
386 <h2 class=
"title"><a name='_po'
>#po
</a></h2>
391 #po
<i>locale filename
</i>
398 #po fr_CA
"mydriver-fr_CA.po"
403 <p>The
<code>#po
</code> directive defines a message catalog to use for the
404 given POSIX language abbreviation. Multiple
<code>#po
</code> directives can be
405 specified to list multiple catalogs. The filename can be an absolute path or
406 relative to the driver information file. GNU gettext and Mac OS X .strings
407 files are supported.
</p>
410 <h2 class=
"title"><a name='Attribute'
>Attribute
</a></h2>
415 Attribute
<i>name
"" value
</i>
416 Attribute
<i>name keyword value
</i>
417 Attribute
<i>name
"keyword/text" value
</i>
423 Attribute cupsInkChannels
"" 1
424 Attribute cupsAllDither
600dpi
"1.0"
425 Attribute fooProfile
"Photo/Photographic Profile" "photopro.icc"
430 <p>The
<code>Attribute
</code> directive creates a PPD attribute. The
431 name is any combination of letters, numbers, and the underscore
432 and can be up to
40 characters in length.
</p>
434 <p>The selector can be the empty string (
<code>""</code>), a keyword
435 consisting of up to
40 letters, numbers, and the underscore, or
436 a string composed of a keyword and user text of up to
80
439 <p>The value is any string or number; the string may contain
440 multiple lines, however no one line may exceed
255
445 <p><a href=
"#LocAttribute"><code>LocAttribute
</code></a></p>
448 <h2 class=
"title"><a name='Choice'
>Choice
</a></h2>
453 Choice
<i>name
"code"</i>
454 Choice
<i>"name/text" "code"</i>
460 Choice None
"<</MediaType (None)>>setpagedevice"
461 Choice
"False/No" "<</cupsCompression 0>>setpagedevice"
466 <p>The
<code>Choice
</code> directive adds a single choice to the
467 current option. The name is any combination of letters, numbers,
468 and the underscore and can be up to
40 characters in length.
</p>
470 <p>If provided, the text can be any string up to
80 characters
471 in length. If no text is provided, the name is used.
</p>
473 <p>The code is any string and may contain multiple lines,
474 however no one line may exceed
255 characters.
</p>
478 <p><a href='#ColorModel'
><code>ColorModel
</code></a>,
479 <a href='#Cutter'
><code>Cutter
</code></a>,
480 <a href='#Darkness'
><code>Darkness
</code></a>,
481 <a href='#Duplex'
><code>Duplex
</code></a>,
482 <a href='#Finishing'
><code>Finishing
</code></a>,
483 <a href='#Group'
><code>Group
</code></a>,
484 <a href='#InputSlot'
><code>InputSlot
</code></a>,
485 <a href='#Installable'
><code>Installable
</code></a>,
486 <a href='#MediaType'
><code>MediaType
</code></a>,
487 <a href='#Option'
><code>Option
</code></a>,
488 <a href='#Resolution'
><code>Resolution
</code></a>,
489 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
492 <h2 class=
"title"><a name='ColorDevice'
>ColorDevice
</a></h2>
497 ColorDevice
<i>boolean-value
</i>
509 <p>The
<code>ColorDevice
</code> directive tells the application if
510 the printer supports color. It is typically used in conjunction
511 with the
<a href='#ColorModel'
><code>ColorModel
</code></a> directive
512 to provide color printing support.
</p>
516 <p><a href='#ColorModel'
><code>ColorModel
</code></a></p>
519 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='ColorModel'
>ColorModel
</a></h2>
524 ColorModel
<i>name colorspace colororder compression
</i>
525 ColorModel
<i>"name/text" colorspace colororder compression
</i>
531 ColorModel Gray/Grayscale w chunky
0
532 ColorModel RGB/Color rgb chunky
0
533 ColorModel CMYK cmyk chunky
0
538 <p>The
<code>ColorModel
</code> directive is a convenience directive
539 which creates a ColorModel option and choice for the current
540 printer driver. The name is any combination of letters, numbers,
541 and the underscore and can be up to
40 characters in length.
</p>
543 <p>If provided, the text can be any string up to
80 characters
544 in length. If no text is provided, the name is used.
</p>
546 <p>The colorspace argument is one of the standard colorspace
547 keywords defined later in this appendix in the section titled,
548 "<a href='#REF_COLOR_SPACE'>Colorspace Keywords</a>".
</p>
550 <P>The colororder argument is one of the standard color order
551 keywords defined later in this appendix in the section titled,
552 "<a href='#REF_COLOR_ORDER'>Color Order Keywords</a>".
</p>
554 <p>The compression argument is any number and is assigned to the
555 <code>cupsCompression
</code> attribute in the PostScript page device
560 <p><a href='#Choice'
><code>Choice
</code></a>,
561 <a href='#ColorDevice'
><code>ColorDevice
</code></a>,
562 <a href='#Cutter'
><code>Cutter
</code></a>,
563 <a href='#Darkness'
><code>Darkness
</code></a>,
564 <a href='#Duplex'
><code>Duplex
</code></a>,
565 <a href='#Finishing'
><code>Finishing
</code></a>,
566 <a href='#Group'
><code>Group
</code></a>,
567 <a href='#InputSlot'
><code>InputSlot
</code></a>,
568 <a href='#Installable'
><code>Installable
</code></a>,
569 <a href='#MediaType'
><code>MediaType
</code></a>,
570 <a href='#Option'
><code>Option
</code></a>,
571 <a href='#Resolution'
><code>Resolution
</code></a>,
572 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
575 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='ColorProfile'
>ColorProfile
</a></h2>
580 ColorProfile
<i>resolution/mediatype gamma density matrix
</i>
586 ColorProfile -/-
1.7 1.0
591 ColorProfile
360dpi/-
1.6 1.0
596 ColorProfile
720dpi/Special
1.5 1.0
604 <p>The
<code>ColorProfile
</code> directive defines a CMY
605 transform-based color profile. The resolution and mediatype
606 arguments specify the
<code>Resolution
</code> and
<code>MediaType
</code>
607 choices which use the profile; the hyphen (
<code>-
</code>) is used to
608 specify that any resolution or mediatype can be used with the
611 <p>The gamma argument specifies the gamma correction to apply to
612 the color values (P = p
<sup>g
</sup>) and is a real number
613 greater than
0. Values larger than
1 cause a general lightening
614 of the print while values smaller than
1 cause a general
615 darkening of the print. A value of
1 disables gamma
618 <p>The density argument specifies the linear density correction
619 to apply to the color values (P = d * p
<sup>g
</sup>) and is a
620 real number greater than
0 and less than or equal to
1. A value
621 1 of disables density correction while lower values produce
622 proportionately lighter output.
</p>
624 <p>The matrix argument specifies a
3x3 linear transformation
625 matrix in row-major order. The matrix is applied only to the CMY
626 component of a RGB to CMYK transformation and is not used when
627 printing in grayscale or CMYK mode unless the printer only
628 supports printing with
3 colors.
</p>
632 <p><a href='#SimpleColorProfile'
><code>SimpleColorProfile
</code></a></p>
635 <h2 class=
"title"><a name='Copyright'
>Copyright
</a></h2>
640 Copyright
<i>"text"</i>
646 Copyright
"Copyright 2008 by Foo Enterprises"
649 "This software is free software; you can redistribute it and/or
650 modify it under the terms of the GNU General Public License as
651 published by the Free Software Foundation; either version 2 of
652 the License, or (at your option) any later version.
654 This software is distributed in the hope that it will be useful,
655 but WITHOUT ANY WARRANTY; without even the implied warranty of
656 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
657 GNU General Public License for more details.
659 You should have received a copy of the GNU General Public
660 License along with this software; if not, write to the Free
661 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
667 <p>The
<code>Copyright
</code> directive adds text comments to the
668 top of a PPD file, typically for use in copyright notices. The
669 text argument can contain multiple lines of text, but no line
670 may exceed
255 characters.
</p>
673 <h2 class=
"title"><a name='CustomMedia'
>CustomMedia
</a></h2>
678 CustomMedia
<i>name width length left bottom right top
679 "size-code" "region-code"</i>
681 CustomMedia
<i>"name/text" width length left bottom right top
682 "size-code" "region-code"</i>
688 CustomMedia Letter
8.5in
11in
0.25in
0.46in
0.25in
0.04in
689 "<</PageSize[612 792]/ImagingBBox null/ManualFeed false>>
691 "<</PageSize[612 792]/ImagingBBox null/ManualFeed true>>
694 CustomMedia
"A4/A4 - 210x297mm" 210mm
297mm
12 12 12 12
695 "<</PageSize[595 842]/ImagingBBox null>>setpagedevice"
696 "<</PageSize[595 842]/ImagingBBox null>>setpagedevice"
701 <p>The
<code>CustomMedia
</code> directive adds a custom media size to
702 the driver. The name is any combination of letters, numbers,
703 and the underscore and can be up to
40 characters in length.
</p>
705 <p>If provided, the text can be any string up to
80 characters
706 in length. If no text is provided, the name is used.
</p>
708 <p>The width and length arguments specify the dimensions of the
709 media as defined for the
<a href=
"#_media"><code>#media
</code></a>
712 <p>The left, bottom, right, and top arguments specify the
713 printable margins of the media.
</p>
715 <p>The size-code and region-code arguments specify the
716 PostScript commands to run for the
<code>PageSize
</code> and
717 <code>PageRegion
</code> options, respectively. The commands can
718 contain multiple lines, however no line may be more than
255
719 characters in length.
</p>
723 <p><a href='#_media'
><code>#media
</code></a>,
724 <a href='#MediaSize'
><code>MediaSize
</code></a></p>
727 <h2 class=
"title"><a name='Cutter'
>Cutter
</a></h2>
732 Cutter
<i>boolean-value
</i>
744 <p>The
<code>Cutter
</code> directive specifies whether the printer
745 has a built-in media cutter. When a cutter is present, the
746 printer's PPD file will contain a
<code>CutMedia
</code> option that
747 allows the user to control whether the media is cut at the end
752 <p><a href='#Choice'
><code>Choice
</code></a>,
753 <a href='#ColorModel'
><code>ColorModel
</code></a>,
754 <a href='#Darkness'
><code>Darkness
</code></a>,
755 <a href='#Duplex'
><code>Duplex
</code></a>,
756 <a href='#Finishing'
><code>Finishing
</code></a>,
757 <a href='#Group'
><code>Group
</code></a>,
758 <a href='#InputSlot'
><code>InputSlot
</code></a>,
759 <a href='#Installable'
><code>Installable
</code></a>,
760 <a href='#MediaType'
><code>MediaType
</code></a>,
761 <a href='#Option'
><code>Option
</code></a>,
762 <a href='#Resolution'
><code>Resolution
</code></a>,
763 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
766 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='Darkness'
>Darkness
</a></h2>
771 Darkness
<i>temperature name
</i>
772 Darkness
<i>temperature
"name/text"</i>
779 Darkness
2 "Normal/Standard"
784 <p>The
<code>Darkness
</code> directive defines a choice for the
785 <code>cupsDarkness
</code> option which sets the
786 <code>cupsCompression
</code> attribute in the PostScript page device
787 dictionary. It is used with the CUPS
<VAR>rastertolabel
</VAR>
788 sample driver to control the print head temperature and
789 therefore the darkness of the print.
</p>
791 <p>The temperature argument specifies a temperature value for
792 the Dymo driver from
0 (lowest) to
3 (highest), with
2
793 representing the normal setting.
</p>
795 <p>The name is any combination of letters, numbers, and the
796 underscore and can be up to
40 characters in length.
</p>
798 <p>If provided, the text can be any string up to
80 characters
799 in length. If no text is provided, the name is used.
</p>
803 <p><a href='#Choice'
><code>Choice
</code></a>,
804 <a href='#ColorModel'
><code>ColorModel
</code></a>,
805 <a href='#Cutter'
><code>Cutter
</code></a>,
806 <a href='#Duplex'
><code>Duplex
</code></a>,
807 <a href='#Finishing'
><code>Finishing
</code></a>,
808 <a href='#Group'
><code>Group
</code></a>,
809 <a href='#InputSlot'
><code>InputSlot
</code></a>,
810 <a href='#Installable'
><code>Installable
</code></a>,
811 <a href='#MediaType'
><code>MediaType
</code></a>,
812 <a href='#Option'
><code>Option
</code></a>,
813 <a href='#Resolution'
><code>Resolution
</code></a>,
814 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
817 <h2 class=
"title"><a name='DriverType'
>DriverType
</a></h2>
822 DriverType
<i>type
</i>
836 <p>The
<code>DriverType
</code> directive tells the PPD compiler
837 which DDK filters to include in the PPD file. The following
838 types are supported:
</p>
842 <li><code>custom
</code> - Use only those filters that are
843 defined in the driver information file
</li>
845 <li><code>epson
</code> - Use the CUPS sample Epson driver filter
846 <var>rastertoepson
</var></li>
848 <li><code>escp
</code> - Use the ESC/P DDK driver filters
849 <var>commandtoescpx
</var> and
850 <var>rastertoescpx
</var></li>
852 <li><code>hp
</code> - Use the CUPS sample HP driver filter
853 <var>rastertohp
</var></li>
855 <li><code>label
</code> - Use the CUPS sample label driver filter
<var>rastertolabel
</var></li>
857 <li><code>pcl
</code> - Use the HP-PCL DDK driver filters
858 <var>commandtopclx
</var> and
859 <var>rastertopclx
</var></li>
861 <li><code>ps
</code> - Use no filters; this driver is for a
862 standard PostScript device
</li>
868 <p><a href='#Filter'
><code>Filter
</code></a>,
869 <a href='#ModelNumber'
><code>ModelNumber
</code></a></p>
872 <h2 class=
"title"><a name='Duplex'
>Duplex
</a></h2>
892 <p>The
<code>Duplex
</code> directive determines whether double-sided printing
893 is supported in the current driver. The type argument specifies the type
894 of duplexing that is supported:
</p>
898 <li><code>none
</code> - double-sided printing is not
901 <li><code>normal
</code> - double-sided printing is
904 <li><code>flip
</code> - double-sided printing is supported,
905 but the back side image needs to be flipped vertically
906 (used primarily with inkjet printers)
</li>
908 <li><code>rotated
</code> - double-sided printing is supported,
909 but the back side image needs to be rotated
180 degrees for
912 <li><code>manualtumble
</code> - double-sided printing is supported,
913 but the back side image needs to be rotated
180 degrees for
920 <p><a href='#Choice'
><code>Choice
</code></a>,
921 <a href='#ColorModel'
><code>ColorModel
</code></a>,
922 <a href='#Cutter'
><code>Cutter
</code></a>,
923 <a href='#Darkness'
><code>Darkness
</code></a>,
924 <a href='#Finishing'
><code>Finishing
</code></a>,
925 <a href='#Group'
><code>Group
</code></a>,
926 <a href='#InputSlot'
><code>InputSlot
</code></a>,
927 <a href='#Installable'
><code>Installable
</code></a>,
928 <a href='#MediaType'
><code>MediaType
</code></a>,
929 <a href='#Option'
><code>Option
</code></a>,
930 <a href='#Resolution'
><code>Resolution
</code></a>,
931 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
934 <h2 class=
"title"><a name='FileName'
>FileName
</a></h2>
939 FileName
<i>"filename"</i>
945 FileName
"Acme Laser Printer 2000"
946 FileName
"Acme Ink Waster 1000"
951 <p>The
<code>FileName
</code> attribute specifies the
"long" name of the
952 PPD file for the current driver.
</p>
956 <p><a href='#Manufacturer'
><code>Manufacturer
</code></a>,
957 <a href='#ModelName'
><code>ModelName
</code></a>,
958 <a href=
"#PCFileName"><code>PCFileName
</code></a>,
959 <a href='#Version'
><code>Version
</code></a></p>
962 <h2 class=
"title"><a name='Filter'
>Filter
</a></h2>
967 Filter
<i>mime-type cost program
</i>
973 Filter application/vnd.cups-raster
50 rastertofoo
974 Filter application/vnd.hp-HPGL
25 /usr/foo/filter/hpgltofoo
979 <p>The
<code>Filter
</code> directive adds a filter for the current
980 driver. The mime-type argument is a valid MIME media type name
981 as defined in a CUPS
<var>mime.types
</var> file.
</p>
983 <p>The cost argument specifies the relative cost of the filter.
984 In general, use a number representing the average percentage of
985 CPU time that is used when printing the specified MIME media
988 <p>The program argument specifies the program to run; if the
989 program is not an absolute filename, then CUPS will look for the
990 program in the CUPS filter directory.
</p>
994 <p><a href='#DriverType'
><code>DriverType
</code></a></p>
997 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='Finishing'
>Finishing
</a></h2>
1002 Finishing
<i>name
</i>
1003 Finishing
<i>"name/text"</i>
1010 Finishing
"Glossy/Photo Overcoat"
1013 <h3>Description
</h3>
1015 <p>The
<code>Finishing
</code> directive adds a choice to the
1016 <code>cupsFinishing
</code> option. The name is any combination of
1017 letters, numbers, and the underscore and can be up to
40
1018 characters in length. The name is stored in the
1019 <code>OutputType
</code> attribute in the PostScript page device
1022 <p>If provided, the text can be any string up to
80 characters
1023 in length. If no text is provided, the name is used.
</p>
1027 <p><a href='#Choice'
><code>Choice
</code></a>,
1028 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1029 <a href='#Cutter'
><code>Cutter
</code></a>,
1030 <a href='#Darkness'
><code>Darkness
</code></a>,
1031 <a href='#Duplex'
><code>Duplex
</code></a>,
1032 <a href='#Group'
><code>Group
</code></a>,
1033 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1034 <a href='#Installable'
><code>Installable
</code></a>,
1035 <a href='#MediaType'
><code>MediaType
</code></a>,
1036 <a href='#Option'
><code>Option
</code></a>,
1037 <a href='#Resolution'
><code>Resolution
</code></a>,
1038 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1041 <h2 class=
"title"><a name='Font'
>Font
</a></h2>
1046 Font
<i>name encoding
"version" charset status
</i>
1054 Font Courier Standard
"(1.05)" Standard ROM
1055 Font Symbol Special
"(001.005)" Special ROM
1056 Font Barcode-Foo Special
"(1.0)" Special Disk
1057 Font Unicode-Foo Expert
"(2.0)" Adobe-Identity ROM
1060 <h3>Description
</h3>
1062 <p>The
<code>Font
</code> directive defines a
"device font" for the
1063 current printer driver. The name is the PostScript font
1066 <p>The encoding is the default encoding of the font, usually
1067 <code>Standard
</code>,
<code>Expert
</code>, or
<code>Special
</code>, as
1068 defined in the Adobe PPD file specification.
</p>
1070 <p>The version is the PostScript string definition that
1071 corresponds to the font version number.
</p>
1073 <p>The charset defines the available characters in the font,
1074 usually
<code>Standard
</code> or
<code>Special
</code>, as defined in the
1075 Adobe PPD file specification.
</p>
1077 <p>The status is the installation status of the font and must be
1078 either the word
<code>ROM
</code> or
<code>Disk
</code>.
</p>
1080 <p>Device fonts differ from fonts defined using the
<a
1081 href='#_font'
><code>#font
</code></a> directive in that they are
1082 automatically associated with the current driver. Fonts defined
1083 using
<code>#font
</code> may be imported into the current driver
1084 using the
<code>Font *
</code> form of this directive.
</p>
1088 <p><a href='#_font'
><code>#font
</code></a></p>
1091 <h2 class=
"title"><a name='Group'
>Group
</a></h2>
1097 Group
<i>"name/text"</i>
1104 Group
"InstallableOptions/Options Installed"
1105 Group
"Special/Vendor Options"
1108 <h3>Description
</h3>
1110 <p>The
<code>Group
</code> directive specifies the group for new
1111 <code>Option
</code> directives. The name is any combination of
1112 letters, numbers, and the underscore and can be up to
40
1113 characters in length. The names
<code>General
</code> and
1114 <code>InstallableOptions
</code> are predefined for the standard
1115 Adobe UI keywords and for installable options, respectively.
</p>
1117 <p>If provided, the text can be any string up to
40 characters
1118 in length. If no text is provided, the name is used.
</p>
1120 <center><table width='
80%' border='
1' bgcolor='#cccccc' cellpadding='
5' cellspacing='
0'
>
1122 <td align='justify'
><b>Note:
</b>
1124 <p>Because of certain API binary compatibility issues,
1125 CUPS limits the length of PPD group translation strings
1126 (text) to
40 characters, while the PPD specification
1127 allows for up to
80 characters.
</p>
1135 <p><a href='#Choice'
><code>Choice
</code></a>,
1136 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1137 <a href='#Cutter'
><code>Cutter
</code></a>,
1138 <a href='#Darkness'
><code>Darkness
</code></a>,
1139 <a href='#Duplex'
><code>Duplex
</code></a>,
1140 <a href='#Finishing'
><code>Finishing
</code></a>,
1141 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1142 <a href='#Installable'
><code>Installable
</code></a>,
1143 <a href='#MediaType'
><code>MediaType
</code></a>,
1144 <a href='#Option'
><code>Option
</code></a>,
1145 <a href='#Resolution'
><code>Resolution
</code></a>,
1146 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1149 <h2 class=
"title"><a name='HWMargins'
>HWMargins
</a></h2>
1154 HWMargins
<i>left bottom right top
</i>
1160 HWMargins
18 36 18 36
1161 HWMargins
0.25in
0.5in
0.25in
0.5in
1162 HWMargins
0.6cm
1.2cm
0.6cm
1.2cm
1165 <h3>Description
</h3>
1167 <p>The
<code>HWMargins
</code> directive specifies the current
1168 margins for
<a href='#MediaSize'
><code>MediaSize
</code></a> that
1169 follow. The left, bottom, right, and top margin values specify
1170 the printable margins.
</p>
1174 <p><a href='#MediaSize'
><code>MediaSize
</code></a></p>
1177 <h2 class=
"title"><a name='InputSlot'
>InputSlot
</a></h2>
1182 InputSlot
<i>position name
</i>
1183 InputSlot
<i>position
"name/text"</i>
1190 InputSlot
1 "Upper/Tray 1"
1193 <h3>Description
</h3>
1195 <p>The
<code>InputSlot
</code> directive adds a new choice to the
1196 <code>InputSlot
</code> option. The position argument is a number
1197 from
0 to
2<sup>32</sup>-
1 specifying the value that is placed
1198 in the
<code>MediaPosition
</code> attribute in the PostScript page
1199 device dictionary.
</p>
1201 <p>The name is any combination of letters, numbers, and the
1202 underscore and can be up to
40 characters in length.
</p>
1204 <p>If provided, the text can be any string up to
80 characters
1205 in length. If no text is provided, the name is used.
</p>
1209 <p><a href='#Choice'
><code>Choice
</code></a>,
1210 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1211 <a href='#Cutter'
><code>Cutter
</code></a>,
1212 <a href='#Darkness'
><code>Darkness
</code></a>,
1213 <a href='#Duplex'
><code>Duplex
</code></a>,
1214 <a href='#Finishing'
><code>Finishing
</code></a>,
1215 <a href='#Group'
><code>Group
</code></a>,
1216 <a href='#Installable'
><code>Installable
</code></a>,
1217 <a href='#MediaType'
><code>MediaType
</code></a>,
1218 <a href='#Option'
><code>Option
</code></a>,
1219 <a href='#Resolution'
><code>Resolution
</code></a>,
1220 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1223 <h2 class=
"title"><a name='Installable'
>Installable
</a></h2>
1228 Installable
<i>name
</i>
1229 Installable
<i>"name/text"</i>
1236 Installable
"Option1/Duplexer Installed"
1239 <h3>Description
</h3>
1241 <p>The
<code>Installable
</code> directive adds a new boolean option
1242 to the
<code>InstallableOptions
</code> group with a default value of
1243 <code>False
</code>. The name is any combination of letters, numbers,
1244 and the underscore and can be up to
40 characters in length.
</p>
1246 <p>If provided, the text can be any string up to
80 characters
1247 in length. If no text is provided, the name is used.
</p>
1250 <h2 class=
"title"><a name='LocAttribute'
>LocAttribute
</a></h2>
1255 LocAttribute
<i>name
"keyword/text" value
</i>
1261 LocAttribute fooProfile
"Photo/Photographic Profile" "photopro.icc"
1264 <h3>Description
</h3>
1266 <p>The
<code>LocAttribute
</code> directive creates a localized PPD
1267 attribute. The name is any combination of letters, numbers, and the
1268 underscore and can be up to
40 characters in length.
</p>
1270 <p>The selector can be the empty string (
<code>""</code>), a keyword
1271 consisting of up to
40 letters, numbers, and the underscore, or
1272 a string composed of a keyword and user text of up to
80
1275 <p>The value is any string or number; the string may contain
1276 multiple lines, however no one line may exceed
255
1281 <p><a href=
"#Attribute"><code>Attribute
</code></a></p>
1284 <h2 class=
"title"><a name='ManualCopies'
>ManualCopies
</a></h2>
1289 ManualCopies
<i>boolean-value
</i>
1299 <h3>Description
</h3>
1301 <p>The
<code>ManualCopies
</code> directive specifies whether copies
1302 need to be produced by the RIP filters. The default is
1303 <code>no
</code>.
</p>
1307 <p><a href='#Choice'
><code>Choice
</code></a>,
1308 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1309 <a href='#Cutter'
><code>Cutter
</code></a>,
1310 <a href='#Darkness'
><code>Darkness
</code></a>,
1311 <a href='#Duplex'
><code>Duplex
</code></a>,
1312 <a href='#Finishing'
><code>Finishing
</code></a>,
1313 <a href='#Group'
><code>Group
</code></a>,
1314 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1315 <a href='#MediaType'
><code>MediaType
</code></a>,
1316 <a href='#Option'
><code>Option
</code></a>,
1317 <a href='#Resolution'
><code>Resolution
</code></a>,
1318 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1321 <h2 class=
"title"><a name='Manufacturer'
>Manufacturer
</a></h2>
1326 Manufacturer
<i>"name"</i>
1336 <h3>Description
</h3>
1338 <p>The
<code>Manufacturer
</code> directive specifies the
1339 manufacturer name for the current driver. The name argument must
1340 conform to the manufacturer name requirements in the Adobe PPD
1341 file specification.
</p>
1345 <p><a href=
"#FileName"><code>FileName
</code></a>,
1346 <a href='#ModelName'
><code>ModelName
</code></a>,
1347 <a href='#PCFileName'
><code>PCFileName
</code></a>,
1348 <a href='#Version'
><code>Version
</code></a></p>
1351 <h2 class=
"title"><a name='MaxSize'
>MaxSize
</a></h2>
1356 MaxSize
<i>width length
</i>
1366 <h3>Description
</h3>
1368 <p>The
<code>MaxSize
</code> directive specifies the maximum width
1369 and length that is supported for custom page sizes.
</p>
1373 <p><a href='#MinSize'
><code>MinSize
</code></a>,
1374 <a href='#VariablePaperSize'
><code>VariablePaperSize
</code></a></p>
1377 <h2 class=
"title"><a name='MediaSize'
>MediaSize
</a></h2>
1382 MediaSize
<i>name
</i>
1392 <h3>Description
</h3>
1394 <p>The
<code>MediaSize
</code> directive adds the named size to the
1395 current printer driver using the current margins defined with
1396 the
<a href=
"#HWMargins"><code>HWMargins
</code></a> directive. The
1397 name argument must match a media size defined using the
<a
1398 href=
"#_media"><code>#media
</code></a> directive.
</p>
1402 <p><a href='#_media'
><code>#media
</code></a>,
1403 <a href='#HWMargins'
><code>HWMargins
</code></a></p>
1406 <h2 class=
"title"><a name='MediaType'
>MediaType
</a></h2>
1411 MediaType
<i>type name
</i>
1412 MediaType
<i>type
"name/text"</i>
1419 MediaType
1 "Plain/Plain Paper"
1422 <h3>Description
</h3>
1424 <p>The
<code>MediaType
</code> directive adds a new choice to the
1425 <code>MediaType
</code> option. The type argument is a number
1426 from
0 to
2<sup>32</sup>-
1 specifying the value that is placed
1427 in the
<code>cupsMediaType
</code> attribute in the PostScript page
1428 device dictionary.
</p>
1430 <p>The name is any combination of letters, numbers, and the
1431 underscore and can be up to
40 characters in length. The name is
1432 placed in the
<code>MediaType
</code> attribute in the PostScript
1433 page device dictionary.
</p>
1435 <p>If provided, the text can be any string up to
80 characters
1436 in length. If no text is provided, the name is used.
</p>
1440 <p><a href='#Choice'
><code>Choice
</code></a>,
1441 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1442 <a href='#Cutter'
><code>Cutter
</code></a>,
1443 <a href='#Darkness'
><code>Darkness
</code></a>,
1444 <a href='#Duplex'
><code>Duplex
</code></a>,
1445 <a href='#Finishing'
><code>Finishing
</code></a>,
1446 <a href='#Group'
><code>Group
</code></a>,
1447 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1448 <a href='#Installable'
><code>Installable
</code></a>,
1449 <a href='#Option'
><code>Option
</code></a>,
1450 <a href='#Resolution'
><code>Resolution
</code></a>,
1451 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1454 <h2 class=
"title"><a name='MinSize'
>MinSize
</a></h2>
1459 MinSize
<i>width length
</i>
1469 <h3>Description
</h3>
1471 <p>The
<code>MinSize
</code> directive specifies the minimum width
1472 and length that is supported for custom page sizes.
</p>
1476 <p><a href='#MaxSize'
><code>MaxSize
</code></a>,
1477 <a href='#VariablePaperSize'
><code>VariablePaperSize
</code></a></p>
1480 <h2 class=
"title"><a name='ModelName'
>ModelName
</a></h2>
1485 ModelName
<i>"name"</i>
1491 ModelName
"Foo Laser Printer 2000"
1492 ModelName
"Colorific 123"
1495 <h3>Description
</h3>
1497 <p>The
<code>ModelName
</code> directive sets the printer name for
1498 the
<code>ModelName
</code>,
<code>NickName
</code>, and
1499 <code>ShortNickName
</code> attributes for the printer driver. The
1500 name is any string of letters, numbers, spaces, and the
1501 characters
".",
"/",
"-", and
"+" and should not begin with the
1502 manufacturer name since the PPD compiler will add this
1503 automatically for you. The maximum length of the name string is
1504 31 characters to conform to the Adobe limits on the length of
1505 <code>ShortNickName
</code>.
</p>
1509 <p><a href=
"#FileName"><code>FileName
</code></a>,
1510 <a href='#Manufacturer'
><code>Manufacturer
</code></a>,
1511 <a href='#PCFileName'
><code>PCFileName
</code></a>,
1512 <a href='#Version'
><code>Version
</code></a></p>
1515 <h2 class=
"title"><a name='ModelNumber'
>ModelNumber
</a></h2>
1520 ModelNumber
<i>expression
</i>
1527 ModelNumber ($PCL_PAPER_SIZE $PCL_PJL)
1530 <h3>Description
</h3>
1532 <p>The
<code>ModelNumber
</code> directive sets the
1533 <code>cupsModelNumber
</code> attribute for the printer driver, which
1534 is often used by the printer driver filter to tailor its output
1535 for the current device. The number is any integer or bitwise OR
1536 of integers and constants that is appropriate for the printer
1539 <p>A complete list of printer driver model number constants is
1540 available later in this appendix in the section titled,
"<a
1541 href='#REF_MODEL_NUMBER'>Printer Driver ModelNumber
1546 <p><a href='#DriverType'
><code>DriverType
</code></a>,
1547 <a href='#Filter'
><code>Filter
</code></a></p>
1550 <h2 class=
"title"><a name='Option'
>Option
</a></h2>
1555 Option
<i>name type section order
</i>
1556 Option
<i>"name/text" type section order
</i>
1562 Option Punch Boolean AnySetup
10
1563 Option
"fooFinish/Finishing Option" PickOne DocumentSetup
10
1566 <h3>Description
</h3>
1568 <p>The
<code>Option
</code> directive creates a new option in the
1569 current group, by default the
<code>General
</code> group. The name
1570 is any combination of letters, numbers, and the underscore and
1571 can be up to
40 characters in length.
</p>
1573 <p>If provided, the text can be any string up to
80 characters
1574 in length. If no text is provided, the name is used.
</p>
1576 <p>The type argument is one of the following keywords:
</p>
1580 <li><code>Boolean
</code> - a true/false option
</li>
1582 <li><code>PickOne
</code> - allows the user to pick one
1583 choice from a list
</li>
1585 <li><code>PickMany
</code> - allows the user to pick zero or
1586 more choices from a list
</li>
1590 <p>The section argument is one of the following keywords:
</p>
1594 <li><code>AnySetup
</code> - The option can be placed in
1595 either the DocumentSetup or PageSetup sections of the
1596 PostScript document
</li>
1598 <li><code>DocumentSetup
</code> - The option must be placed
1599 in the DocumentSetup section of the PostScript document;
1600 this does not allow the option to be overridden on
1601 individual pages
</li>
1603 <li><code>ExitServer
</code> - The option must be placed in a
1604 separate initialization job prior to the document (not
1605 used for raster printer drivers)
</li>
1607 <li><code>JCLSetup
</code> - The option contains job control
1608 language commands and must be sent prior to the document
1609 using the
<code>JCLBegin
</code> and
1610 <code>JCLToPSInterpreter
</code> attributes (not used for
1611 raster printer drivers)
</li>
1613 <li><code>PageSetup
</code> - The option must be placed at the
1614 beginning of each page in the PostScript document
</li>
1616 <li><code>Prolog
</code> - The option must be placed in the
1617 prolog section of the PostScript document; this is
1618 typically used to add special comments for high-end
1619 typesetters, but can also be used to add CUPS PostScript
1620 job ticket comments.
</li>
1624 <p>The order argument is a real number greater than or equal to
1625 0.0 and is used to sort the printer commands from many options
1626 before sending them to the printer or RIP filter.
</p>
1630 <p><a href='#Choice'
><code>Choice
</code></a>,
1631 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1632 <a href='#Cutter'
><code>Cutter
</code></a>,
1633 <a href='#Darkness'
><code>Darkness
</code></a>,
1634 <a href='#Duplex'
><code>Duplex
</code></a>,
1635 <a href='#Finishing'
><code>Finishing
</code></a>,
1636 <a href='#Group'
><code>Group
</code></a>,
1637 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1638 <a href='#Installable'
><code>Installable
</code></a>,
1639 <a href='#MediaType'
><code>MediaType
</code></a>,
1640 <a href='#Resolution'
><code>Resolution
</code></a>,
1641 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1644 <h2 class=
"title"><a name='PCFileName'
>PCFileName
</a></h2>
1649 PCFileName
<i>"filename.ppd"</i>
1655 PCFileName
"foljt2k1.ppd"
1656 PCFileName
"deskjet.ppd"
1659 <h3>Description
</h3>
1661 <p>The
<code>PCFileName
</code> attribute specifies the name of the
1662 PPD file for the current driver. The filename argument must
1663 conform to the Adobe PPD file specification and can be no more
1664 than
8 filename characters plus the extension
".ppd".
</p>
1668 <p><a href=
"#FileName"><code>FileName
</code></a>,
1669 <a href='#Manufacturer'
><code>Manufacturer
</code></a>,
1670 <a href='#ModelName'
><code>ModelName
</code></a>,
1671 <a href='#Version'
><code>Version
</code></a></p>
1674 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='Resolution'
>Resolution
</a></h2>
1679 Resolution
<i>colorspace bits-per-color row-count row-feed row-step name
</i>
1680 Resolution
<i>colorspace bits-per-color row-count row-feed row-step
"name/text"</i>
1686 Resolution -
8 0 0 0 300dpi
1687 Resolution k
8 0 0 0 "600x300dpi/600 DPI Grayscale"
1690 <h3>Description
</h3>
1692 <p>The
<code>Resolution
</code> directive creates a new
1693 <code>Resolution
</code> option choice which sets the
1694 <code>HWResolution
</code>,
<code>cupsBitsPerColor
</code>,
1695 <code>cupsRowCount
</code>,
<code>cupsRowFeed
</code>,
1696 <code>cupsRowStep
</code>, and optionally the
<code>cupsColorSpace
</code>
1697 page device dictionary attributes. The colorspace argument
1698 specifies a colorspace to use for the specified resolution and
1699 can be the hyphen (
<code>-
</code>) character to make no change to
1700 the selected color model or any keyword listed in the section
1701 titled,
"<a href='#REF_COLOR_SPACE'>Colorspace Keywords</a>", to
1702 force the named colorspace.
</p>
1704 <p>The bits-per-color argument specifies the number of bits per
1705 color to generate when RIP'ing a job. The values
1,
2,
4, and
8
1706 are currently supported by CUPS.
</p>
1708 <p>The row-count, row-feed, and row-step argument specify the
1709 driver-dependent values for the
<code>cupsRowCount
</code>,
1710 <code>cupsRowFeed
</code>, and
<code>cupsRowStep
</code> attributes,
1711 respectively. Most drivers leave these attributes set to
0, but
1712 any number from
0 to
2<sup>32</sup>-
1 is allowed.
</p>
1714 <p>The name argument must conform to the resolution naming
1715 conventions in the Adobe PPD file specification, either
1716 <code>HHHdpi
</code> for symmetric resolutions or
<code>HHHxVVVdpi
</code>
1717 for asymmetric resolutions. The
<code>HHH
</code> and
<code>VVV
</code> in
1718 the examples represent the horizontal and vertical resolutions
1719 which must be positive integer values.
</p>
1721 <p>If provided, the text can be any string up to
80 characters
1722 in length. If no text is provided, the name is used.
</p>
1726 <p><a href='#Choice'
><code>Choice
</code></a>,
1727 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1728 <a href='#Cutter'
><code>Cutter
</code></a>,
1729 <a href='#Darkness'
><code>Darkness
</code></a>,
1730 <a href='#Duplex'
><code>Duplex
</code></a>,
1731 <a href='#Finishing'
><code>Finishing
</code></a>,
1732 <a href='#Group'
><code>Group
</code></a>,
1733 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1734 <a href='#Installable'
><code>Installable
</code></a>,
1735 <a href='#MediaType'
><code>MediaType
</code></a>,
1736 <a href='#Option'
><code>Option
</code></a>,
1737 <a href='#UIConstraints'
><code>UIConstraints
</code></a></p>
1740 <h2 class=
"title"><span class=
"info">Deprecated
</span><a name='SimpleColorProfile'
>SimpleColorProfile
</a></h2>
1745 SimpleColorProfile
<i>resolution/mediatype density
1746 yellow-density red-density gamma
1747 red-adjust green-adjust blue-adjust
</i>
1753 SimpleColorProfile -/-
100 100 200 1.0 0 0 0
1755 SimpleColorProfile
360dpi/-
100 95 150 1.2 5 10 15
1757 SimpleColorProfile
720dpi/Glossy
100 90 120 1.5 -
5 5 10
1760 <h3>Description
</h3>
1762 <p>The
<code>SimpleColorProfile
</code> directive creates a
1763 matrix-based
<a href=
"#ColorProfile"><code>ColorProfile
</code></a>
1764 using values chosen with the
<code>cupsprofile(
1)
</code> utility.
1765 The resolution and mediatype arguments specify the
1766 <code>Resolution
</code> and
<code>MediaType
</code> choices which use the
1767 profile; the hyphen (
<code>-
</code>) is used to specify that any
1768 resolution or mediatype can be used with the profile.
</p>
1770 <p>The density argument specifies the linear density correction
1771 to apply to the color values (P = d *
0.01 * p
<sup>g
</sup>) and
1772 is an integer greater than
0 and less than or equal to
100. A
1773 value
100 of disables density correction while lower values
1774 produce proportionately lighter output. The density value
1775 adjusts all color channels equally in all color modes.
</p>
1777 <p>The yellow-density argument specifies the density of the
1778 yellow channel when printing in grayscale or RGB mode and is an
1779 integer greater than
0 and less then or equal to
100. A value of
1780 100 disables yellow density correction while lower values
1781 produce proportionately lighter output.
</p>
1783 <P>The red-density argument specifies the two-color density
1784 limit (e.g. C + M, C + Y, M + Y) when printing in grayscale or
1785 RGB mode and is an integer greater than
0 and less then or equal
1786 to
200. A value of
200 disables two-color density correction
1787 while lower values produce proportionately lighter output.
</p>
1789 <p>The gamma argument specifies the gamma correction to apply to
1790 the color values (P = p
<sup>g
</sup>) and is a real number
1791 greater than
0. Values larger than
1 cause a general lightening
1792 of the print while values smaller than
1 cause a general
1793 darkening of the print. A value of
1 disables gamma
1796 <p>The red-adjust, green-adjust, blue-adjust arguments specify
1797 the percentage of color to add or remove. Positive red-adjust
1798 values add magenta and negative values add yellow. Positive
1799 green-adjust values add cyan and negative values add yellow.
1800 Positive blue-adjust values add cyan and negative values add
1801 magenta. Values of
0 disable color adjustments.
</p>
1805 <p><a href='#ColorProfile'
><code>ColorProfile
</code></a></p>
1808 <h2 class=
"title"><a name='Throughput'
>Throughput
</a></h2>
1813 Throughput
<i>pages-per-minute
</i>
1823 <h3>Description
</h3>
1825 <p>The
<code>Througput
</code> directive sets the
<code>Troughput
</code>
1826 attribute for the current printer driver. The pages-per-minute
1827 argument is a positive integer representing the peak number of
1828 pages per minute that the printer is capable of producing. Use a
1829 value of
1 for printers that produce less than
1 page per
1833 <h2 class=
"title"><a name='UIConstraints'
>UIConstraints
</a></h2>
1838 UIConstraints
<i>"*Option1 *Option2"</i>
1839 UIConstraints
<i>"*Option1 Choice1 *Option2"</i>
1840 UIConstraints
<i>"*Option1 *Option2 Choice2"</i>
1841 UIConstraints
<i>"*Option1 Choice1 *Option2 Choice2"</i>
1847 UIConstraints
"*Finishing *MediaType"
1848 UIConstraints
"*Option1 False *Duplex"
1849 UIConstraints
"*Duplex *MediaType Transparency"
1850 UIConstraints
"*Resolution 600dpi *ColorModel RGB"
1853 <h3>Description
</h3>
1855 <p>The
<code>UIConstraints
</code> directive adds a constraint
1856 between two options. Constraints inform the application when a
1857 user has chosen incompatible options. Each option name is
1858 preceded by the asterisk (
<code>*
</code>). If no choice is given for
1859 an option, then all choices
<i>except
</i> <code>False
</code> and
1860 <code>None
</code> will conflict with the other option and choice(s).
1861 Since the PPD compiler automatically adds reciprocal constraints
1862 (option A conflicts with option B, so therefore option B
1863 conflicts with option A), you need only specify the constraint
1868 <p><a href='#Choice'
><code>Choice
</code></a>,
1869 <a href='#ColorModel'
><code>ColorModel
</code></a>,
1870 <a href='#Cutter'
><code>Cutter
</code></a>,
1871 <a href='#Darkness'
><code>Darkness
</code></a>,
1872 <a href='#Duplex'
><code>Duplex
</code></a>,
1873 <a href='#Finishing'
><code>Finishing
</code></a>,
1874 <a href='#Group'
><code>Group
</code></a>,
1875 <a href='#InputSlot'
><code>InputSlot
</code></a>,
1876 <a href='#Installable'
><code>Installable
</code></a>,
1877 <a href='#MediaType'
><code>MediaType
</code></a>,
1878 <a href='#Option'
><code>Option
</code></a>,
1879 <a href='#Resolution'
><code>Resolution
</code></a></p>
1882 <h2 class=
"title"><a name='VariablePaperSize'
>VariablePaperSize
</a></h2>
1887 VariablePaperSize
<i>boolean-value
</i>
1893 VariablePaperSize yes
1894 VariablePaperSize no
1897 <h3>Description
</h3>
1899 <p>The
<code>VariablePaperSize
</code> directive specifies whether
1900 the current printer supports variable (custom) page sizes. When
1901 <code>yes
</code> is specified, the PPD compiler will include the
1902 standard PPD attributes required to support custom page
1907 <p><a href='#MaxSize'
><code>MaxSize
</code></a>,
1908 <a href='#MinSize'
><code>MinSize
</code></a></p>
1911 <h2 class=
"title"><a name='Version'
>Version
</a></h2>
1916 Version
<i>number
</i>
1926 <h3>Description
</h3>
1928 <p>The
<code>Version
</code> directive sets the
<code>FileVersion
</code>
1929 attribute in the PPD file and is also used for the
1930 <code>NickName
</code> attribute. The number argument is a positive
1935 <p><a href='#Manufacturer'
><code>Manufacturer
</code></a>,
1936 <a href='#ModelName'
><code>ModelName
</code></a>,
1937 <a href='#PCFileName'
><code>PCFileName
</code></a></p>
1940 <h2 class=
"title"><a name='REF_INCLUDE'
>Standard Include Files
</h2>
1942 <p><a href='#TABLEB-
1'
>Table B-
1</a> shows the standard include
1943 files which are provided with the DDK.
</p>
1945 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
1946 <caption align='bottom'
><a name='TABLEB-
1'
><i>Table B-
1,
1947 Standard Include Files
</i></a></caption>
1948 <tr bgcolor='#cccccc'
>
1949 <th>Include File
</th>
1950 <th>Description
</th>
1953 <td valign='top'
><code><font.defs
></code></td>
1954 <td align='justify' valign='top'
>Defines all of the
1955 standard fonts which are included with ESP Ghostscript
1956 and the Apple PDF RIP.
</td>
1959 <td valign='top'
><code><epson.h
></code></td>
1960 <td align='justify' valign='top'
>Defines all of the
1961 CUPS ESC/P sample driver constants.
</td>
1964 <td valign='top'
><code><escp.h
></code></td>
1965 <td align='justify' valign='top'
>Defines all of the
1966 DDK ESC/P driver constants.
</td>
1969 <td valign='top'
><code><hp.h
></code></td>
1970 <td align='justify' valign='top'
>Defines all of the
1971 CUPS HP-PCL sample driver constants.
</td>
1974 <td valign='top'
><code><label.h
></code></td>
1975 <td align='justify' valign='top'
>Defines all of the
1976 CUPS label sample driver constants.
</td>
1979 <td valign='top'
><code><media.defs
></code></td>
1980 <td align='justify' valign='top'
>Defines all of the
1981 standard media sizes listed in Appendix B of the Adobe
1982 PostScript Printer Description File Format
1986 <td valign='top'
><code><pcl.h
></code></td>
1987 <td align='justify' valign='top'
>Defines all of the
1988 DDK HP-PCL driver constants.
</td>
1991 <td valign='top'
><code><raster.defs
></code></td>
1992 <td align='justify' valign='top'
>Defines all of the CUPS
1993 raster format constants.
</td>
1997 <h2 class=
"title"><a name='REF_MODEL_NUMBER'
>Printer Driver ModelNumber Constants
</a></h2>
1999 <p>The CUPS DDK and sample drivers use the
2000 <code>cupsModelNumber
</code> attribute in the PPD file to tailor
2001 their output to the printer. The following sections describe the
2002 constants for each driver.
</p>
2004 <h3><a name='REF_MODEL_EPSON'
>The CUPS ESC/P Sample Driver (epson)
</a></h3>
2006 <p>The
<code>epson
</code> driver supports Epson and Okidata
2007 dot-matrix, Epson Stylus Color, and Epson Stylus Photo printers.
2008 <a href='#TABLEB-
2'
>Table B-
2</a> lists the constants for the
<a
2009 href='#ModelNumber'
><code>ModelNumber
</code></a> directive.
2010 <code>ModelNumber
</code> values should be inserted by referencing
2011 only one of these constants.
</p>
2014 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
2015 <caption align='bottom'
><a name='TABLEB-
2'
><i>Table B-
2,
<code>epson
</code> driver
2016 constants
</i></a></caption>
2017 <tr bgcolor='#cccccc'
>
2019 <th>Description
</th>
2022 <td valign='top'
><code>EPSON_9PIN
</code></td>
2023 <td align='justify' valign='top'
>Epson and Okidata
9-pin
2024 dot-matrix printers
</td>
2027 <td valign='top'
><code>EPSON_24PIN
</code></td>
2028 <td align='justify' valign='top'
>Epson and Okidata
24-pin
2029 dot-matrix printers
</td>
2032 <td valign='top'
><code>EPSON_COLOR
</code></td>
2033 <td align='justify' valign='top'
>Older Epson Stylus Color
2034 printers that use the
<code>ESC .
</code> graphics command
</td>
2037 <td valign='top'
><code>EPSON_PHOTO
</code></td>
2038 <td align='justify' valign='top'
>Older Epson Stylus Photo
2039 printers that use the
<code>ESC .
</code> graphics command
</td>
2042 <td valign='top'
><code>EPSON_ICOLOR
</code></td>
2043 <td align='justify' valign='top'
>Newer Epson Stylus Color
2044 printers that use the
<code>ESC i
</code> graphics command
</td>
2047 <td valign='top'
><code>EPSON_IPHOTO
</code></td>
2048 <td align='justify' valign='top'
>Newer Epson Stylus Photo
2049 printers that use the
<code>ESC i
</code> graphics command
</td>
2053 <h3><a name='REF_MODEL_HP'
>The CUPS HP-PCL Sample Driver (hp)
</a></h3>
2055 <p>The
<code>hp
</code> driver supports HP LaserJet and DeskJet
2056 printers.
<a href='#TABLEB-
3'
>Table B-
3</a> lists the constants
2057 for the
<a href='#ModelNumber'
><code>ModelNumber
</code></a>
2058 directive.
<code>ModelNumber
</code> values should be inserted by
2059 referencing only one of these constants.
</p>
2061 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
2062 <caption align='bottom'
><a name='TABLEB-
3'
><i>Table B-
3,
<code>hp
</code> driver
2063 constants
</i></a></caption>
2064 <tr bgcolor='#cccccc'
>
2066 <th>Description
</th>
2069 <td valign='top'
><code>HP_LASERJET
</code></td>
2070 <td align='justify' valign='top'
>HP LaserJet printers supporting
2074 <td valign='top'
><code>HP_DESKJET
</code></td>
2075 <td align='justify' valign='top'
>HP DeskJet printers
2076 supporting PCL
3 and using the simple color graphics
2077 command (
<code>ESC * r # U
</code>)
</td>
2080 <td valign='top'
><code>HP_DESKJET2
</code></td>
2081 <td align='justify' valign='top'
>HP DeskJet printers
2082 supporting PCL3GUI and using the configure raster graphics
2083 command (
<code>ESC * g # W
</code>)
</td>
2087 <h3><a name='REF_MODEL_LABEL'
>The CUPS Label Sample Driver (label)
</a></h3>
2089 <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>
2090 lists the constants for the
<a
2091 href='#ModelNumber'
><code>ModelNumber
</code></a> directive.
2092 <code>ModelNumber
</code> values should be inserted by referencing
2093 only one of these constants.
</p>
2095 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
2096 <caption align='bottom'
><a name='TABLEB-
4'
><i>Table B-
4,
<code>label
</code> driver
2097 constants
</i></a></caption>
2098 <tr bgcolor='#cccccc'
>
2100 <th>Description
</th>
2103 <td valign='top'
><code>DYMO_3x0
</code></td>
2104 <td align='justify' valign='top'
>Format output for the
2105 Dymo Labelwriter
300,
330, or
330 Turbo.
</td>
2108 <td valign='top'
><code>INTELLITECH_PCL
</code></td>
2109 <td align='justify' valign='top'
>Format output for the Intellitech PCL printers.
</td>
2112 <td valign='top'
><code>ZEBRA_CPCL
</code></td>
2113 <td align='justify' valign='top'
>Format output for the Zebra CPCL printers.
</td>
2116 <td valign='top'
><code>ZEBRA_EPL_LINE
</code></td>
2117 <td align='justify' valign='top'
>Format output for the Zebra EPL line mode (EPL
1) printers.
</td>
2120 <td valign='top'
><code>ZEBRA_EPL_PAGE
</code></td>
2121 <td align='justify' valign='top'
>Format output for the Zebra EPL page mode (EPL
2) printers.
</td>
2124 <td valign='top'
><code>ZEBRA_ZPL
</code></td>
2125 <td align='justify' valign='top'
>Format output for the Zebra ZPL printers.
</td>
2129 <h3><a name='REF_MODEL_ESCP'
>The DDK ESC/P Driver (escp)
</a></h3>
2131 <p>The
<code>escp
</code> driver supports all Epson inkjet printers.
2132 <a href='#TABLEB-
6'
>Table B-
6</a> lists the constants for the
<a
2133 href='#ModelNumber'
><code>ModelNumber
</code></a> directive.
2134 <code>ModelNumber
</code> values should be specified as the bitwise
2135 OR of one or more of these constants.
</p>
2137 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
2138 <caption align='bottom'
><a name='TABLEB-
6'
><i>Table B-
6,
<code>escp
</code> driver
2139 constants
</i></a></caption>
2140 <tr bgcolor='#cccccc'
>
2142 <th>Description
</th>
2145 <td valign='top'
><code>ESCP_MICROWEAVE
</code></td>
2146 <td align='justify' valign='top'
>Use microweave command?
</td>
2149 <td valign='top'
><code>ESCP_STAGGER
</code></td>
2150 <td align='justify' valign='top'
>Are color jets staggered?
</td>
2153 <td valign='top'
><code>ESCP_ESCK
</code></td>
2154 <td align='justify' valign='top'
>Use print mode command?
</td>
2157 <td valign='top'
><code>ESCP_EXT_UNITS
</code></td>
2158 <td align='justify' valign='top'
>Use extended unit commands?
</td>
2161 <td valign='top'
><code>ESCP_EXT_MARGINS
</code></td>
2162 <td align='justify' valign='top'
>Use extended margin command?
</td>
2165 <td valign='top'
><code>ESCP_USB
</code></td>
2166 <td align='justify' valign='top'
>Send USB packet mode escape
</td>
2169 <td valign='top'
><code>ESCP_PAGE_SIZE
</code></td>
2170 <td align='justify' valign='top'
>Use page size command
</td>
2173 <td valign='top'
><code>ESCP_RASTER_ESCI
</code></td>
2174 <td align='justify' valign='top'
>Use
<code>ESC i
</code> graphics command
</td>
2177 <td valign='top'
><code>ESCP_REMOTE
</code></td>
2178 <td align='justify' valign='top'
>Use remote mode commands
</td>
2181 <td valign='top'
><code>ESCP_REMOTE_AC
</code></td>
2182 <td align='justify' valign='top'
>Use auto-cutter command
</td>
2185 <td valign='top'
><code>ESCP_REMOTE_CO
</code></td>
2186 <td align='justify' valign='top'
>Use cutter-operation command
</td>
2189 <td valign='top'
><code>ESCP_REMOTE_EX
</code></td>
2190 <td align='justify' valign='top'
>Use media-position command
</td>
2193 <td valign='top'
><code>ESCP_REMOTE_MS
</code></td>
2194 <td align='justify' valign='top'
>Use media-size command
</td>
2197 <td valign='top'
><code>ESCP_REMOTE_MT
</code></td>
2198 <td align='justify' valign='top'
>Use media-type command
</td>
2201 <td valign='top'
><code>ESCP_REMOTE_PC
</code></td>
2202 <td align='justify' valign='top'
>Use paper-check command
</td>
2205 <td valign='top'
><code>ESCP_REMOTE_PH
</code></td>
2206 <td align='justify' valign='top'
>Use paper-thickness command
</td>
2209 <td valign='top'
><code>ESCP_REMOTE_PP
</code></td>
2210 <td align='justify' valign='top'
>Use paper-path command
</td>
2213 <td valign='top'
><code>ESCP_REMOTE_SN0
</code></td>
2214 <td align='justify' valign='top'
>Use feed-sequence-
0 command
</td>
2217 <td valign='top'
><code>ESCP_REMOTE_SN1
</code></td>
2218 <td align='justify' valign='top'
>Use platten-gap command
</td>
2221 <td valign='top'
><code>ESCP_REMOTE_SN2
</code></td>
2222 <td align='justify' valign='top'
>Use feed-sequence-
2 command
</td>
2225 <td valign='top'
><code>ESCP_REMOTE_SN6
</code></td>
2226 <td align='justify' valign='top'
>Use eject-delay command
</td>
2229 <td valign='top'
><code>ESCP_REMOTE_FP
</code></td>
2230 <td align='justify' valign='top'
>Use print-position command
</td>
2234 <h3><a name='REF_MODEL_PCL'
>The DDK HP-PCL Driver (pcl)
</a></h3>
2236 <p>The
<code>pcl
</code> driver supports all HP LaserJet, DeskJet,
2237 and DesignJet printers.
<a href='#TABLEB-
5'
>Table B-
5</a> lists
2238 the constants for the
<a
2239 href='#ModelNumber'
><code>ModelNumber
</code></a> directive.
2240 <code>ModelNumber
</code> values should be specified as the bitwise
2241 OR of one or more of these constants.
</p>
2243 <center><table border='
1' cellpadding='
5' cellspacing='
0' width='
80%'
>
2244 <caption align='bottom'
><a name='TABLEB-
5'
><i>Table B-
5,
<code>pcl
</code> driver
2245 constants
</i></a></caption>
2246 <tr bgcolor='#cccccc'
>
2248 <th>Description
</th>
2251 <td valign='top'
><code>PCL_PAPER_SIZE
</code></td>
2252 <td align='justify' valign='top'
>Use paper size command (
<code>ESC
& l # A
</code>)
</td>
2255 <td valign='top'
><code>PCL_INKJET
</code></td>
2256 <td align='justify' valign='top'
>Use inkjet commands
</td>
2259 <td valign='top'
><code>PCL_RASTER_END_COLOR
</code></td>
2260 <td align='justify' valign='top'
>Use new end-raster command (
<code>ESC * r C
</code>)
</td>
2263 <td valign='top'
><code>PCL_RASTER_CID
</code></td>
2264 <td align='justify' valign='top'
>Use configure-image-data command (
<code>ESC * v # W
</code>)
</td>
2267 <td valign='top'
><code>PCL_RASTER_CRD
</code></td>
2268 <td align='justify' valign='top'
>Use configure-raster-data command (
<code>ESC * g # W
</code>)
</td>
2271 <td valign='top'
><code>PCL_RASTER_SIMPLE
</code></td>
2272 <td align='justify' valign='top'
>Use simple-raster-color command (
<code>ESC * r # U
</code>)
</td>
2275 <td valign='top'
><code>PCL_RASTER_RGB24
</code></td>
2276 <td align='justify' valign='top'
>Use
24-bit RGB mode
</td>
2279 <td valign='top'
><code>PCL_PJL
</code></td>
2280 <td align='justify' valign='top'
>Use PJL commands
</td>
2283 <td valign='top'
><code>PCL_PJL_PAPERWIDTH
</code></td>
2284 <td align='justify' valign='top'
>Use PJL PAPERWIDTH/LENGTH commands
</td>
2287 <td valign='top'
><code>PCL_PJL_HPGL2
</code></td>
2288 <td align='justify' valign='top'
>Use PJL ENTER HPGL2 command
</td>
2291 <td valign='top'
><code>PCL_PJL_PCL3GUI
</code></td>
2292 <td align='justify' valign='top'
>Use PJL ENTER PCL3GUI command
</td>
2295 <td valign='top'
><code>PCL_PJL_RESOLUTION
</code></td>
2296 <td align='justify' valign='top'
>Use PJL SET RESOLUTION command
</td>
2300 <H2><A NAME=
"REF_COLOR">Color Keywords
</A></H2>
2302 <p>The PPD compiler defines two types of color keywords:
2303 colorspace and color order. The following sections list the
2304 supported keywords for each type.
</p>
2306 <H3><A NAME=
"REF_COLOR_SPACE">Colorspace Keywords
</A></H3>
2308 <P>The following colorspace keywords are recognized:
</P>
2312 <LI><TT>cielab
</TT> - CIE Lab
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2314 <LI><TT>ciexyz
</TT> - CIE XYZ
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2316 <LI><TT>cmy
</TT> - Cyan, magenta, yellow
</LI>
2318 <LI><TT>cmyk
</TT> - Cyan, magenta, yellow, black
</LI>
2320 <LI><TT>gmck
</TT> - Gold, magenta, yellow, black
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2322 <LI><TT>gmcs
</TT> - Gold, magenta, yellow, silver
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2324 <LI><TT>gold
</TT> - Gold foil
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2326 <LI><TT>icc1
</TT> - ICC-based,
1 color
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2328 <LI><TT>icc2
</TT> - ICC-based,
2 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2330 <LI><TT>icc3
</TT> - ICC-based,
3 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2332 <LI><TT>icc4
</TT> - ICC-based,
4 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2334 <LI><TT>icc5
</TT> - ICC-based,
5 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2336 <LI><TT>icc6
</TT> - ICC-based,
6 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2338 <LI><TT>icc7
</TT> - ICC-based,
7 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2340 <LI><TT>icc8
</TT> - ICC-based,
8 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2342 <LI><TT>icc9
</TT> - ICC-based,
9 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2344 <LI><TT>icca
</TT> - ICC-based,
10 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2346 <LI><TT>iccb
</TT> - ICC-based,
11 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2348 <LI><TT>iccc
</TT> - ICC-based,
12 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2350 <LI><TT>iccd
</TT> - ICC-based,
13 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2352 <LI><TT>icce
</TT> - ICC-based,
14 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2354 <LI><TT>iccf
</TT> - ICC-based,
15 colors
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2356 <LI><TT>k
</TT> - Black
</LI>
2358 <LI><TT>kcmy
</TT> - Black, cyan, magenta, yellow
<A HREF=
"#REF_COLOR_APPLE">*
</A></LI>
2360 <LI><TT>kcmycm
</TT> - Black, cyan, magenta, yellow, light-cyan, light-magenta
<A HREF=
"#REF_COLOR_APPLE">*
</A></LI>
2362 <LI><TT>rgb
</TT> - Red, green, blue
</LI>
2364 <LI><TT>rgba
</TT> - Red, green, blue, alpha
</LI>
2366 <LI><TT>rgbw
</TT> - Red, green, blue, luminance
<A HREF=
"#REF_COLOR_APPLE">*
</A></LI>
2368 <LI><TT>silver
</TT> - Silver foil
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2370 <LI><TT>w
</TT> - Luminance
</LI>
2372 <LI><TT>white
</TT> - White ink (as black)
<A HREF=
"#REF_COLOR_APPLE2">**
</A></LI>
2374 <LI><TT>ymc
</TT> - Yellow, magenta, cyan
<A HREF=
"#REF_COLOR_APPLE">*
</A></LI>
2376 <LI><TT>ymck
</TT> - Yellow, magenta, cyan, black
<A HREF=
"#REF_COLOR_APPLE">*
</A>
2380 <BR><A NAME=
"REF_COLOR_APPLE">*
</A> = This colorspace is not supported on Mac OS X prior to
10.4.
2381 <BR><A NAME=
"REF_COLOR_APPLE2">**
</A> = This colorspace is not supported on Mac OS X.
</LI>
2385 <H3><A NAME=
"REF_COLOR_ORDER">Color Order Keywords
</A></H3>
2387 <P>The following color order keywords are recognized:
</P>
2391 <LI><TT>chunked
</TT> or
<TT>chunky
</TT> - Color values
2392 are passed together on a line as RGB RGB RGB RGB
</LI>
2394 <LI><TT>banded
</TT> - Color values are passed separately
2395 on a line as RRRR GGGG BBBB
<A
2396 HREF=
"#REF_COLOR_APPLE2">*
</A></LI>
2398 <LI><TT>planar
</TT> - Color values are passed separately
2399 on a page as RRRR RRRR RRRR ... GGGG GGGG GGGG ... BBBB
2400 BBBB BBBB
<A HREF=
"#REF_COLOR_APPLE2">*
</A>
2404 <BR><A NAME=
"REF_COLOR_APPLE2">*
</A> = This color order
2405 is not supported by the current Apple RIP filters and
2406 should not be used when developing printer drivers for