diff options
Diffstat (limited to 'doc/help/api-overview.html')
-rw-r--r-- | doc/help/api-overview.html | 512 |
1 files changed, 0 insertions, 512 deletions
diff --git a/doc/help/api-overview.html b/doc/help/api-overview.html deleted file mode 100644 index d6d5140..0000000 --- a/doc/help/api-overview.html +++ /dev/null @@ -1,512 +0,0 @@ -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> -<html> -<!-- SECTION: Programming --> -<head> - <title>Introduction to CUPS 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.7"> -<style type="text/css"><!-- -BODY { - font-family: lucida grande, geneva, helvetica, arial, sans-serif; -} - -H1, H2, H3, H4, H5, H6, P, TD, TH { - font-family: lucida grande, geneva, helvetica, arial, sans-serif; -} - -KBD { - font-family: monaco, courier, monospace; - font-weight: bold; -} - -PRE { - font-family: monaco, courier, monospace; -} - -PRE.command { - border: dotted thin #7f7f7f; - margin-left: 36pt; - padding: 10px; -} - -P.compact { - margin: 0; -} - -P.example { - font-style: italic; - margin-left: 36pt; -} - -DL.man DD { - margin-left: 5em; -} - -DL.man DT { - margin-left: 0; -} - -PRE.man { - margin: 0; -} - -PRE.example { - background: #eeeeee; - border: dotted thin #999999; - margin-left: 36pt; - padding: 10pt; -} - -PRE.command EM, PRE.example EM { - font-family: lucida grande, geneva, helvetica, arial, sans-serif; -} - -P.command { - font-family: monaco, courier, monospace; - margin-left: 36pt; -} - -P.formula { - font-style: italic; - margin-left: 36pt; -} - -BLOCKQUOTE { - background: #eeeeee; - border: solid thin #999999; - padding: 10pt; -} - -A IMG { - border: none; -} - -A:link:hover IMG { - background: #f0f0f0; - border-radius: 10px; - -moz-border-radius: 10px; -} - -A:link, A:visited { - font-weight: inherit; - text-decoration: none; -} - -A:link:hover, A:visited:hover, A:active { - text-decoration: underline; -} - -SUB, SUP { - font-size: 50%; -} - -TR.data, TD.data, TR.data TD { - margin-top: 10pt; - padding: 5pt; - border-bottom: solid 1pt #999999; -} - -TR.data TH { - border-bottom: solid 1pt #999999; - padding-top: 10pt; - padding-left: 5pt; - text-align: left; -} - -DIV.table TABLE { - border: solid thin #999999; - border-collapse: collapse; - border-spacing: 0; - margin-left: auto; - margin-right: auto; -} - -DIV.table CAPTION { - caption-side: top; - font-size: 120%; - font-style: italic; - font-weight: bold; - margin-left: auto; - margin-right: auto; -} - -DIV.table TABLE TD { - border: solid thin #cccccc; - padding-top: 5pt; -} - -DIV.table TABLE TH { - background: #cccccc; - border: none; - border-bottom: solid thin #999999; -} - -DIV.figure TABLE { - margin-left: auto; - margin-right: auto; -} - -DIV.figure CAPTION { - caption-side: bottom; - font-size: 120%; - font-style: italic; - font-weight: bold; - margin-left: auto; - margin-right: auto; -} - -TH.label { - text-align: right; - vertical-align: top; -} - -TH.sublabel { - text-align: right; - font-weight: normal; -} - -HR { - border: solid thin; -} - -SPAN.info { - background: black; - border: thin solid black; - color: white; - font-size: 80%; - font-style: italic; - font-weight: bold; - white-space: nowrap; -} - -H2 SPAN.info, H3 SPAN.info, H4 SPAN.info { - float: right; - font-size: 100%; -} - -H1.title { -} - -H2.title, H3.title { - border-bottom: solid 2pt #000000; -} - -DIV.indent, TABLE.indent { - margin-top: 2em; - margin-left: auto; - margin-right: auto; - width: 90%; -} - -TABLE.indent { - border-collapse: collapse; -} - -TABLE.indent TD, TABLE.indent TH { - padding: 0; -} - -TABLE.list { - border-collapse: collapse; - margin-left: auto; - margin-right: auto; - width: 90%; -} - -TABLE.list TH { - background: white; - border-bottom: solid thin #cccccc; - color: #444444; - padding-top: 10pt; - padding-left: 5pt; - text-align: left; - vertical-align: bottom; - white-space: nowrap; -} - -TABLE.list TH A { - color: #4444cc; -} - -TABLE.list TD { - border-bottom: solid thin #eeeeee; - padding-top: 5pt; - padding-left: 5pt; -} - -TABLE.list TR:nth-child(even) { - background: #f8f8f8; -} - -TABLE.list TR:nth-child(odd) { - background: #f4f4f4; -} - -DT { - margin-left: 36pt; - margin-top: 12pt; -} - -DD { - margin-left: 54pt; -} - -DL.category DT { - font-weight: bold; -} - -P.summary { - margin-left: 36pt; - font-family: monaco, courier, monospace; -} - -DIV.summary TABLE { - border: solid thin #999999; - border-collapse: collapse; - border-spacing: 0; - margin: 10px; -} - -DIV.summary TABLE TD, DIV.summary TABLE TH { - border: solid thin #999999; - padding: 5px; - text-align: left; - vertical-align: top; -} - -DIV.summary TABLE THEAD TH { - background: #eeeeee; -} - -/* API documentation styles... */ -div.body h1 { - margin: 0; -} -div.body h2 { - margin-top: 1.5em; -} -div.body h3, div.body h4, div.body h5 { - margin-bottom: 0.5em; - margin-top: 1.5em; -} -.class, .enumeration, .function, .struct, .typedef, .union { - border-bottom: solid thin #999999; - margin-bottom: 0; - margin-top: 2em; -} -.description { - margin-top: 0.5em; -} -code, p.code, pre, ul.code li { - font-family: monaco, courier, monospace; - font-size: 90%; -} -ul.code, ul.contents, ul.subcontents { - list-style-type: none; - margin: 0; - padding-left: 0; -} -ul.code li { - margin: 0; -} -ul.contents > li { - margin-top: 1em; -} -ul.contents li ul.code, ul.contents li ul.subcontents { - padding-left: 2em; -} -div.body dl { - margin-left: 0; - margin-top: 0; -} -div.body dt { - font-style: italic; - margin-left: 0; - margin-top: 0; -} -div.body dd { - margin-bottom: 0.5em; -} - -/* This is just for the HTML files generated with the framedhelp target */ -div.contents { - background: #e8e8e8; - border: solid thin black; - padding: 10px; -} -div.contents h1 { - font-size: 110%; -} -div.contents h2 { - font-size: 100%; -} -div.contents ul.contents { - font-size: 80%; -} -div.contents ul.subcontents li { - margin-left: 1em; - text-indent: -1em; -} ---></style> -</head> -<body> -<div class='body'> -<!-- - Introduction to CUPS programming header for CUPS. - - Copyright 2008-2016 by Apple Inc. - - These coded instructions, statements, and computer programs are the - property of Apple Inc. and are protected by Federal copyright - law. Distribution and use rights are outlined in the file "LICENSE.txt" - which should have been included with this file. If this file is - file is missing or damaged, see the license at "http://www.cups.org/". ---> - -<h1 class='title'>Introduction to CUPS Programming</h1> - -<div class='summary'><table summary='General Information'> -<thead> -<tr> - <th>Headers</th> - <th>cups/cups.h<br> - cups/adminutil.h<br> - cups/array.h<br> - cups/dir.h<br> - cups/file.h<br> - cups/http.h<br> - cups/ipp.h<br> - cups/language.h<br> - cups/ppd.h<br> - cups/pwg.h<br> - cups/raster.h</th> -</tr> -</thead> -<tbody> -<tr> - <th>Libraries</th> - <td>-lcups</td> -</tr> -<tr> - <th>See Also</th> - <td>Programming: <a href='raster-driver.html' target='_top'>Developing Raster Printer Drivers</a><br> - Programming: <a href='postscript-driver.html' target='_top'>Developing PostScript Printer Drivers</a><br> - Programming: <a href='api-filter.html' target='_top'>Filter and Backend Programming</a><br> - Programming: <a href='ppd-compiler.html' target='_top'>Introduction to the PPD Compiler</a><br> - Programming: <a href='api-admin.html' target='_top'>Administrative APIs</a><br> - Programming: <a href='api-array.html' target='_top'>Array API</a><br> - Programming: <a href='api-cups.html' target='_top'>CUPS API</a><br> - Programming: <a href='api-filedir.html' target='_top'>File and Directory APIs</a><br> - Programming: <a href='api-httpipp.html' target='_top'>HTTP and IPP APIs</a><br> - Programming: <a href='api-ppd.html' target='_top'>PPD API (DEPRECATED)</a><br> - Programming: <a href='api-raster.html' target='_top'>Raster API</a><br> - References: <a href='ref-ppdcfile.html' target='_top'>PPD Compiler Driver Information File Reference</a><br> - Specifications: <a href='spec-ppd.html' target='_top'>CUPS PPD Extensions</a></td> -</tr> -</tbody> -</table></div> -<h2 class="title">Contents</h2> -<ul class="contents"> -<li><a href="#OVERVIEW">Overview</a></li> -<li><a href="#COMPILING">Compiling Programs</a><ul class="subcontents"> - <li><a href="#XCODE">Compiling with Xcode</a></li> - <li><a href="#COMMANDLINE">Compiling with GCC</a></li> -</ul></li> -<li><a href="#WHERETOGO">Where to Go Next</a></li> -</ul> -<!-- - Introduction to CUPS programming content for CUPS. - - Copyright 2008-2011 by Apple Inc. - - These coded instructions, statements, and computer programs are the - property of Apple Inc. and are protected by Federal copyright - law. Distribution and use rights are outlined in the file "LICENSE.txt" - which should have been included with this file. If this file is - file is missing or damaged, see the license at "http://www.cups.org/". ---> - -<h2 class="title"><a name="OVERVIEW">Overview</a></h2> - -<p>CUPS provides two libraries that interface with the different parts of the -printing system. The "cups" library provides all of the common application and -filter functions while the "cupsimage" library provides all of the imaging -functions used in raster printer drivers. The "cups" library functions are -accessed by including the <var><cups/cups.h></var> header, while -"cupsimage" functions are found in the <var><cups/raster.h></var> -header.</p> - -<h2 class="title"><a name="COMPILING">Compiling Programs</a></h2> - -<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 printers on the system:</p> - -<pre class="example"> -#include <stdio.h> -#include <cups/cups.h> - -int main(void) -{ - int i; - cups_dest_t *dests, *dest; - int num_dests = cupsGetDests(&dests); - - for (i = num_dests, dest = dests; i > 0; i --, dest ++) - { - if (dest->instance) - printf("%s/%s\n", dest->name, dest->instance); - else - puts(dest->name); - } - - return (0); -} -</pre> - -<h3><a name="XCODE">Compiling with Xcode</a></h3> - -<p>In Xcode, choose <var>New Project...</var> from the <var>File</var> menu, -then select the <var>Standard Tool</var> project type under <var>Command Line -Utility</var>. Click <var>Next</var> and choose a project directory. Click -<var>Next</var> to create the project.</p> - -<p>In the project window, double-click on the <var>Targets</var> group and -control-click on the simple target to show the context menu. Choose -<var>Existing Framework...</var> from the <var>Add</var> submenu. When the file -chooser sheet appears, press the <kbd>/</kbd> key and enter "/usr/lib". Scroll -down the file list and select the <var>libcups.dylib</var> file. Click the -<var>Add</var> button in the file chooser and attributes sheets.</p> - -<p>In the project window, double-click on the <var>main.c</var> source file. -Replace the template source code with the listing above and save it. Click the -<var>Build and Go</var> button to build the sample program and run it.</p> - -<h3><a name="COMMANDLINE">Compiling with GCC</a></h3> - -<p>From the command-line, create a file called <var>sample.c</var> using your -favorite editor and then run the following command to compile it with GCC and -run it:</p> - -<pre class="command"> -gcc -o simple `cups-config --cflags` simple.c `cups-config --libs` -./simple -</pre> - -<p>The <code>cups-config</code> command provides the compiler flags -("cups-config --cflags") and libraries ("cups-config --libs") needed for the -local system.</p> - -<h2 class="title"><a name="WHERETOGO">Where to Go Next</a></h2> - -<p>If you are developing a print filter, driver, or backend, see the -<a href="api-filter.html" target="_top">Filter and Backend Programming</a> -guide. Raster printer driver developers should also read the -<a href="api-raster.html" target="_top">Raster API</a> reference.</p> -</div> -</body> -</html> |