summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorMichael R Sweet <michael.r.sweet@gmail.com>2019-02-18 10:33:49 -0500
committerMichael R Sweet <michael.r.sweet@gmail.com>2019-02-18 10:33:49 -0500
commit73721e3edb270a33b96a56e4a1f6f6ae1db4ff34 (patch)
treee49b9d081cf9176ff225722b5f02a5195c19c181 /doc
parent1ce6909d23aed05c3e24d2631a5468f09a0c486b (diff)
downloadcups-73721e3edb270a33b96a56e4a1f6f6ae1db4ff34.tar.gz
Documentation updates.
Diffstat (limited to 'doc')
-rw-r--r--doc/cups-printable.css16
-rw-r--r--doc/help/api-admin.html27
-rw-r--r--doc/help/api-filter.html30
-rw-r--r--doc/help/api-ppd.html105
-rw-r--r--doc/help/api-raster.html101
-rw-r--r--doc/help/cupspm.epubbin220781 -> 221138 bytes
-rw-r--r--doc/help/cupspm.html44
-rw-r--r--doc/help/postscript-driver.html25
-rw-r--r--doc/help/ppd-compiler.html25
-rw-r--r--doc/help/raster-driver.html25
-rw-r--r--doc/help/spec-ppd.html171
11 files changed, 355 insertions, 214 deletions
diff --git a/doc/cups-printable.css b/doc/cups-printable.css
index a382306a4..058718be0 100644
--- a/doc/cups-printable.css
+++ b/doc/cups-printable.css
@@ -353,14 +353,13 @@ h1, h2, h3, h4, h5, h6 {
blockquote {
border: solid thin gray;
box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
- padding: 0px 10px;
+ padding: 10px 10px 0px;
page-break-inside: avoid;
}
p code, li code, p.code, pre, ul.code li {
background: rgba(127,127,127,0.1);
border: thin dotted gray;
font-family: monospace;
- font-size: 90%;
hyphens: manual;
-webkit-hyphens: manual;
page-break-inside: avoid;
@@ -383,12 +382,19 @@ span.info {
font-weight: bold;
white-space: nowrap;
}
-h3 span.info, h4 span.info {
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
+h2 span.info, h3 span.info, h4 span.info {
+ border-radius: 10px;
float: right;
+ font-size: 80%;
padding: 3px 6px;
}
+h2.title span.info, h3.title span.info, h4.title span.info {
+ border-bottom-left-radius: 0px;
+ border-bottom-right-radius: 0px;
+}
+h2.title span.info {
+ padding: 4px 6px;
+}
ul.code, ul.contents, ul.subcontents {
list-style-type: none;
margin: 0;
diff --git a/doc/help/api-admin.html b/doc/help/api-admin.html
index e5ae81819..f9969d4a9 100644
--- a/doc/help/api-admin.html
+++ b/doc/help/api-admin.html
@@ -1,11 +1,11 @@
-<!doctype html>
+<!DOCTYPE html>
<html>
<!-- SECTION: Programming -->
<head>
<title>Administration APIs</title>
<meta name="keywords" content="Programming">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
- <meta name="creator" content="Mini-XML v2.11">
+ <meta name="creator" content="codedoc v3.1">
<meta name="author" content="Unknown">
<meta name="copyright" content="Unknown">
<meta name="version" content="0.0">
@@ -18,6 +18,11 @@ H1, H2, H3, H4, H5, H6, P, TD, TH {
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
}
+H1 { font-size: 2em; }
+H2 { font-size: 1.75em; }
+H3 { font-size: 1.5em; }
+H4 { font-size: 1.25em; }
+
KBD {
font-family: monaco, courier, monospace;
font-weight: bold;
@@ -360,14 +365,13 @@ h1, h2, h3, h4, h5, h6 {
blockquote {
border: solid thin gray;
box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
- padding: 0px 10px;
+ padding: 10px 10px 0px;
page-break-inside: avoid;
}
p code, li code, p.code, pre, ul.code li {
background: rgba(127,127,127,0.1);
border: thin dotted gray;
font-family: monospace;
- font-size: 90%;
hyphens: manual;
-webkit-hyphens: manual;
page-break-inside: avoid;
@@ -390,12 +394,19 @@ span.info {
font-weight: bold;
white-space: nowrap;
}
-h3 span.info, h4 span.info {
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
+h2 span.info, h3 span.info, h4 span.info {
+ border-radius: 10px;
float: right;
+ font-size: 80%;
padding: 3px 6px;
}
+h2.title span.info, h3.title span.info, h4.title span.info {
+ border-bottom-left-radius: 0px;
+ border-bottom-right-radius: 0px;
+}
+h2.title span.info {
+ padding: 4px 6px;
+}
ul.code, ul.contents, ul.subcontents {
list-style-type: none;
margin: 0;
@@ -503,7 +514,7 @@ h3.title {
<p>The administrative APIs provide convenience functions to perform certain administrative functions with the CUPS scheduler.</p>
-<blockquote><b>Note:<b>
+<blockquote><b>Note:</b>
<p>Administrative functions normally require administrative privileges to execute and must not be used in ordinary user applications!</p>
</blockquote>
diff --git a/doc/help/api-filter.html b/doc/help/api-filter.html
index 299e5e1d2..eddd06389 100644
--- a/doc/help/api-filter.html
+++ b/doc/help/api-filter.html
@@ -1,11 +1,11 @@
-<!doctype html>
+<!DOCTYPE html>
<html>
<!-- SECTION: Programming -->
<head>
<title>Filter and Backend Programming</title>
<meta name="keywords" content="Programming">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
- <meta name="creator" content="Mini-XML v2.11">
+ <meta name="creator" content="codedoc v3.1">
<meta name="author" content="Unknown">
<meta name="copyright" content="Unknown">
<meta name="version" content="0.0">
@@ -18,6 +18,11 @@ H1, H2, H3, H4, H5, H6, P, TD, TH {
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
}
+H1 { font-size: 2em; }
+H2 { font-size: 1.75em; }
+H3 { font-size: 1.5em; }
+H4 { font-size: 1.25em; }
+
KBD {
font-family: monaco, courier, monospace;
font-weight: bold;
@@ -360,14 +365,13 @@ h1, h2, h3, h4, h5, h6 {
blockquote {
border: solid thin gray;
box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
- padding: 0px 10px;
+ padding: 10px 10px 0px;
page-break-inside: avoid;
}
p code, li code, p.code, pre, ul.code li {
background: rgba(127,127,127,0.1);
border: thin dotted gray;
font-family: monospace;
- font-size: 90%;
hyphens: manual;
-webkit-hyphens: manual;
page-break-inside: avoid;
@@ -390,12 +394,19 @@ span.info {
font-weight: bold;
white-space: nowrap;
}
-h3 span.info, h4 span.info {
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
+h2 span.info, h3 span.info, h4 span.info {
+ border-radius: 10px;
float: right;
+ font-size: 80%;
padding: 3px 6px;
}
+h2.title span.info, h3.title span.info, h4.title span.info {
+ border-bottom-left-radius: 0px;
+ border-bottom-right-radius: 0px;
+}
+h2.title span.info {
+ padding: 4px 6px;
+}
ul.code, ul.contents, ul.subcontents {
list-style-type: none;
margin: 0;
@@ -1394,7 +1405,10 @@ void *my_data;
</ol>
-<blockquote><b>Note:</b> The sandbox profile used in CUPS 2.0 still allows some actions that are not listed above - these privileges will be removed over time until the profile matches the list above.</blockquote>
+<blockquote><b>Note:</b>
+
+<p>The sandbox profile used in CUPS still allows some actions that are not listed above - these privileges will be removed over time until the profile matches the list above.</p>
+</blockquote>
<h2 class="title"><a id="FUNCTIONS">Functions</a></h2>
<h3 class="function"><span class="info">&#160;CUPS 1.2/macOS 10.5&#160;</span><a id="cupsBackChannelRead">cupsBackChannelRead</a></h3>
<p class="description">Read data from the backchannel.</p>
diff --git a/doc/help/api-ppd.html b/doc/help/api-ppd.html
index f90465553..4ddb11ae7 100644
--- a/doc/help/api-ppd.html
+++ b/doc/help/api-ppd.html
@@ -1,11 +1,11 @@
-<!doctype html>
+<!DOCTYPE html>
<html>
<!-- SECTION: Programming -->
<head>
<title>PPD API (DEPRECATED)</title>
<meta name="keywords" content="Programming">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
- <meta name="creator" content="Mini-XML v2.11">
+ <meta name="creator" content="codedoc v3.1">
<meta name="author" content="Unknown">
<meta name="copyright" content="Unknown">
<meta name="version" content="0.0">
@@ -18,6 +18,11 @@ H1, H2, H3, H4, H5, H6, P, TD, TH {
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
}
+H1 { font-size: 2em; }
+H2 { font-size: 1.75em; }
+H3 { font-size: 1.5em; }
+H4 { font-size: 1.25em; }
+
KBD {
font-family: monaco, courier, monospace;
font-weight: bold;
@@ -360,14 +365,13 @@ h1, h2, h3, h4, h5, h6 {
blockquote {
border: solid thin gray;
box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
- padding: 0px 10px;
+ padding: 10px 10px 0px;
page-break-inside: avoid;
}
p code, li code, p.code, pre, ul.code li {
background: rgba(127,127,127,0.1);
border: thin dotted gray;
font-family: monospace;
- font-size: 90%;
hyphens: manual;
-webkit-hyphens: manual;
page-break-inside: avoid;
@@ -390,12 +394,19 @@ span.info {
font-weight: bold;
white-space: nowrap;
}
-h3 span.info, h4 span.info {
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
+h2 span.info, h3 span.info, h4 span.info {
+ border-radius: 10px;
float: right;
+ font-size: 80%;
padding: 3px 6px;
}
+h2.title span.info, h3.title span.info, h4.title span.info {
+ border-bottom-left-radius: 0px;
+ border-bottom-right-radius: 0px;
+}
+h2.title span.info {
+ padding: 4px 6px;
+}
ul.code, ul.contents, ul.subcontents {
list-style-type: none;
margin: 0;
@@ -442,7 +453,7 @@ h3.title {
<!--
PPD API header for CUPS.
- Copyright © 2008-2012 by Apple Inc.
+ Copyright © 2008-2019 by Apple Inc.
Licensed under Apache License v2.0. See the file "LICENSE" for more
information.
@@ -450,7 +461,10 @@ h3.title {
<h1 class='title'>PPD API (DEPRECATED)</h1>
-<blockquote>The PPD API is deprecated starting in CUPS 1.6/macOS 10.8. Please use the new Job Ticket APIs in the <a href="api-cups.html">CUPS API</a> documentation. These functions will be removed in a future release of CUPS.</blockquote>
+<blockquote><b>Note:</b>
+
+<p>The PPD API was deprecated in CUPS 1.6/macOS 10.8. Please use the new Job Ticket APIs in the <a href="cupspm.html">CUPS Programming Manual</a> documentation. These functions will be removed in a future release of CUPS.</p>
+</blockquote>
<div class='summary'><table summary='General Information'>
<thead>
@@ -467,7 +481,7 @@ h3.title {
<tr>
<th>See Also</th>
<td>Programming: <a href='api-overview.html' target='_top'>Introduction to CUPS Programming</a><br>
- Programming: <a href='api-cups.html' target='_top'>CUPS API</a><br>
+ Programming: <a href='cupspm.html' target='_top'>CUPS Programming Manual</a><br>
Specifications: <a href='spec-ppd.html' target='_top'>CUPS PPD Extensions</a></td>
</tr>
</tbody>
@@ -489,6 +503,7 @@ h3.title {
<li><a href="#cupsGetPPD3">cupsGetPPD3</a></li>
<li><a href="#cupsGetServerPPD">cupsGetServerPPD</a></li>
<li><a href="#cupsMarkOptions">cupsMarkOptions</a></li>
+ <li><a href="#cupsRasterInterpretPPD">cupsRasterInterpretPPD</a></li>
<li><a href="#cupsResolveConflicts">cupsResolveConflicts</a></li>
<li><a href="#ppdCollect">ppdCollect</a></li>
<li><a href="#ppdCollect2">ppdCollect2</a></li>
@@ -524,6 +539,7 @@ h3.title {
<li><a href="#ppdPageWidth">ppdPageWidth</a></li>
</ul></li>
<li><a href="#TYPES">Data Types</a><ul class="subcontents">
+ <li><a href="#cups_interpret_cb_t">cups_interpret_cb_t</a></li>
<li><a href="#ppd_attr_t">ppd_attr_t</a></li>
<li><a href="#ppd_choice_t">ppd_choice_t</a></li>
<li><a href="#ppd_conform_t">ppd_conform_t</a></li>
@@ -575,7 +591,7 @@ h3.title {
<!--
PPD API introduction for CUPS.
- Copyright © 2007-2018 by Apple Inc.
+ Copyright © 2007-2019 by Apple Inc.
Copyright © 1997-2006 by Easy Software Products, all rights reserved.
Licensed under Apache License v2.0. See the file "LICENSE" for more
@@ -584,7 +600,10 @@ h3.title {
<h2 class='title'><a name='OVERVIEW'>Overview</a></h2>
-<blockquote>The PPD API is deprecated starting in CUPS 1.6/macOS 10.8. Please use the new Job Ticket APIs in the <a href="cupspm.html">CUPS API</a> documentation. These functions will be removed in a future release of CUPS.</blockquote>
+<blockquote><b>Note:</b>
+
+<p>The PPD API was deprecated in CUPS 1.6/macOS 10.8. Please use the new Job Ticket APIs in the <a href="cupspm.html">CUPS Programming Manual</a> documentation. These functions will be removed in a future release of CUPS.</p>
+</blockquote>
<p>The CUPS PPD API provides read-only access the data in PostScript Printer
Description ("PPD") files which are used for all printers with a driver. With
@@ -602,6 +621,7 @@ values as case-insensitive strings, so option "InputSlot" and choice "Upper"
are equivalent to "inputslot" and "upper", respectively.</p>
</blockquote>
+
<h3><a name="LOADING">Loading a PPD File</a></h3>
<p>The <a href="#ppdOpenFile"><code>ppdOpenFile</code></a> function "opens" a
@@ -689,6 +709,7 @@ int num_options = cupsParseOptions(argv[5], 0, &amp;options);
cupsFreeOptions(num_options, options);
</pre>
+
<h3><a name="CONSTRAINTS">Constraints</a></h3>
<p>PPD files support specification of conflict conditions, called
@@ -699,6 +720,7 @@ the options and choices that conflict with each other. The
how many of the selected options are incompatible. Since constraints are
normally specified in pairs, the returned value is typically an even number.</p>
+
<h3><a name="PAGE_SIZES">Page Sizes</a></h3>
<p>Page sizes are special options which have physical dimensions and margins
@@ -753,6 +775,7 @@ in points. Custom page size names can also be specified in inches
<a href="#ppdPageSize"><code>ppdPageSize</code></a> function will return
<code>NULL</code>.</p>
+
<h3><a name="ATTRIBUTES">Attributes</a></h3>
<p>Every PPD file is composed of one or more attributes. Most of these
@@ -937,6 +960,51 @@ int cupsMarkOptions(<a href="#ppd_file_t">ppd_file_t</a> *ppd, int num_options,
&quot;multiple-document-handling&quot;, &quot;output-bin&quot;, &quot;print-color-mode&quot;,
&quot;print-quality&quot;, &quot;printer-resolution&quot;, and &quot;sides&quot; attributes to their
corresponding PPD options and choices.</p>
+<h3 class="function"><span class="info">&#160;CUPS 1.2/macOS 10.5&#160;</span><a id="cupsRasterInterpretPPD">cupsRasterInterpretPPD</a></h3>
+ <p class="description">Interpret PPD commands to create a page header.</p>
+<p class="code">
+int cupsRasterInterpretPPD(cups_page_header2_t *h, <a href="#ppd_file_t">ppd_file_t</a> *ppd, int num_options, cups_option_t *options, <a href="#cups_interpret_cb_t">cups_interpret_cb_t</a> func);</p>
+<h4 class="parameters">Parameters</h4>
+<table class="list"><tbody>
+<tr><th>h</th>
+ <td class="description">Page header to create</td></tr>
+<tr><th>ppd</th>
+ <td class="description">PPD file</td></tr>
+<tr><th>num_options</th>
+ <td class="description">Number of options</td></tr>
+<tr><th>options</th>
+ <td class="description">Options</td></tr>
+<tr><th>func</th>
+ <td class="description">Optional page header callback (<code>NULL</code> for none)</td></tr>
+</tbody></table>
+<h4 class="returnvalue">Return Value</h4>
+ <p class="description">0 on success, -1 on failure</p>
+<h4 class="discussion">Discussion</h4>
+ <p class="discussion">This function is used by raster image processing (RIP) filters like
+cgpdftoraster and imagetoraster when writing CUPS raster data for a page.
+It is not used by raster printer driver filters which only read CUPS
+raster data.<br>
+<br>
+
+<code>cupsRasterInterpretPPD</code> does not mark the options in the PPD using
+the &quot;num_options&quot; and &quot;options&quot; arguments. Instead, mark the options with
+<code>cupsMarkOptions</code> and <code>ppdMarkOption</code> prior to calling it -
+this allows for per-page options without manipulating the options array.<br>
+<br>
+The &quot;func&quot; argument specifies an optional callback function that is
+called prior to the computation of the final raster data. The function
+can make changes to the <a href="#cups_page_header2_t"><code>cups_page_header2_t</code></a> data as needed to use a
+supported raster format and then returns 0 on success and -1 if the
+requested attributes cannot be supported.<br>
+<br>
+
+<code>cupsRasterInterpretPPD</code> supports a subset of the PostScript language.
+Currently only the <code>[</code>, <code>]</code>, <code>&lt;&lt;</code>, <code>&gt;&gt;</code>, <code>{</code>,
+<code>}</code>, <code>cleartomark</code>, <code>copy</code>, <code>dup</code>, <code>index</code>,
+<code>pop</code>, <code>roll</code>, <code>setpagedevice</code>, and <code>stopped</code> operators
+are supported.
+
+</p>
<h3 class="function"><span class="info">&#160;CUPS 1.4/macOS 10.6&#160;</span><a id="cupsResolveConflicts">cupsResolveConflicts</a></h3>
<p class="description">Resolve conflicts in a marked PPD.</p>
<p class="code">
@@ -1514,6 +1582,11 @@ float ppdPageWidth(<a href="#ppd_file_t">ppd_file_t</a> *ppd, const char *name);
<h4 class="returnvalue">Return Value</h4>
<p class="description">Width of page in points or 0.0</p>
<h2 class="title"><a id="TYPES">Data Types</a></h2>
+ <h3 class="typedef"><a id="cups_interpret_cb_t">cups_interpret_cb_t</a></h3>
+ <p class="description">cupsRasterInterpretPPD callback function</p>
+ <p class="code">
+typedef int (*cups_interpret_cb_t)(cups_page_header2_t *header, int preferred_bits);
+</p>
<h3 class="typedef"><a id="ppd_attr_t"><span class="info">&#160;DEPRECATED&#160;</span>ppd_attr_t</a></h3>
<p class="description">PPD Attribute Structure </p>
<p class="code">
@@ -1741,7 +1814,6 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
&#160;&#160;&#160;&#160;float custom_margins[4];<br>
&#160;&#160;&#160;&#160;float custom_max[2];<br>
&#160;&#160;&#160;&#160;float custom_min[2];<br>
-&#160;&#160;&#160;&#160;<a href="#ppd_emul_t">ppd_emul_t</a> *emulations;<br>
&#160;&#160;&#160;&#160;char **filters;<br>
&#160;&#160;&#160;&#160;int flip_duplex;<br>
&#160;&#160;&#160;&#160;char **fonts;<br>
@@ -1759,7 +1831,6 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
&#160;&#160;&#160;&#160;char *modelname;<br>
&#160;&#160;&#160;&#160;char *nickname;<br>
&#160;&#160;&#160;&#160;int num_consts;<br>
-&#160;&#160;&#160;&#160;int num_emulations;<br>
&#160;&#160;&#160;&#160;int num_filters;<br>
&#160;&#160;&#160;&#160;int num_fonts;<br>
&#160;&#160;&#160;&#160;int num_groups;<br>
@@ -1794,8 +1865,6 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<td class="description">Maximum variable page size</td></tr>
<tr><th>custom_min[2] </th>
<td class="description">Minimum variable page size</td></tr>
-<tr><th>emulations </th>
- <td class="description">Emulations and the code to invoke them</td></tr>
<tr><th>filters </th>
<td class="description">Filter strings...</td></tr>
<tr><th>flip_duplex <span class="info">&#160;DEPRECATED&#160;</span></th>
@@ -1830,8 +1899,6 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<td class="description">Nickname (specific)</td></tr>
<tr><th>num_consts </th>
<td class="description">Number of UI/Non-UI constraints</td></tr>
-<tr><th>num_emulations </th>
- <td class="description">Number of emulations supported</td></tr>
<tr><th>num_filters </th>
<td class="description">Number of filters</td></tr>
<tr><th>num_fonts </th>
@@ -2086,6 +2153,7 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<h4 class="constants">Constants</h4>
<table class="list"><tbody>
<tr><th>PPD_ALLOC_ERROR </th> <td class="description">Memory allocation error</td></tr>
+ <tr><th>PPD_BAD_CLOSE_UI </th> <td class="description">Bad CloseUI/JCLCloseUI</td></tr>
<tr><th>PPD_BAD_CUSTOM_PARAM </th> <td class="description">Bad custom parameter</td></tr>
<tr><th>PPD_BAD_OPEN_GROUP </th> <td class="description">Bad OpenGroup</td></tr>
<tr><th>PPD_BAD_OPEN_UI </th> <td class="description">Bad OpenUI/JCLOpenUI</td></tr>
@@ -2102,6 +2170,7 @@ typedef enum <a href="#ppd_ui_e">ppd_ui_e</a> ppd_ui_t;
<tr><th>PPD_LINE_TOO_LONG </th> <td class="description">Line longer than 255 chars</td></tr>
<tr><th>PPD_MISSING_ASTERISK </th> <td class="description">Missing asterisk in column 0</td></tr>
<tr><th>PPD_MISSING_CLOSE_GROUP </th> <td class="description">Missing CloseGroup</td></tr>
+ <tr><th>PPD_MISSING_CLOSE_UI </th> <td class="description">Missing CloseUI/JCLCloseUI</td></tr>
<tr><th>PPD_MISSING_OPTION_KEYWORD </th> <td class="description">Missing option keyword</td></tr>
<tr><th>PPD_MISSING_PPDADOBE4 </th> <td class="description">Missing PPD-Adobe-4.x header</td></tr>
<tr><th>PPD_MISSING_VALUE </th> <td class="description">Missing value string</td></tr>
diff --git a/doc/help/api-raster.html b/doc/help/api-raster.html
index 706cbd56c..6eccab791 100644
--- a/doc/help/api-raster.html
+++ b/doc/help/api-raster.html
@@ -1,11 +1,11 @@
-<!doctype html>
+<!DOCTYPE html>
<html>
<!-- SECTION: Programming -->
<head>
<title>Raster API</title>
<meta name="keywords" content="Programming">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
- <meta name="creator" content="Mini-XML v2.11">
+ <meta name="creator" content="codedoc v3.1">
<meta name="author" content="Unknown">
<meta name="copyright" content="Unknown">
<meta name="version" content="0.0">
@@ -18,6 +18,11 @@ H1, H2, H3, H4, H5, H6, P, TD, TH {
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
}
+H1 { font-size: 2em; }
+H2 { font-size: 1.75em; }
+H3 { font-size: 1.5em; }
+H4 { font-size: 1.25em; }
+
KBD {
font-family: monaco, courier, monospace;
font-weight: bold;
@@ -360,14 +365,13 @@ h1, h2, h3, h4, h5, h6 {
blockquote {
border: solid thin gray;
box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
- padding: 0px 10px;
+ padding: 10px 10px 0px;
page-break-inside: avoid;
}
p code, li code, p.code, pre, ul.code li {
background: rgba(127,127,127,0.1);
border: thin dotted gray;
font-family: monospace;
- font-size: 90%;
hyphens: manual;
-webkit-hyphens: manual;
page-break-inside: avoid;
@@ -390,12 +394,19 @@ span.info {
font-weight: bold;
white-space: nowrap;
}
-h3 span.info, h4 span.info {
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
+h2 span.info, h3 span.info, h4 span.info {
+ border-radius: 10px;
float: right;
+ font-size: 80%;
padding: 3px 6px;
}
+h2.title span.info, h3.title span.info, h4.title span.info {
+ border-bottom-left-radius: 0px;
+ border-bottom-right-radius: 0px;
+}
+h2.title span.info {
+ padding: 4px 6px;
+}
ul.code, ul.contents, ul.subcontents {
list-style-type: none;
margin: 0;
@@ -442,7 +453,7 @@ h3.title {
<!--
Raster API documentation for CUPS.
- Copyright © 2008-2010 by Apple Inc.
+ Copyright © 2008-2019 by Apple Inc.
Licensed under Apache License v2.0. See the file "LICENSE" for more
information.
@@ -460,13 +471,12 @@ h3.title {
<tbody>
<tr>
<th>Library</th>
- <td>-lcupsimage</td>
+ <td>-lcups</td>
</tr>
<tr>
<th>See Also</th>
- <td>Programming: <a href='api-overview.html'>Introduction to CUPS Programming</a><br>
- Programming: <a href='api-cups.html'>CUPS API</a><br>
- Programming: <a href='api-cups.html'>PPD API</a><br>
+ <td>Programming: <a href='cupspm.html'>CUPS Programming Manual</a><br>
+ Programming: <a href='api-ppd.html'>PPD API</a><br>
References: <a href='spec-ppd.html'>CUPS PPD Specification</a></td>
</tr>
</tbody>
@@ -482,8 +492,8 @@ h3.title {
</ul></li>
<li><a href="#FUNCTIONS">Functions</a><ul class="subcontents">
<li><a href="#cupsRasterClose">cupsRasterClose</a></li>
+ <li><a href="#cupsRasterErrorString">cupsRasterErrorString</a></li>
<li><a href="#cupsRasterInitPWGHeader">cupsRasterInitPWGHeader</a></li>
- <li><a href="#cupsRasterInterpretPPD">cupsRasterInterpretPPD</a></li>
<li><a href="#cupsRasterOpen">cupsRasterOpen</a></li>
<li><a href="#cupsRasterOpenIO">cupsRasterOpenIO</a></li>
<li><a href="#cupsRasterReadHeader">cupsRasterReadHeader</a></li>
@@ -499,7 +509,6 @@ h3.title {
<li><a href="#cups_cspace_t">cups_cspace_t</a></li>
<li><a href="#cups_cut_t">cups_cut_t</a></li>
<li><a href="#cups_edge_t">cups_edge_t</a></li>
- <li><a href="#cups_interpret_cb_t">cups_interpret_cb_t</a></li>
<li><a href="#cups_jog_t">cups_jog_t</a></li>
<li><a href="#cups_mode_t">cups_mode_t</a></li>
<li><a href="#cups_order_t">cups_order_t</a></li>
@@ -530,7 +539,7 @@ h3.title {
<!--
Raster API introduction for CUPS.
- Copyright © 2007-2013 by Apple Inc.
+ Copyright © 2007-2019 by Apple Inc.
Copyright © 1997-2006 by Easy Software Products, all rights reserved.
Licensed under Apache License v2.0. See the file "LICENSE" for more
@@ -676,7 +685,7 @@ the memory used to read the raster file:</p>
<ul class="code">
- <li><a href="#cupsRasterInterpretPPD" title="Interpret PPD commands to create a page header.">cupsRasterInterpretPPD</a></li>
+ <li><a href="#cupsRasterInitPWGHeader" title="Interpret IPP attributes to create a page header.">cupsRasterInitPWGHeader</a></li>
<li><a href="#cupsRasterWriteHeader" title="Write a raster page header from a version 1 page header structure.">cupsRasterWriteHeader</a> <span class="info">Deprecated in CUPS 1.2/macOS 10.5</span></li>
<li><a href="#cupsRasterWriteHeader2" title="Write a raster page header from a version 2 page header structure.">cupsRasterWriteHeader2</a></li>
<li><a href="#cupsRasterWritePixels" title="Write raster pixels.">cupsRasterWritePixels</a></li>
@@ -695,6 +704,16 @@ void cupsRasterClose(<a href="#cups_raster_t">cups_raster_t</a> *r);</p>
<h4 class="discussion">Discussion</h4>
<p class="discussion">The file descriptor associated with the raster stream must be closed
separately as needed.</p>
+<h3 class="function"><span class="info">&#160;CUPS 1.3/macOS 10.5&#160;</span><a id="cupsRasterErrorString">cupsRasterErrorString</a></h3>
+ <p class="description">Return the last error from a raster function.</p>
+<p class="code">
+const char *cupsRasterErrorString(void);</p>
+<h4 class="returnvalue">Return Value</h4>
+ <p class="description">Last error or <code>NULL</code></p>
+<h4 class="discussion">Discussion</h4>
+ <p class="discussion">If there are no recent errors, <code>NULL</code> is returned.
+
+</p>
<h3 class="function"><span class="info">&#160;CUPS 2.2/macOS 10.12&#160;</span><a id="cupsRasterInitPWGHeader">cupsRasterInitPWGHeader</a></h3>
<p class="description">Initialize a page header for PWG Raster output.</p>
<p class="code">
@@ -731,51 +750,6 @@ The &quot;sheet_back&quot; argument specifies a &quot;pwg-raster-document-sheet-
to apply for the back side of a page. Pass <code>NULL</code> for the front side.
</p>
-<h3 class="function"><span class="info">&#160;CUPS 1.2/macOS 10.5&#160;</span><a id="cupsRasterInterpretPPD">cupsRasterInterpretPPD</a></h3>
- <p class="description">Interpret PPD commands to create a page header.</p>
-<p class="code">
-int cupsRasterInterpretPPD(<a href="#cups_page_header2_t">cups_page_header2_t</a> *h, ppd_file_t *ppd, int num_options, cups_option_t *options, <a href="#cups_interpret_cb_t">cups_interpret_cb_t</a> func);</p>
-<h4 class="parameters">Parameters</h4>
-<table class="list"><tbody>
-<tr><th>h</th>
- <td class="description">Page header to create</td></tr>
-<tr><th>ppd</th>
- <td class="description">PPD file</td></tr>
-<tr><th>num_options</th>
- <td class="description">Number of options</td></tr>
-<tr><th>options</th>
- <td class="description">Options</td></tr>
-<tr><th>func</th>
- <td class="description">Optional page header callback (<code>NULL</code> for none)</td></tr>
-</tbody></table>
-<h4 class="returnvalue">Return Value</h4>
- <p class="description">0 on success, -1 on failure</p>
-<h4 class="discussion">Discussion</h4>
- <p class="discussion">This function is used by raster image processing (RIP) filters like
-cgpdftoraster and imagetoraster when writing CUPS raster data for a page.
-It is not used by raster printer driver filters which only read CUPS
-raster data.<br>
-<br>
-
-<code>cupsRasterInterpretPPD</code> does not mark the options in the PPD using
-the &quot;num_options&quot; and &quot;options&quot; arguments. Instead, mark the options with
-<code>cupsMarkOptions</code> and <code>ppdMarkOption</code> prior to calling it -
-this allows for per-page options without manipulating the options array.<br>
-<br>
-The &quot;func&quot; argument specifies an optional callback function that is
-called prior to the computation of the final raster data. The function
-can make changes to the <a href="#cups_page_header2_t"><code>cups_page_header2_t</code></a> data as needed to use a
-supported raster format and then returns 0 on success and -1 if the
-requested attributes cannot be supported.<br>
-<br>
-
-<code>cupsRasterInterpretPPD</code> supports a subset of the PostScript language.
-Currently only the <code>[</code>, <code>]</code>, <code>&lt;&lt;</code>, <code>&gt;&gt;</code>, <code>{</code>,
-<code>}</code>, <code>cleartomark</code>, <code>copy</code>, <code>dup</code>, <code>index</code>,
-<code>pop</code>, <code>roll</code>, <code>setpagedevice</code>, and <code>stopped</code> operators
-are supported.
-
-</p>
<h3 class="function"><a id="cupsRasterOpen">cupsRasterOpen</a></h3>
<p class="description">Open a raster stream using a file descriptor.</p>
<p class="code">
@@ -964,11 +938,6 @@ typedef enum <a href="#cups_cut_e">cups_cut_e</a> cups_cut_t;
<p class="code">
typedef enum <a href="#cups_edge_e">cups_edge_e</a> cups_edge_t;
</p>
- <h3 class="typedef"><a id="cups_interpret_cb_t">cups_interpret_cb_t</a></h3>
- <p class="description">cupsRasterInterpretPPD callback function</p>
- <p class="code">
-typedef int (*cups_interpret_cb_t)(<a href="#cups_page_header2_t">cups_page_header2_t</a> *header, int preferred_bits);
-</p>
<h3 class="typedef"><a id="cups_jog_t">cups_jog_t</a></h3>
<p class="description">Jog attribute values</p>
<p class="code">
diff --git a/doc/help/cupspm.epub b/doc/help/cupspm.epub
index be1a76883..5cd742cd1 100644
--- a/doc/help/cupspm.epub
+++ b/doc/help/cupspm.epub
Binary files differ
diff --git a/doc/help/cupspm.html b/doc/help/cupspm.html
index 982643b20..4c68087f5 100644
--- a/doc/help/cupspm.html
+++ b/doc/help/cupspm.html
@@ -1,13 +1,13 @@
-<!doctype html>
+<!DOCTYPE html>
<html>
<!-- SECTION: Programming -->
<head>
<title>CUPS Programming Manual</title>
<meta name="keywords" content="Programming">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
- <meta name="creator" content="Mini-XML v2.11">
+ <meta name="creator" content="codedoc v3.1">
<meta name="author" content="Michael R Sweet">
- <meta name="copyright" content="Copyright &#xa9; 2007-2018 by Apple Inc. All Rights Reserved.">
+ <meta name="copyright" content="Copyright &#xa9; 2007-2019 by Apple Inc. All Rights Reserved.">
<meta name="version" content="2.3.0">
<style type="text/css"><!--
body, p, h1, h2, h3, h4 {
@@ -174,7 +174,7 @@ h3.title {
<body>
<h1 class="title">CUPS Programming Manual</h1>
<p>Michael R Sweet</p>
- <p>Copyright &#xa9; 2007-2018 by Apple Inc. All Rights Reserved.</p>
+ <p>Copyright &#xa9; 2007-2019 by Apple Inc. All Rights Reserved.</p>
<div class="contents">
<h2 class="title">Contents</h2>
<ul class="contents">
@@ -197,6 +197,7 @@ h3.title {
<li><a href="#authentication">Authentication</a></li>
</ul></li>
<li><a href="#FUNCTIONS">Functions</a><ul class="subcontents">
+ <li><a href="#CF_OPTIONS">CF_OPTIONS</a></li>
<li><a href="#cupsAddDest">cupsAddDest</a></li>
<li><a href="#cupsAddDestMediaOptions">cupsAddDestMediaOptions</a></li>
<li><a href="#cupsAddIntegerOption">cupsAddIntegerOption</a></li>
@@ -486,6 +487,9 @@ h3.title {
<li><a href="#cups_option_s">cups_option_s</a></li>
<li><a href="#cups_size_s">cups_size_s</a></li>
</ul></li>
+ <li><a href="#VARIABLES">Variables</a><ul class="subcontents">
+ <li><a href="#kSecOidOrganizationalUnit">kSecOidOrganizationalUnit</a></li>
+ </ul></li>
<li><a href="#ENUMERATIONS">Enumerations</a><ul class="subcontents">
<li><a href="#cups_ptype_e">cups_ptype_e</a></li>
<li><a href="#http_encoding_e">http_encoding_e</a></li>
@@ -520,7 +524,7 @@ h3.title {
<p>CUPS provides the &quot;cups&quot; library to talk to the different parts of CUPS and with Internet Printing Protocol (IPP) printers. The &quot;cups&quot; library functions are accessed by including the <code>&lt;cups/cups.h&gt;</code> header.</p>
<p>CUPS is based on the Internet Printing Protocol (&quot;IPP&quot;), which allows clients (applications) to communicate with a server (the scheduler, printers, etc.) to get a list of destinations, send print jobs, and so forth. You identify which server you want to communicate with using a pointer to the opaque structure <code>http_t</code>. The <code>CUPS_HTTP_DEFAULT</code> constant can be used when you want to talk to the CUPS scheduler.</p>
<h3><a id="guidelines">Guidelines</a></h3>
- <p>When writing software that uses the &quot;cups&quot; library:</p>
+ <p>When writing software (other than printer drivers) that uses the &quot;cups&quot; library:</p>
<ul>
<li>Do not use undocumented or deprecated APIs,</li>
<li>Do not rely on pre-configured printers,</li>
@@ -529,8 +533,12 @@ h3.title {
</ul>
<p>CUPS is designed to insulate users and developers from the implementation details of printers and file formats. The goal is to allow an application to supply a print file in a standard format with the user intent (&quot;print four copies, two-sided on A4 media, and staple each copy&quot;) and have the printing system manage the printer communication and format conversion needed.</p>
<p>Similarly, printer and job management applications can use standard query operations to obtain the status information in a common, generic form and use standard management operations to control the state of those printers and jobs.</p>
+ <blockquote>
+ <p><strong>Note:</strong></p>
+ <p>CUPS printer drivers necessarily depend on specific file formats and certain implementation details of the CUPS software. Please consult the Postscript and raster printer driver developer documentation on <a href="https://www.cups.org/documentation.html">CUPS.org</a> for more information.</p>
+</blockquote>
<h3><a id="terms-used-in-this-document">Terms Used in This Document</a></h3>
- <p>A <em>Destination</em> is a printer or print queue that accepts print jobs. A <em>Print</em> <em>Job</em> is one or more documents that are processed by a destination using options supplied when creating the job. A <em>Document</em> is a file (JPEG image, PDF file, etc.) suitable for printing. An <em>Option</em> controls some aspect of printing, such as the media used. <em>Media</em> is the sheets or roll that is printed on. An <em>Attribute</em> is an option encoded for an Internet Printing Protocol (IPP) request.</p>
+ <p>A <em>Destination</em> is a printer or print queue that accepts print jobs. A <em>Print</em> <em>Job</em> is a collection of one or more documents that are processed by a destination using options supplied when creating the job. A <em>Document</em> is a file (JPEG image, PDF file, etc.) suitable for printing. An <em>Option</em> controls some aspect of printing, such as the media used. <em>Media</em> is the sheets or roll that is printed on. An <em>Attribute</em> is an option encoded for an Internet Printing Protocol (IPP) request.</p>
<h3><a id="compiling-programs-that-use-the-cups-api">Compiling Programs That Use the CUPS API</a></h3>
<p>The CUPS libraries can be used from any C, C++, or Objective C program. The method of compiling against the libraries varies depending on the operating system and installation of CUPS. The following sections show how to compile a simple program (shown below) in two common environments.</p>
<p>The following simple program lists the available destinations:</p>
@@ -611,7 +619,8 @@ int main(void)
</ul>
<p>The callback function returns 0 to stop enumeration or 1 to continue.</p>
<blockquote>
- <p>Note that the callback function will likely be called multiple times for the same destination, so it is up to the caller to suppress any duplicate destinations.</p>
+ <p><strong>Note:</strong></p>
+ <p>The callback function will likely be called multiple times for the same destination, so it is up to the caller to suppress any duplicate destinations.</p>
</blockquote>
<p>The following example shows how to use <code>cupsEnumDests</code> to get a filtered array of destinations:</p>
<pre><code>typedef struct
@@ -1043,7 +1052,8 @@ ippAddString(request, IPP_TAG_OPERATION, IPP_TAG_URI,
&quot;printer-uri&quot;, NULL, printer_uri);
</code></pre>
<blockquote>
- <p>Note: If we wanted to query the scheduler instead of the device, we would look up the &quot;printer-uri-supported&quot; option instead of the &quot;device-uri&quot; value.</p>
+ <p><strong>Note:</strong></p>
+ <p>If we wanted to query the scheduler instead of the device, we would look up the &quot;printer-uri-supported&quot; option instead of the &quot;device-uri&quot; value.</p>
</blockquote>
<p>The <code>ippAddString</code> function adds the &quot;printer-uri&quot; attribute the the IPP request. The <code>IPP_TAG_OPERATION</code> argument specifies that the attribute is part of the operation. The <code>IPP_TAG_URI</code> argument specifies that the value is a Universal Resource Identifier (URI) string. The <code>NULL</code> argument specifies there is no language (English, French, Japanese, etc.) associated with the string, and the <code>printer_uri</code> argument specifies the string value.</p>
<p>The IPP Get-Printer-Attributes request also supports an IPP attribute called &quot;requested-attributes&quot; that lists the attributes and values you are interested in. For example, the following code requests the printer state attributes:</p>
@@ -1149,6 +1159,19 @@ cups_password_cb2(const char *prompt, http_t *http,
<p>The <code>resource</code> argument specifies the path used for the request.</p>
<p>The <code>user_data</code> argument provides the user data pointer from the <code>cupsSetPasswordCB2</code> call.</p>
<h2 class="title"><a id="FUNCTIONS">Functions</a></h2>
+<h3 class="function"><a id="CF_OPTIONS">CF_OPTIONS</a></h3>
+ <p class="description"></p>
+<p class="code">
+typedef CF_OPTIONS(uint32_t, SecKeyUsage);</p>
+<h4 class="parameters">Parameters</h4>
+<table class="list"><tbody>
+<tr><th>uint32_t</th>
+</tr>
+<tr><th>SecKeyUsage</th>
+</tr>
+</tbody></table>
+<h4 class="returnvalue">Return Value</h4>
+ <p class="description"></p>
<h3 class="function"><a id="cupsAddDest">cupsAddDest</a></h3>
<p class="description">Add a destination to the list of destinations.</p>
<p class="code">
@@ -6048,6 +6071,10 @@ typedef struct _ipp_s ipp_t;
<td class="description">Top margin in hundredths of
millimeters</td></tr>
</tbody></table>
+ <h2 class="title"><a id="VARIABLES">Variables</a></h2>
+ <h3 class="variable"><a id="kSecOidOrganizationalUnit">kSecOidOrganizationalUnit</a></h3>
+ <p class="description">Constants, very secure stuff...</p>
+ <p class="code">extern const void *kSecOidOrganizationalUnit;</p>
<h2 class="title"><a id="ENUMERATIONS">Constants</a></h2>
<h3 class="enumeration"><a id="cups_ptype_e">cups_ptype_e</a></h3>
<p class="description">Printer type/capability bit
@@ -6107,6 +6134,7 @@ constants</p>
<tr><th>HTTP_FIELD_ACCEPT_LANGUAGE </th> <td class="description">Accept-Language field</td></tr>
<tr><th>HTTP_FIELD_ACCEPT_RANGES </th> <td class="description">Accept-Ranges field</td></tr>
<tr><th>HTTP_FIELD_ALLOW <span class="info">&#160;CUPS 1.7/macOS 10.9&#160;</span></th> <td class="description">Allow field </td></tr>
+ <tr><th>HTTP_FIELD_AUTHENTICATION_INFO <span class="info">&#160;CUPS 2.2.9)&#160;</span></th> <td class="description">Authentication-Info field (</td></tr>
<tr><th>HTTP_FIELD_AUTHORIZATION </th> <td class="description">Authorization field</td></tr>
<tr><th>HTTP_FIELD_CONNECTION </th> <td class="description">Connection field</td></tr>
<tr><th>HTTP_FIELD_CONTENT_ENCODING </th> <td class="description">Content-Encoding field</td></tr>
diff --git a/doc/help/postscript-driver.html b/doc/help/postscript-driver.html
index 9abddf61c..f94fa72fd 100644
--- a/doc/help/postscript-driver.html
+++ b/doc/help/postscript-driver.html
@@ -1,11 +1,11 @@
-<!doctype html>
+<!DOCTYPE html>
<html>
<!-- SECTION: Programming -->
<head>
<title>Developing PostScript Printer Drivers</title>
<meta name="keywords" content="Programming">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
- <meta name="creator" content="Mini-XML v2.11">
+ <meta name="creator" content="codedoc v3.1">
<meta name="author" content="Unknown">
<meta name="copyright" content="Unknown">
<meta name="version" content="0.0">
@@ -18,6 +18,11 @@ H1, H2, H3, H4, H5, H6, P, TD, TH {
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
}
+H1 { font-size: 2em; }
+H2 { font-size: 1.75em; }
+H3 { font-size: 1.5em; }
+H4 { font-size: 1.25em; }
+
KBD {
font-family: monaco, courier, monospace;
font-weight: bold;
@@ -360,14 +365,13 @@ h1, h2, h3, h4, h5, h6 {
blockquote {
border: solid thin gray;
box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
- padding: 0px 10px;
+ padding: 10px 10px 0px;
page-break-inside: avoid;
}
p code, li code, p.code, pre, ul.code li {
background: rgba(127,127,127,0.1);
border: thin dotted gray;
font-family: monospace;
- font-size: 90%;
hyphens: manual;
-webkit-hyphens: manual;
page-break-inside: avoid;
@@ -390,12 +394,19 @@ span.info {
font-weight: bold;
white-space: nowrap;
}
-h3 span.info, h4 span.info {
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
+h2 span.info, h3 span.info, h4 span.info {
+ border-radius: 10px;
float: right;
+ font-size: 80%;
padding: 3px 6px;
}
+h2.title span.info, h3.title span.info, h4.title span.info {
+ border-bottom-left-radius: 0px;
+ border-bottom-right-radius: 0px;
+}
+h2.title span.info {
+ padding: 4px 6px;
+}
ul.code, ul.contents, ul.subcontents {
list-style-type: none;
margin: 0;
diff --git a/doc/help/ppd-compiler.html b/doc/help/ppd-compiler.html
index 5943fd22f..b33ca2d27 100644
--- a/doc/help/ppd-compiler.html
+++ b/doc/help/ppd-compiler.html
@@ -1,11 +1,11 @@
-<!doctype html>
+<!DOCTYPE html>
<html>
<!-- SECTION: Programming -->
<head>
<title>Introduction to the PPD Compiler</title>
<meta name="keywords" content="Programming">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
- <meta name="creator" content="Mini-XML v2.11">
+ <meta name="creator" content="codedoc v3.1">
<meta name="author" content="Unknown">
<meta name="copyright" content="Unknown">
<meta name="version" content="0.0">
@@ -18,6 +18,11 @@ H1, H2, H3, H4, H5, H6, P, TD, TH {
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
}
+H1 { font-size: 2em; }
+H2 { font-size: 1.75em; }
+H3 { font-size: 1.5em; }
+H4 { font-size: 1.25em; }
+
KBD {
font-family: monaco, courier, monospace;
font-weight: bold;
@@ -360,14 +365,13 @@ h1, h2, h3, h4, h5, h6 {
blockquote {
border: solid thin gray;
box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
- padding: 0px 10px;
+ padding: 10px 10px 0px;
page-break-inside: avoid;
}
p code, li code, p.code, pre, ul.code li {
background: rgba(127,127,127,0.1);
border: thin dotted gray;
font-family: monospace;
- font-size: 90%;
hyphens: manual;
-webkit-hyphens: manual;
page-break-inside: avoid;
@@ -390,12 +394,19 @@ span.info {
font-weight: bold;
white-space: nowrap;
}
-h3 span.info, h4 span.info {
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
+h2 span.info, h3 span.info, h4 span.info {
+ border-radius: 10px;
float: right;
+ font-size: 80%;
padding: 3px 6px;
}
+h2.title span.info, h3.title span.info, h4.title span.info {
+ border-bottom-left-radius: 0px;
+ border-bottom-right-radius: 0px;
+}
+h2.title span.info {
+ padding: 4px 6px;
+}
ul.code, ul.contents, ul.subcontents {
list-style-type: none;
margin: 0;
diff --git a/doc/help/raster-driver.html b/doc/help/raster-driver.html
index 03f6f3da9..de573c616 100644
--- a/doc/help/raster-driver.html
+++ b/doc/help/raster-driver.html
@@ -1,11 +1,11 @@
-<!doctype html>
+<!DOCTYPE html>
<html>
<!-- SECTION: Programming -->
<head>
<title>Developing Raster Printer Drivers</title>
<meta name="keywords" content="Programming">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
- <meta name="creator" content="Mini-XML v2.11">
+ <meta name="creator" content="codedoc v3.1">
<meta name="author" content="Unknown">
<meta name="copyright" content="Unknown">
<meta name="version" content="0.0">
@@ -18,6 +18,11 @@ H1, H2, H3, H4, H5, H6, P, TD, TH {
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
}
+H1 { font-size: 2em; }
+H2 { font-size: 1.75em; }
+H3 { font-size: 1.5em; }
+H4 { font-size: 1.25em; }
+
KBD {
font-family: monaco, courier, monospace;
font-weight: bold;
@@ -360,14 +365,13 @@ h1, h2, h3, h4, h5, h6 {
blockquote {
border: solid thin gray;
box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
- padding: 0px 10px;
+ padding: 10px 10px 0px;
page-break-inside: avoid;
}
p code, li code, p.code, pre, ul.code li {
background: rgba(127,127,127,0.1);
border: thin dotted gray;
font-family: monospace;
- font-size: 90%;
hyphens: manual;
-webkit-hyphens: manual;
page-break-inside: avoid;
@@ -390,12 +394,19 @@ span.info {
font-weight: bold;
white-space: nowrap;
}
-h3 span.info, h4 span.info {
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
+h2 span.info, h3 span.info, h4 span.info {
+ border-radius: 10px;
float: right;
+ font-size: 80%;
padding: 3px 6px;
}
+h2.title span.info, h3.title span.info, h4.title span.info {
+ border-bottom-left-radius: 0px;
+ border-bottom-right-radius: 0px;
+}
+h2.title span.info {
+ padding: 4px 6px;
+}
ul.code, ul.contents, ul.subcontents {
list-style-type: none;
margin: 0;
diff --git a/doc/help/spec-ppd.html b/doc/help/spec-ppd.html
index 40e56ee2d..3782eb7ca 100644
--- a/doc/help/spec-ppd.html
+++ b/doc/help/spec-ppd.html
@@ -1,11 +1,11 @@
-<!doctype html>
+<!DOCTYPE html>
<html>
<!-- SECTION: Specifications -->
<head>
<title>CUPS PPD Extensions</title>
<meta name="keywords" content="Specifications">
<meta http-equiv="Content-Type" content="text/html;charset=utf-8">
- <meta name="creator" content="Mini-XML v2.11">
+ <meta name="creator" content="codedoc v3.1">
<meta name="author" content="Unknown">
<meta name="copyright" content="Unknown">
<meta name="version" content="0.0">
@@ -18,6 +18,11 @@ H1, H2, H3, H4, H5, H6, P, TD, TH {
font-family: lucida grande, geneva, helvetica, arial, sans-serif;
}
+H1 { font-size: 2em; }
+H2 { font-size: 1.75em; }
+H3 { font-size: 1.5em; }
+H4 { font-size: 1.25em; }
+
KBD {
font-family: monaco, courier, monospace;
font-weight: bold;
@@ -360,14 +365,13 @@ h1, h2, h3, h4, h5, h6 {
blockquote {
border: solid thin gray;
box-shadow: 3px 3px 5px rgba(0,0,0,0.5);
- padding: 0px 10px;
+ padding: 10px 10px 0px;
page-break-inside: avoid;
}
p code, li code, p.code, pre, ul.code li {
background: rgba(127,127,127,0.1);
border: thin dotted gray;
font-family: monospace;
- font-size: 90%;
hyphens: manual;
-webkit-hyphens: manual;
page-break-inside: avoid;
@@ -390,12 +394,19 @@ span.info {
font-weight: bold;
white-space: nowrap;
}
-h3 span.info, h4 span.info {
- border-top-left-radius: 10px;
- border-top-right-radius: 10px;
+h2 span.info, h3 span.info, h4 span.info {
+ border-radius: 10px;
float: right;
+ font-size: 80%;
padding: 3px 6px;
}
+h2.title span.info, h3.title span.info, h4.title span.info {
+ border-bottom-left-radius: 0px;
+ border-bottom-right-radius: 0px;
+}
+h2.title span.info {
+ padding: 4px 6px;
+}
ul.code, ul.contents, ul.subcontents {
list-style-type: none;
margin: 0;
@@ -485,7 +496,7 @@ h3.title {
<li><a href="#cupsUIResolver">cupsUIResolver</a></li>
</ul></li>
<li><a href="#I18N">Globalized PPD Support</a></li>
- <li><a href="#OPTIONS">&lt;span class=&quot;info&quot;&gt;CUPS 1.3/macOS 10.6&lt;/span&gt;Custom Options</a></li>
+ <li><a href="#OPTIONS">Custom Options</a></li>
<li><a href="#RASTERPS">Writing PostScript Option Commands for Raster Drivers</a></li>
<li><a href="#MEDIA">Media Keywords</a><ul class="subcontents">
<li><a href="#cupsMediaQualifier2">cupsMediaQualifier2</a></li>
@@ -575,7 +586,7 @@ LINE-END = CR / LF / CR LF
<p>CUPS supports several methods of auto-configuration via PPD keywords.</p>
-<h3><span class='info'>macOS 10.5</span><a name='APAutoSetupTool'>APAutoSetupTool</a></h3>
+<h3 class="title"><span class='info'>macOS 10.5</span><a name='APAutoSetupTool'>APAutoSetupTool</a></h3>
<p class='summary'>*APAutoSetupTool: "/LibraryPrinters/vendor/filename"</p>
@@ -591,7 +602,7 @@ LINE-END = CR / LF / CR LF
</pre>
-<h3><span class='info'>macOS 10.2/CUPS 1.4</span><a name='QUERYKEYWORD'>?MainKeyword</a></h3>
+<h3 class="title"><span class='info'>macOS 10.2/CUPS 1.4</span><a name='QUERYKEYWORD'>?MainKeyword</a></h3>
<p class='summary'>*?<i>MainKeyword</i>: "<br>
PostScript query code that writes a message using the = operator...<br>
@@ -621,7 +632,7 @@ LINE-END = CR / LF / CR LF
</pre>
-<h3><span class='info'>macOS 10.4/CUPS 1.5</span><a name='OID'>OIDMainKeyword</a></h3>
+<h3 class="title"><span class='info'>macOS 10.4/CUPS 1.5</span><a name='OID'>OIDMainKeyword</a></h3>
<p class='summary'>*?OID<i>MainKeyword</i>: ".n.n.n..."<br>
*OID<i>MainKeyword</i> <i>OptionKeyword1</i>: "value"<br>
@@ -653,7 +664,7 @@ LINE-END = CR / LF / CR LF
</blockquote>
-<h3><span class='info'>Deprecated</span><a name='cupsColorProfile'>cupsColorProfile</a></h3>
+<h3 class="title"><span class='info'>Deprecated</span><a name='cupsColorProfile'>cupsColorProfile</a></h3>
<p class='summary'>*cupsColorProfile Resolution/MediaType: "density gamma m00 m01 m02 m10 m11 m12 m20 m21 m22"</p>
@@ -690,7 +701,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</pre>
-<h3><span class='info'>macOS 10.3/CUPS 1.2</span><a name='cupsICCProfile'>cupsICCProfile</a></h3>
+<h3 class="title"><span class='info'>macOS 10.3/CUPS 1.2</span><a name='cupsICCProfile'>cupsICCProfile</a></h3>
<p class='summary'>*cupsICCProfile ColorModel.MediaType.Resolution/Description: "filename"</p>
@@ -711,7 +722,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*cupsICCProfile ../Default: "/Library/Printers/vendor/Profiles/foo-default.icc"
</pre>
-<h4>Customizing the Profile Selection Keywords</h4>
+<h4 class="title">Customizing the Profile Selection Keywords</h4>
<p>The <tt>ColorModel</tt>, <tt>MediaType</tt>, and <tt>Resolution</tt> main keywords can be reassigned to different main keywords, allowing drivers to do color profile selection based on different parameters. The <tt>cupsICCQualifier1</tt>, <tt>cupsICCQualifier2</tt>, and <tt>cupsICCQualifier3</tt> keywords define the mapping from selector to main keyword:</p>
@@ -730,7 +741,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</pre>
-<h3><span class='info'>macOS 10.4</span><a name='APCustom'>Custom Color Matching Support</a></h3>
+<h3 class="title"><span class='info'>macOS 10.4</span><a name='APCustom'>Custom Color Matching Support</a></h3>
<p class='summary'>*<a href='#APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a>: true<br>
*<a href='#APCustomColorMatchingName'>APCustomColorMatchingName</a> name/text: ""<br>
@@ -745,7 +756,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</blockquote>
-<h4><span class='info'>macOS 10.5</span><a name='APCustomColorMatchingName'>APCustomColorMatchingName</a></h4>
+<h4 class="title"><span class='info'>macOS 10.5</span><a name='APCustomColorMatchingName'>APCustomColorMatchingName</a></h4>
<p class='summary'>*APCustomColorMatchingName name/text: ""</p>
@@ -759,7 +770,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*fr.APCustomColorMatchingName name/La AcmeColor(tm): ""
</pre>
-<h4><span class='info'>macOS 10.5</span><a name='APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a></h4>
+<h4 class="title"><span class='info'>macOS 10.5</span><a name='APCustomColorMatchingProfile'>APCustomColorMatchingProfile</a></h4>
<p class='summary'>*APCustomColorMatchingProfile: name</p>
@@ -781,7 +792,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*APCustomColorMatchingProfile: AdobeRGB
</pre>
-<h4><span class='info'>macOS 10.5</span><a name='APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a></h4>
+<h4 class="title"><span class='info'>macOS 10.5</span><a name='APDefaultCustomColorMatchingProfile'>APDefaultCustomColorMatchingProfile</a></h4>
<p class='summary'>*APDefaultCustomColorMatchingProfile: name</p>
@@ -795,7 +806,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
*APDefaultCustomColorMatchingProfile: sRGB
</pre>
-<h4><span class='info'>macOS 10.4</span><a name='APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a></h4>
+<h4 class="title"><span class='info'>macOS 10.4</span><a name='APSupportsCustomColorMatching'>APSupportsCustomColorMatching</a></h4>
<p class='summary'>*APSupportsCustomColorMatching: boolean</p>
@@ -832,7 +843,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</blockquote>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsUIConstraints'>cupsUIConstraints</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsUIConstraints'>cupsUIConstraints</a></h3>
<p class='summary'>*cupsUIConstraints resolver: "*Keyword1 *Keyword2 ..."<br>
*cupsUIConstraints resolver: "*Keyword1 OptionKeyword1 *Keyword2 ..."<br>
@@ -863,7 +874,7 @@ f(x) = density * x <sup style='font-size: 100%'>gamma</sup>
</pre>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsUIResolver'>cupsUIResolver</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsUIResolver'>cupsUIResolver</a></h3>
<p class='summary'>*cupsUIResolver resolver: "*Keyword1 OptionKeyword1 *Keyword2 OptionKeyword2 ..."</p>
@@ -1081,7 +1092,7 @@ option value is "1234" then CUPS will output the string "@PJL SET PASSCODE=1234"
<p>The resulting dictionary sets the page device attributes that are sent to your raster driver in the page header.</p>
-<h3>Custom Page Size Code</h3>
+<h3 class="title">Custom Page Size Code</h3>
<p>There are many possible implementations of the <tt>CustomPageSize</tt> code. For CUPS raster drivers, the following code is recommended:</p>
@@ -1095,7 +1106,7 @@ option value is "1234" then CUPS will output the string "@PJL SET PASSCODE=1234"
</pre>
-<h3>Supported PostScript Operators</h3>
+<h3 class="title">Supported PostScript Operators</h3>
<p>CUPS supports the following PostScript operators in addition to the usual PostScript number, string (literal and hex-encoded), boolean, null, and name values:</p>
@@ -1155,7 +1166,7 @@ PRE B {
</blockquote>
-<h3>Supported Page Device Attributes</h3>
+<h3 class="title">Supported Page Device Attributes</h3>
<p>Table 2 shows the supported page device attributes along with PostScript code examples.</p>
@@ -1427,7 +1438,7 @@ PRE B {
size limits based on up to two options.</p>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMediaQualifier2'>cupsMediaQualifier2</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMediaQualifier2'>cupsMediaQualifier2</a></h3>
<p class='summary'>*cupsMediaQualifier2: MainKeyword</p>
@@ -1447,7 +1458,7 @@ custom page size limits.</p>
</pre>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMediaQualifier3'>cupsMediaQualifier3</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMediaQualifier3'>cupsMediaQualifier3</a></h3>
<p class='summary'>*cupsMediaQualifier3: MainKeyword</p>
@@ -1467,7 +1478,7 @@ custom page size limits.</p>
</pre>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMinSize'>cupsMinSize</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMinSize'>cupsMinSize</a></h3>
<p class='summary'>*cupsMinSize .Qualifier2.Qualifier3: "width length"<br>
*cupsMinSize .Qualifier2.: "width length"<br>
@@ -1491,7 +1502,7 @@ are used to identify options to use for matching.</p>
</pre>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMaxSize'>cupsMaxSize</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMaxSize'>cupsMaxSize</a></h3>
<p class='summary'>*cupsMaxSize .Qualifier2.Qualifier3: "width length"<br>
*cupsMaxSize .Qualifier2.: "width length"<br>
@@ -1515,7 +1526,7 @@ are used to identify options to use for matching.</p>
</pre>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsPageSizeCategory'>cupsPageSizeCategory</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsPageSizeCategory'>cupsPageSizeCategory</a></h3>
<p class="summary">*cupsPageSizeCategory name/text: "name name2 ... nameN"</p>
@@ -1532,7 +1543,7 @@ are used to identify options to use for matching.</p>
<h2 class='title'><a name='ATTRIBUTES'>General Attributes</a></h2>
-<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsBackSide'>cupsBackSide</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsBackSide'>cupsBackSide</a></h3>
<p class='summary'>*cupsBackSide: keyword</p>
@@ -1629,7 +1640,7 @@ will be ignored.</p>
keyword.</p>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsCommands'>cupsCommands</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsCommands'>cupsCommands</a></h3>
<p class='summary'>*cupsCommands: "name name2 ... nameN"</p>
@@ -1645,7 +1656,7 @@ by whitespace.</p>
</pre>
-<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsEvenDuplex'>cupsEvenDuplex</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsEvenDuplex'>cupsEvenDuplex</a></h3>
<p class='summary'>*cupsEvenDuplex: boolean</p>
@@ -1661,7 +1672,7 @@ printing is selected. The default value is <code>false</code>.</p>
</pre>
-<h3><a name='cupsFax'>cupsFax</a></h3>
+<h3 class="title"><a name='cupsFax'>cupsFax</a></h3>
<p class='summary'>*cupsFax: boolean</p>
@@ -1674,7 +1685,7 @@ printing is selected. The default value is <code>false</code>.</p>
</pre>
-<h3><a name='cupsFilter'>cupsFilter</a></h3>
+<h3 class="title"><a name='cupsFilter'>cupsFilter</a></h3>
<p class='summary'>*cupsFilter: "source/type cost program"</p>
@@ -1697,7 +1708,7 @@ the special filter program "-" may be specified.</p>
</pre>
-<h3><span class='info'>CUPS 1.5</span><a name='cupsFilter2'>cupsFilter2</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.5</span><a name='cupsFilter2'>cupsFilter2</a></h3>
<p class='summary'>*cupsFilter2: "source/type destination/type cost program"</p>
@@ -1723,7 +1734,7 @@ the special filter program "-" may be specified.</p>
</pre>
-<h3><span class='info'>CUPS 2.3</span><a name='cupsFinishingTemplate'>cupsFinishingTemplate</a></h3>
+<h3 class="title"><span class='info'>CUPS 2.3</span><a name='cupsFinishingTemplate'>cupsFinishingTemplate</a></h3>
<p class='summary'>*cupsFinishingTemplate name/text: ""</p>
@@ -1742,7 +1753,7 @@ the special filter program "-" may be specified.</p>
</pre>
-<h3><span class='info'>Deprecated</span><a name='cupsFlipDuplex'>cupsFlipDuplex</a></h3>
+<h3 class="title"><span class='info'>Deprecated</span><a name='cupsFlipDuplex'>cupsFlipDuplex</a></h3>
<p class='summary'>*cupsFlipDuplex: boolean</p>
@@ -1778,7 +1789,7 @@ Ghostscript can use:</p>
</pre></blockquote>
-<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsIPPFinishings'>cupsIPPFinishings</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsIPPFinishings'>cupsIPPFinishings</a></h3>
<p class='summary'>*cupsIPPFinishings number/text: "*Option Choice ..."</p>
@@ -1795,7 +1806,7 @@ values to PPD options and choices.</p>
</pre>
-<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsIPPReason'>cupsIPPReason</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsIPPReason'>cupsIPPReason</a></h3>
<p class='summary'>*cupsIPPReason reason/Reason Text: "optional URIs"</p>
@@ -1836,7 +1847,7 @@ http://www.vendor.com/help"
</pre>
-<h3><span class='info'>CUPS 1.5</span><a name='cupsIPPSupplies'>cupsIPPSupplies</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.5</span><a name='cupsIPPSupplies'>cupsIPPSupplies</a></h3>
<p class='summary'>*cupsIPPSupplies: boolean</p>
@@ -1850,7 +1861,7 @@ http://www.vendor.com/help"
</pre>
-<h3><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsJobAccountId'>cupsJobAccountId</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsJobAccountId'>cupsJobAccountId</a></h3>
<p class='summary'>*cupsJobAccountId: boolean</p>
@@ -1864,7 +1875,7 @@ http://www.vendor.com/help"
</pre>
-<h3><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsJobAccountingUserId'>cupsJobAccountingUserId</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsJobAccountingUserId'>cupsJobAccountingUserId</a></h3>
<p class='summary'>*cupsJobAccountingUserId: boolean</p>
@@ -1878,7 +1889,7 @@ http://www.vendor.com/help"
</pre>
-<h3><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsJobPassword'>cupsJobPassword</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsJobPassword'>cupsJobPassword</a></h3>
<p class='summary'>*cupsJobPassword: "format"</p>
@@ -1905,7 +1916,7 @@ password string. For example, "1111" indicated a 4-digit US ASCII PIN code.</p>
</pre>
-<h3><span class='info'>CUPS 1.2/macOS 10.5</span><a name='cupsLanguages'>cupsLanguages</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.2/macOS 10.5</span><a name='cupsLanguages'>cupsLanguages</a></h3>
<p class='summary'>*cupsLanguages: "locale list"</p>
@@ -1921,7 +1932,7 @@ list of locale names ("en", "en_US", "fr_CA", etc.)</p>
</pre>
-<h3><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsMandatory'>cupsMandatory</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.7/macOS 10.9</span><a name='cupsMandatory'>cupsMandatory</a></h3>
<p class='summary'>*cupsMandatory: "attribute1 attribute2 ... attributeN"</p>
@@ -1935,7 +1946,7 @@ list of locale names ("en", "en_US", "fr_CA", etc.)</p>
</pre>
-<h3><a name='cupsManualCopies'>cupsManualCopies</a></h3>
+<h3 class="title"><a name='cupsManualCopies'>cupsManualCopies</a></h3>
<p class='summary'>*cupsManualCopies: boolean</p>
@@ -1951,7 +1962,7 @@ hardware. The default value is <code>false</code>.</p>
</pre>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMarkerName'>cupsMarkerName</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMarkerName'>cupsMarkerName</a></h3>
<p class='summary'>*cupsMarkerName/Name Text: ""</p>
@@ -1966,7 +1977,7 @@ generated by the driver to human readable text.</p>
</pre>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMarkerNotice'>cupsMarkerNotice</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsMarkerNotice'>cupsMarkerNotice</a></h3>
<p class='summary'>*cupsMarkerNotice: "disclaimer text"</p>
@@ -1981,7 +1992,7 @@ are approximate".</p>
</pre>
-<h3><span class='info'>CUPS 1.6/macOS 10.8</span><a name='cupsMaxCopies'>cupsMaxCopies</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.6/macOS 10.8</span><a name='cupsMaxCopies'>cupsMaxCopies</a></h3>
<p class='summary'>*cupsMaxCopies: integer</p>
@@ -1995,7 +2006,7 @@ are approximate".</p>
</pre>
-<h3><a name='cupsModelNumber'>cupsModelNumber</a></h3>
+<h3 class="title"><a name='cupsModelNumber'>cupsModelNumber</a></h3>
<p class='summary'>*cupsModelNumber: number</p>
@@ -2011,7 +2022,7 @@ the output for a specific model of printer.</p>
</pre>
-<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsPJLCharset'>cupsPJLCharset</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsPJLCharset'>cupsPJLCharset</a></h3>
<p class='summary'>*cupsPJLCharset: "ISO character set name"</p>
@@ -2027,7 +2038,7 @@ assumed.</p>
</pre>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsPJLDisplay'>cupsPJLDisplay</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsPJLDisplay'>cupsPJLDisplay</a></h3>
<p class='summary'>*cupsPJLDisplay: "what"</p>
@@ -2047,7 +2058,7 @@ to use "@PJL RDYMSG DISPLAY". The default is "job".</p>
</pre>
-<h3><span class='info'>CUPS 1.2/macOS 10.5</span><a name='cupsPortMonitor'>cupsPortMonitor</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.2/macOS 10.5</span><a name='cupsPortMonitor'>cupsPortMonitor</a></h3>
<p class='summary'>*cupsPortMonitor urischeme/Descriptive Text: "port monitor"</p>
@@ -2080,7 +2091,7 @@ to disable the port monitor for the given URI scheme.</p>
</pre>
-<h3><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsPreFilter'>cupsPreFilter</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.3/macOS 10.5</span><a name='cupsPreFilter'>cupsPreFilter</a></h3>
<p class='summary'>*cupsPreFilter: "source/type cost program"</p>
@@ -2099,7 +2110,7 @@ before the filter that accepts the given MIME type.</p>
</pre>
-<h3><span class='info'>CUPS 1.5</span><a name='cupsPrintQuality'>cupsPrintQuality</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.5</span><a name='cupsPrintQuality'>cupsPrintQuality</a></h3>
<p class='summary'>*cupsPrintQuality keyword/text: "code"</p>
@@ -2124,7 +2135,7 @@ before the filter that accepts the given MIME type.</p>
</pre>
-<h3><span class='info'>CUPS 1.5</span><a name='cupsSingleFile'>cupsSingleFile</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.5</span><a name='cupsSingleFile'>cupsSingleFile</a></h3>
<p class='summary'>*cupsSingleFile: Boolean</p>
@@ -2141,7 +2152,7 @@ before the filter that accepts the given MIME type.</p>
</pre>
-<h3><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsSNMPSupplies'>cupsSNMPSupplies</a></h3>
+<h3 class="title"><span class='info'>CUPS 1.4/macOS 10.6</span><a name='cupsSNMPSupplies'>cupsSNMPSupplies</a></h3>
<p class='summary'>*cupsSNMPSupplies: boolean</p>
@@ -2157,7 +2168,7 @@ the standard SNMP Printer MIB OIDs for supply levels. The default value is
</pre>
-<h3><a name='cupsVersion'>cupsVersion</a></h3>
+<h3 class="title"><a name='cupsVersion'>cupsVersion</a></h3>
<p class='summary'>*cupsVersion: major.minor</p>
@@ -2173,7 +2184,7 @@ PPD file extensions was used. Currently it must be the string
</pre>
-<h3><span class="info">CUPS 1.6/macOS 10.8</span><a name="JCLToPDFInterpreter">JCLToPDFInterpreter</a></h3>
+<h3 class="title"><span class="info">CUPS 1.6/macOS 10.8</span><a name="JCLToPDFInterpreter">JCLToPDFInterpreter</a></h3>
<p class="summary">*JCLToPDFInterpreter: "JCL"</p>
@@ -2189,7 +2200,7 @@ PPD file extensions was used. Currently it must be the string
<h2 class='title'><a name='MACOSX'>macOS Attributes</a></h2>
-<h3><span class='info'>Deprecated</span><a name='APDialogExtension'>APDialogExtension</a></h3>
+<h3 class="title"><span class='info'>Deprecated</span><a name='APDialogExtension'>APDialogExtension</a></h3>
<p class='summary'>*APDialogExtension: "/Library/Printers/vendor/filename.plugin"</p>
@@ -2220,7 +2231,7 @@ AirPrint moving forward.</p>
</pre>
-<h3><span class='info'>macOS 10.4</span><a name='APDuplexRequiresFlippedMargin'>APDuplexRequiresFlippedMargin</a></h3>
+<h3 class="title"><span class='info'>macOS 10.4</span><a name='APDuplexRequiresFlippedMargin'>APDuplexRequiresFlippedMargin</a></h3>
<p class='summary'>*APDuplexRequiresFlippedMargin: boolean</p>
@@ -2303,7 +2314,7 @@ and the <tt>Tumble</tt> page attribute.</p>
keyword.</p>
-<h3><a name='APHelpBook'>APHelpBook</a></h3>
+<h3 class="title"><a name='APHelpBook'>APHelpBook</a></h3>
<p class='summary'>*APHelpBook: "bundle URL"</p>
@@ -2319,7 +2330,7 @@ looking up IPP reason codes for this printer driver. The
</pre>
-<h3><span class='info'>macOS 10.6</span><a name='APICADriver'>APICADriver</a></h3>
+<h3 class="title"><span class='info'>macOS 10.6</span><a name='APICADriver'>APICADriver</a></h3>
<p class='summary'>*APICADriver: boolean</p>
@@ -2334,7 +2345,7 @@ Architecture (ICA) driver for scanning. The default is <tt>False</tt>.</p>
</pre>
-<h3><span class='info'>macOS 10.3</span><a name='APPrinterIconPath'>APPrinterIconPath</a></h3>
+<h3 class="title"><span class='info'>macOS 10.3</span><a name='APPrinterIconPath'>APPrinterIconPath</a></h3>
<p class='summary'>*APPrinterIconPath: "/Library/Printers/vendor/filename.icns"</p>
@@ -2349,7 +2360,7 @@ displaying the printer. The file must be in the Apple icon format.</p>
</pre>
-<h3><span class='info'>macOS 10.4</span><a name='APPrinterLowInkTool'>APPrinterLowInkTool</a></h3>
+<h3 class="title"><span class='info'>macOS 10.4</span><a name='APPrinterLowInkTool'>APPrinterLowInkTool</a></h3>
<p class='summary'>*APPrinterLowInkTool: "/Library/Printers/vendor/program"</p>
@@ -2367,7 +2378,7 @@ Technical Note TN2144</a> for more information.</p>
</pre>
-<h3><span class='info'>macOS 10.5</span><a name='APPrinterPreset'>APPrinterPreset</a></h3>
+<h3 class="title"><span class='info'>macOS 10.5</span><a name='APPrinterPreset'>APPrinterPreset</a></h3>
<p class='summary'>*APPrinterPreset name/text: "*Option Choice ..."</p>
@@ -2438,7 +2449,7 @@ choice (*MainKeyword OptionKeyword) or a preset identifier and value
</pre>
-<h3><span class='info'>macOS 10.3</span><a name='APPrinterUtilityPath'>APPrinterUtilityPath</a></h3>
+<h3 class="title"><span class='info'>macOS 10.3</span><a name='APPrinterUtilityPath'>APPrinterUtilityPath</a></h3>
<p class='summary'>*APPrinterPrinterUtilityPath: "/Library/Printers/vendor/filename.app"</p>
@@ -2454,7 +2465,7 @@ information.</p>
</pre>
-<h3><span class='info'>macOS 10.6</span><a name='APScannerOnly'>APScannerOnly</a></h3>
+<h3 class="title"><span class='info'>macOS 10.6</span><a name='APScannerOnly'>APScannerOnly</a></h3>
<p class='summary'>*APScannerOnly: boolean</p>
@@ -2469,7 +2480,7 @@ capabilities. The default is <tt>False</tt>.</p>
</pre>
-<h3><span class='info'>macOS 10.3</span><a name='APScanAppBundleID'>APScanAppBundleID</a></h3>
+<h3 class="title"><span class='info'>macOS 10.3</span><a name='APScanAppBundleID'>APScanAppBundleID</a></h3>
<p class='summary'>*APScanAppBundleID: "bundle ID"</p>
@@ -2486,7 +2497,7 @@ the device.</p>
<h2 class='title'><a name='HISTORY'>Change History</a></h2>
-<h3>Changes in CUPS 2.3</h3>
+<h3 class="title">Changes in CUPS 2.3</h3>
<ul>
@@ -2495,7 +2506,7 @@ the device.</p>
</ul>
-<h3>Changes in CUPS 1.7</h3>
+<h3 class="title">Changes in CUPS 1.7</h3>
<ul>
@@ -2507,7 +2518,7 @@ the device.</p>
</ul>
-<h3>Changes in CUPS 1.6</h3>
+<h3 class="title">Changes in CUPS 1.6</h3>
<ul>
@@ -2522,7 +2533,7 @@ the device.</p>
</ul>
-<h3>Changes in CUPS 1.5</h3>
+<h3 class="title">Changes in CUPS 1.5</h3>
<ul>
@@ -2531,7 +2542,7 @@ the device.</p>
</ul>
-<h3>Changes in CUPS 1.4.5</h3>
+<h3 class="title">Changes in CUPS 1.4.5</h3>
<ul>
@@ -2542,7 +2553,7 @@ the device.</p>
</ul>
-<h3>Changes in CUPS 1.4</h3>
+<h3 class="title">Changes in CUPS 1.4</h3>
<ul>
@@ -2577,7 +2588,7 @@ the device.</p>
</ul>
-<h3>Changes in CUPS 1.3.1</h3>
+<h3 class="title">Changes in CUPS 1.3.1</h3>
<ul>
@@ -2592,7 +2603,7 @@ the device.</p>
</ul>
-<h3>Changes in CUPS 1.3</h3>
+<h3 class="title">Changes in CUPS 1.3</h3>
<ul>
@@ -2612,7 +2623,7 @@ the device.</p>
</ul>
-<h3>Changes in CUPS 1.2.8</h3>
+<h3 class="title">Changes in CUPS 1.2.8</h3>
<ul>
@@ -2622,7 +2633,7 @@ the device.</p>
</ul>
-<h3>Changes in CUPS 1.2</h3>
+<h3 class="title">Changes in CUPS 1.2</h3>
<ul>
@@ -2648,7 +2659,7 @@ the device.</p>
</ul>
-<h3>Changes in CUPS 1.1</h3>
+<h3 class="title">Changes in CUPS 1.1</h3>
<ul>