]> git.ipfire.org Git - thirdparty/cups.git/blobdiff - doc/sum.html
Load cups into easysw/current.
[thirdparty/cups.git] / doc / sum.html
diff --git a/doc/sum.html b/doc/sum.html
deleted file mode 100644 (file)
index 2135cb6..0000000
+++ /dev/null
@@ -1,1732 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
-<HTML>
-<HEAD>
-<TITLE>CUPS Software Users Manual</TITLE>
-<META NAME="author" CONTENT="Easy Software Products">
-<META NAME="copyright" CONTENT="Copyright 1997-2003, All Rights Reserved">
-<META NAME="docnumber" CONTENT="CUPS-SUM-1.2.0">
-<META HTTP-EQUIV="Content-Type" CONTENT="text/html; CHARSET=iso-8859-1">
-<STYLE TYPE="text/css"><!--
-BODY { font-family: serif }
-H1 { font-family: sans-serif }
-H2 { font-family: sans-serif }
-H3 { font-family: sans-serif }
-H4 { font-family: sans-serif }
-H5 { font-family: sans-serif }
-H6 { font-family: sans-serif }
-SUB { font-size: smaller }
-SUP { font-size: smaller }
-PRE { font-family: monospace }
---></STYLE>
-</HEAD>
-<BODY BGCOLOR="#ffffff">
-<CENTER><A HREF="#CONTENTS"><IMG SRC="images/cups-large.gif" BORDER="0" WIDTH="431" HEIGHT="511"><BR>
-<H1>CUPS Software Users Manual</H1></A><BR>
-CUPS-SUM-1.2.0<BR>
-Easy Software Products<BR>
-Copyright 1997-2003, All Rights Reserved<BR>
-</CENTER>
-<HR>
-<H1 ALIGN="CENTER"><A NAME="CONTENTS">Table of Contents</A></H1>
-<BR>
-<BR><B><A HREF="#1">Preface</A></B>
-<UL>
-<LI><A HREF="#1_1">System Overview</A></LI>
-<LI><A HREF="#1_2">Document Overview</A></LI>
-<LI><A HREF="#1_3">Notation Conventions</A></LI>
-<LI><A HREF="#1_4">Abbreviations</A></LI>
-<LI><A HREF="#1_5">Other References</A></LI>
-</UL>
-<B><A HREF="#OVERVIEW">1 - Printing System Overview</A></B>
-<UL>
-<LI><A HREF="#2_1">The Printing Problem</A></LI>
-<LI><A HREF="#2_2">The Technology</A></LI>
-<LI><A HREF="#2_3">Jobs</A></LI>
-<LI><A HREF="#2_4">Classes</A></LI>
-<LI><A HREF="#2_5">Filters</A></LI>
-<LI><A HREF="#2_6">Backends</A></LI>
-<LI><A HREF="#2_7">Printer Drivers</A></LI>
-<LI><A HREF="#2_8">Networking</A></LI>
-</UL>
-<B><A HREF="#USING_SYSTEM">2 - Using the Printing System</A></B>
-<UL>
-<LI><A HREF="#3_1">Submitting Files for Printing</A></LI>
-<LI><A HREF="#3_2">Choosing a Printer</A></LI>
-<LI><A HREF="#3_3">Setting Printer Options</A></LI>
-<LI><A HREF="#3_4">Printing Multiple Copies</A></LI>
-<LI><A HREF="#3_5">Checking the Printer Status from the Command-Line</A></LI>
-<LI><A HREF="#3_6">Checking the Printer Status from the Web</A></LI>
-<LI><A HREF="#3_7">Canceling a Print Job</A></LI>
-</UL>
-<B><A HREF="#STANDARD_OPTIONS">3 - Standard Printer Options</A></B>
-<UL>
-<LI><A HREF="#4_1">General Options</A></LI>
-<UL>
-<LI><A HREF="#4_1_1">Selecting the Media Size, Type, and Source</A></LI>
-<LI><A HREF="#4_1_2">Setting the Orientation</A></LI>
-<LI><A HREF="#4_1_3">Printing On Both Sides of the Paper</A></LI>
-</UL>
-<LI><A HREF="#4_2">Banner Options</A></LI>
-<UL>
-<LI><A HREF="#4_2_1">Selecting the Banner Page(s)</A></LI>
-</UL>
-<LI><A HREF="#4_3">Document Options</A></LI>
-<UL>
-<LI><A HREF="#4_3_1">Selecting a Range of Pages</A></LI>
-<LI><A HREF="#4_3_2">Selecting Even or Odd Pages</A></LI>
-<LI><A HREF="#4_3_3">N-Up Printing</A></LI>
-<LI><A HREF="#4_3_4">Setting the Brightness</A></LI>
-<LI><A HREF="#4_3_5">Setting the Gamma Correction</A></LI>
-</UL>
-<LI><A HREF="#4_4">Text Options</A></LI>
-<UL>
-<LI><A HREF="#4_4_1">Setting the Number of Characters Per Inch</A></LI>
-<LI><A HREF="#4_4_2">Setting the Number of Lines Per Inch</A></LI>
-<LI><A HREF="#4_4_3">Setting the Number of Columns</A></LI>
-<LI><A HREF="#4_4_4">Setting the Page Margins</A></LI>
-<LI><A HREF="#4_4_5">Pretty Printing</A></LI>
-</UL>
-<LI><A HREF="#4_5">Image Options</A></LI>
-<UL>
-<LI><A HREF="#4_5_1">Positioning the Image</A></LI>
-<LI><A HREF="#4_5_2">Scaling the Image</A></LI>
-<LI><A HREF="#4_5_3">Adjusting the Hue (Tint) of an Image</A></LI>
-<LI><A HREF="#4_5_4">Adjusting the Saturation (Color) of an Image</A></LI>
-</UL>
-<LI><A HREF="#4_6">HP-GL/2 Options</A></LI>
-<UL>
-<LI><A HREF="#4_6_1">Printing in Black</A></LI>
-<LI><A HREF="#4_6_2">Fitting the Plot on the Page</A></LI>
-<LI><A HREF="#4_6_3">Setting the Default Pen Width</A></LI>
-</UL>
-<LI><A HREF="#4_7">Raw or Unfiltered Output</A></LI>
-</UL>
-<B><A HREF="#SAVING_OPTIONS">4 - Saving Printer Options and Defaults</A></B>
-<UL>
-<LI><A HREF="#5_1">Printer Options</A></LI>
-<LI><A HREF="#5_2">Setting Options for a Specific Printer</A></LI>
-<LI><A HREF="#5_3">Removing Options</A></LI>
-<LI><A HREF="#5_4">Viewing the Current Defaults</A></LI>
-<LI><A HREF="#5_5">Viewing Options for a Specific Printer</A></LI>
-<LI><A HREF="#5_6">Setting the Default Printer</A></LI>
-<LI><A HREF="#5_7">Printer Instances</A></LI>
-<LI><A HREF="#5_8">Removing Instances</A></LI>
-</UL>
-<B><A HREF="#LICENSE">A - Software License Agreement</A></B>
-<UL>
-<LI><A HREF="#6_1">Common UNIX Printing System License Agreement</A></LI>
-<UL>
-<LI><A HREF="#6_1_1">Introduction</A></LI>
-<LI><A HREF="#6_1_2">License Exceptions</A></LI>
-<LI><A HREF="#6_1_3">Trademarks</A></LI>
-<LI><A HREF="#6_1_4">Binary Distribution Rights</A></LI>
-<LI><A HREF="#6_1_5">Support</A></LI>
-</UL>
-<LI><A HREF="#6_2">GNU GENERAL PUBLIC LICENSE</A></LI>
-<LI><A HREF="#6_3">GNU LIBRARY GENERAL PUBLIC LICENSE</A></LI>
-</UL>
-<HR>
-<H1 ALIGN="RIGHT"><A NAME="1">Preface</A></H1>
-<P>This software users manual describes how to use the Common UNIX
- Printing System<SUP>TM</SUP> (&quot;CUPS<SUP>TM</SUP>&quot;) Version 1.2.0.</P>
-<H2><A NAME="1_1">System Overview</A></H2>
-<P>CUPS provides a portable printing layer for UNIX&reg;-based operating
- systems. It has been developed by<A HREF="http://www.easysw.com"> Easy
- Software Products</A> to promote a standard printing solution for all
- UNIX vendors and users. CUPS provides the System V and Berkeley
- command-line interfaces.</P>
-<P>CUPS uses the Internet Printing Protocol (&quot;IPP&quot;) as the basis for
- managing print jobs and queues. The Line Printer Daemon (&quot;LPD&quot;) Server
- Message Block (&quot;SMB&quot;), and AppSocket (a.k.a. JetDirect) protocols are
- also supported with reduced functionality. CUPS adds network printer
- browsing and PostScript Printer Description (&quot;PPD&quot;) based printing
- options to support real-world printing under UNIX.</P>
-<P>CUPS also includes a customized version of GNU Ghostscript (currently
- based off GNU Ghostscript 5.50) and an image file RIP that are used to
- support non-PostScript printers. Sample drivers for HP and EPSON
- printers are included that use these filters.</P>
-
-<!-- NEED 2in -->
-<H2><A NAME="1_2">Document Overview</A></H2>
-<P>This software users manual is organized into the following sections:</P>
-<UL>
-<LI><A HREF="#OVERVIEW">1 - Printing System Overview</A></LI>
-<LI><A HREF="#USING_SYSTEM">2 - Using the Printing System</A></LI>
-<LI><A HREF="#STANDARD_OPTIONS">3 - Standard Printer Options</A></LI>
-<LI><A HREF="#SAVING_OPTIONS">4 - Saving Printer Options and Defaults</A>
-</LI>
-<LI><A HREF="#LICENSE">A - Software License Agreement</A></LI>
-</UL>
-<H2><A NAME="1_3">Notation Conventions</A></H2>
-<P>Various font and syntax conventions are used in this guide. Examples
- and their meanings and uses are explained below:
-<CENTER>
-<TABLE WIDTH="80%">
-<TR><TH>Example</TH><TD>&nbsp;&nbsp;&nbsp;</TD><TH>Description</TH></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR VALIGN="TOP"><TD><CODE>lpstat</CODE>
-<BR> <CODE>lpstat(1)</CODE></TD><TD>&nbsp;&nbsp;&nbsp;</TD><TD>The names of commands;
- the first mention of a command or function in a chapter is followed by
- a manual page section number.</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR VALIGN="TOP"><TD><VAR>/var</VAR>
-<BR><VAR> /usr/share/cups/data/testprint.ps</VAR></TD><TD>&nbsp;&nbsp;&nbsp;</TD><TD>
-File and directory names.</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR VALIGN="TOP"><TD NOWRAP><TT>Request ID is Printer-123</TT></TD><TD>
-&nbsp;&nbsp;&nbsp;</TD><TD>Screen output.</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR VALIGN="TOP"><TD NOWRAP><KBD>lp -d printer filename ENTER</KBD></TD><TD>
-&nbsp;&nbsp;&nbsp;</TD><TD>Literal user input; special keys like <KBD>ENTER</KBD> are
- in ALL CAPS.</TD></TR>
-<TR><TD>&nbsp;</TD></TR>
-<TR VALIGN="TOP"><TD>12.3</TD><TD>&nbsp;&nbsp;&nbsp;</TD><TD>Numbers in the text are
- written using the period (.) to indicate the decimal point.</TD></TR>
-</TABLE>
-</CENTER>
-
-<!-- NEED 3in -->
-</P>
-<H2><A NAME="1_4">Abbreviations</A></H2>
- The following abbreviations are used throughout this manual:
-<UL>
-<DL>
-<DT>kb</DT>
-<DD>Kilobytes, or 1024 bytes
-<BR>&nbsp;</DD>
-<DT>Mb</DT>
-<DD>Megabytes, or 1048576 bytes
-<BR>&nbsp;</DD>
-<DT>Gb</DT>
-<DD>Gigabytes, or 1073741824 bytes
-<BR>&nbsp;</DD>
-</DL>
-</UL>
-<H2><A NAME="1_5">Other References</A></H2>
-<UL>
-<DL>
-<DT>CUPS Software Administrators Manual</DT>
-<DD>An administration guide for the CUPS software.
-<BR>&nbsp;</DD>
-<DT>CUPS Software Programmers Manual</DT>
-<DD>A programmer guide for interfacing with and/or extending the CUPS
- software.
-<BR>&nbsp;</DD>
-</DL>
-</UL>
-<H1 ALIGN="RIGHT"><A NAME="OVERVIEW">1 - Printing System Overview</A></H1>
-<P>This chapter provides an overview of how the Common UNIX Printing
- System works.</P>
-<H2><A NAME="2_1">The Printing Problem</A></H2>
-<P>For years<I> the printing problem</I> has plagued UNIX. Unlike
- Microsoft&reg; Windows&reg; or Mac OS, UNIX has no standard interface or system
- in place for supporting printers. Among the solutions currently
- available, the Berkeley and System V printing systems are the most
- prevalent.</P>
-<P>These printing systems support line printers (text only) or
- PostScript printers (text and graphics), and with some coaxing they can
- be made to support a full range of printers and file formats. However,
- because each varient of the UNIX operating system uses a different
- printing system than the next developing printer drivers for a wide
- range of printers and operating systems is extremely difficult. That
- combined with the limited volume of customers for each UNIX varient has
- forced most printer vendors to give up supporting UNIX entirely.</P>
-<P>CUPS is designed to eliminate<I> the printing problem</I>. One common
- printing system can be used by all UNIX varients to support the
- printing needs of users. Printer vendors can use its modular filter
- interface to develop a single driver program that supports a wide range
- of file formats with little or no effort. Since CUPS provides both the
- System V and Berkeley printing commands, users (and applications) can
- reap the benefits of this new technology with no changes.</P>
-<H2><A NAME="2_2">The Technology</A></H2>
-<P>CUPS is based upon an emerging Internet standard called the Internet
- Printing Protocol. IPP has been embraced by dozens of printer and
- printer server manufacturers and is supported by Microsoft Windows
- 2000.</P>
-<P>IPP defines a standard protocol for printing as well as managing
- print jobs and printer options like media size, resolution, and so
- forth. Like all IP-based protocols, IPP can be used locally or over the
- Internet to printers hundreds or thousands of miles away. Unlike other
- protocols, however, IPP also supports access control, authentication,
- and encryption, making it a much more capable and secure printing
- solution than older ones.</P>
-<P>IPP is layered on top of the Hyper-Text Transport Protocol (&quot;HTTP&quot;)
- which is the basis of web servers on the Internet. This allows users to
- view documentation, check status information on a printer or server,
- and manage their printers, classes, and jobs using their web browser.</P>
-<P>CUPS provides a complete IPP/1.1 based printing system that provides
- Basic, Digest, and local certificate authentication and user, domain,
- or IP-based access control. TLS encryption will be available in future
- versions of CUPS.</P>
-<H2><A NAME="2_3">Jobs</A></H2>
-<P>Each file or set of files that is submitted for printing is called a<I>
- job</I>. Jobs are identified by a unique number starting at 1 and are
- assigned to a particular destination, usually a printer. Jobs can also
- have options associated with them such as media size, number of copies,
- and priority.</P>
-<H2><A NAME="2_4">Classes</A></H2>
-<P>CUPS supports collections of printers known as<I> classes</I>. Jobs
- sent to a class are forwarded to the first available printer in the
- class.</P>
-<H2><A NAME="2_5">Filters</A></H2>
-<P>Filters allow a user or application to print many types of files
- without extra effort. Print jobs sent to a CUPS server are filtered
- before sending them to a printer. Some filters convert job files to
- different formats that the printer can understand. Others perform page
- selection and ordering tasks.</P>
-<P>CUPS provides filters for printing many types of image files, HP-GL/2
- files, PDF files, and text files. CUPS also supplies PostScript and
- image file Raster Image Processor (&quot;RIP&quot;) filters that convert
- PostScript or image files into bitmaps that can be sent to a raster
- printer.</P>
-<H2><A NAME="2_6">Backends</A></H2>
-<P>Backends perform the most important task of all - they send the
- filtered print data to the printer.</P>
-<P>CUPS provides backends for printing over parallel, serial, and USB
- ports, and over the network via the IPP, JetDirect (AppSocket), and
- Line Printer Daemon (&quot;LPD&quot;) protocols. Additional backends are
- available in network service packages such as the SMB backend included
- with the popular SAMBA software.</P>
-<P>Backends are also used to determine the available devices. On startup
- each backend is asked for a list of devices it supports, and any
- information that is available. This allows the parallel backend to tell
- CUPS that an EPSON Stylus Color 600 printer is attached to parallel
- port 1, for example.</P>
-<H2><A NAME="2_7">Printer Drivers</A></H2>
-<P>Printer drivers in CUPS consist of one of more filters specific to a
- printer. CUPS includes sample printer drivers for Hewlett-Packard
- LaserJet and DeskJet printers and EPSON 9-pin, 24-pin, Stylus Color,
- and Stylus Photo printers. While these drivers do not generate optimal
- output for the different printer models, they do provide basic printing
- and demonstrate how you can write your own printer drivers and
- incorporate them into CUPS.</P>
-<H2><A NAME="2_8">Networking</A></H2>
-<P>Printers and classes on the local system are automatically shared
- with other systems on the network. This allows you to setup one system
- to print to a printer and use this system as a printer server or spool
- host for all of the others. Users may then select a local printer by
- name or a remote printer using &quot;name@server&quot;.</P>
-<P>CUPS also provides<I> implicit classes</I>, which are collections of
- printers and/or classes with the same name. This allows you to setup
- multiple servers pointing to the same physical network printer, for
- example, so that you aren't relying on a single system for printing.
- Because this also works with printer classes, you can setup multiple
- servers and printers and never worry about a single point of failure
- unless all of the printers and servers go down!</P>
-<H1 ALIGN="RIGHT"><A NAME="USING_SYSTEM">2 - Using the Printing System</A>
-</H1>
-<P>This chapter shows you how to submit, query, and cancel print jobs to
- different printers.</P>
-<H2><A NAME="3_1">Submitting Files for Printing</A></H2>
-<P>CUPS provides both the System V (<CODE>lp(1)</CODE>) and Berkeley (<CODE>
-lpr(1)</CODE>) printing commands. Type the following command to print a
- file to the default (or only) printer on the system:</P>
-<UL>
-<PRE>
-<B>lp filename ENTER</B>
-</PRE>
-</UL>
-<P>or:</P>
-<UL>
-<PRE>
-<B>lpr filename ENTER</B>
-</PRE>
-</UL>
-<P>CUPS understands many different types of files directly, including
- PostScript and image files. This allows you to print from inside your
- applications or at the command-line, whichever is most convenient!</P>
-<H2><A NAME="3_2">Choosing a Printer</A></H2>
-<P>Many systems will have more than one printer available to the user.
- These printers can be attached to the local system via a parallel,
- serial, or USB port, or available over the network.</P>
-<P>Use the <CODE>lpstat(1)</CODE> command to see a list of available
- printers:</P>
-<UL>
-<PRE>
-<B>lpstat -p -d ENTER</B>
-</PRE>
-</UL>
-<P>The <CODE>-p</CODE> option specifies that you want to see a list of
- printers, and the <CODE>-d</CODE> option reports the current default
- printer or class.</P>
-<P>Use the <CODE>-d</CODE> option with the <CODE>lp</CODE> command to
- print to a specific printer:</P>
-<UL>
-<PRE>
-<B>lp -d printer filename ENTER</B>
-</PRE>
-</UL>
-<P>or the <CODE>-P</CODE> option with the <CODE>lpr</CODE> command:</P>
-<UL>
-<PRE>
-<B>lpr -P printer filename ENTER</B>
-</PRE>
-</UL>
-<H2><A NAME="3_3">Setting Printer Options</A></H2>
-<P>For many types of files, the default printer options may be
- sufficient for your needs. However, there may be times when you need to
- change the options for a particular file you are printing.</P>
-<P>The <CODE>lp</CODE> and <CODE>lpr</CODE> commands allow you to pass
- printer options using the <CODE>-o</CODE> option:</P>
-<UL>
-<PRE>
-<B>lp -o landscape -o scaling=75 -o media=A4 filename.jpg
-<B>lpr -o landscape -o scaling=75 -o media=A4 filename.jpg
-</B></B></PRE>
-</UL>
-<P>The available printer options vary depending on the printer. The
- standard options are described in<A HREF="#STANDARD_OPTIONS"> Chapter
- 3, &quot;Standard Printing Options&quot;</A>.</P>
-<H2><A NAME="3_4">Printing Multiple Copies</A></H2>
-<P>Both the <CODE>lp</CODE> and <CODE>lpr</CODE> commands have options
- for printing more than one copy of a file:</P>
-<UL>
-<PRE>
-<B>lp -n <I>num-copies</I> filename ENTER</B>
-<B>lpr -#<I>num-copies</I> filename ENTER</B>
-</PRE>
-</UL>
-<P>Copies are normally<I> not</I> collated for you. Use the <CODE>-o
- Collate=True</CODE> option to get collated copies :</P>
-<UL>
-<PRE>
-<B>lp -n <I>num-copies</I> -o Collate=True filename ENTER</B>
-<B>lpr -#<I>num-copies</I> -o Collate=True filename ENTER</B>
-</PRE>
-</UL>
-
-<!-- NEED 3in -->
-<H2><A NAME="3_5">Checking the Printer Status from the Command-Line</A></H2>
-<P>The <CODE>lpstat</CODE> command can be used to check for jobs that
- you have submitted for printing:</P>
-<UL>
-<PRE>
-<B>lpstat ENTER</B>
-Printer-1 johndoe 4427776
-Printer-2 johndoe 15786
-Printer-3 johndoe 372842
-</PRE>
-</UL>
-<P>The jobs are listed in the order they will be printed. Use the <CODE>
--p</CODE> option to see which files and printers are active:</P>
-<UL>
-<PRE>
-<B>lpstat -p ENTER</B>
-printer DeskJet now printing DeskJet-1.
-</PRE>
-</UL>
-
-<!-- NEED 2in -->
-<P>Use the <CODE>-o</CODE> and <CODE>-p</CODE> options together to show
- the jobs and the printers:</P>
-<UL>
-<PRE>
-<B>lpstat -o -p ENTER</B>
-Printer-1 johndoe 4427776
-Printer-2 johndoe 15786
-Printer-3 johndoe 372842
-printer DeskJet now printing DeskJet-1.
-</PRE>
-</UL>
-<H2><A NAME="3_6">Checking the Printer Status from the Web</A></H2>
-<P>Since CUPS uses the Internet Printing Protocol, it is also a
- fully-functional web server. To use your web browser to monitor the
- printers on your system, open the URL:</P>
-<UL>
-<PRE>
-<A HREF="http://localhost:631">http://localhost:631</A>
-</PRE>
-</UL>
-<P>From there you can view the status of classes, jobs, and printers
- with the click of a button!</P>
-<H2><A NAME="3_7">Canceling a Print Job</A></H2>
-<P>The <CODE>cancel(1)</CODE> and <CODE>lprm(1)</CODE> commands cancel a
- print job:</P>
-<UL>
-<PRE>
-<B>cancel <I>job-id</I> ENTER</B>
-<B>lprm <I>job-id</I> ENTER</B>
-</PRE>
-</UL>
-<P>The <CODE>job-id</CODE> is the number that was reported to you by the
- <CODE>lp</CODE> or <CODE>lpstat</CODE> commands.</P>
-<H1 ALIGN="RIGHT"><A NAME="STANDARD_OPTIONS">3 - Standard Printer
- Options</A></H1>
-<P>This chapter describes the standard printer options that are
- available when printing with the <CODE>lp</CODE> and <CODE>lpr</CODE>
- commands.</P>
-<H2><A NAME="4_1">General Options</A></H2>
-<P>The following options apply when printing all types of files.
-<!-- NEED 2in -->
-</P>
-<H3><A NAME="4_1_1">Selecting the Media Size, Type, and Source</A></H3>
-<P>The <CODE>-o media=xyz</CODE> option sets the media size, type,
- and/or source:</P>
-<UL>
-<PRE>
-<B>lp -o media=Letter filename ENTER</B>
-<B>lp -o media=Letter,MultiPurpose filename ENTER</B>
-<B>lpr -o media=Letter,Transparency filename ENTER</B>
-<B>lpr -o media=Letter,MultiPurpose,Transparency filename ENTER</B>
-</PRE>
-</UL>
-
-<!-- NEED 3in -->
-<P>The available media sizes, types, and sources depend on the printer,
- but most support the following options (case is not significant):</P>
-<UL>
-<LI><CODE>Letter</CODE> - US Letter (8.5x11 inches, or 216x279mm)</LI>
-<LI><CODE>Legal</CODE> - US Legal (8.5x14 inches, or 216x356mm)</LI>
-<LI><CODE>A4</CODE> - ISO A4 (8.27x11.69 inches, or 210x297mm)</LI>
-<LI><CODE>COM10</CODE> - US #10 Envelope (9.5x4.125 inches, or
- 241x105mm)</LI>
-<LI><CODE>DL</CODE> - ISO DL Envelope (8.66x4.33 inches, or 220x110mm)</LI>
-<LI><CODE>Transparency</CODE> - Transparency media type or source</LI>
-<LI><CODE>Upper</CODE> - Upper paper tray</LI>
-<LI><CODE>Lower</CODE> - Lower paper tray</LI>
-<LI><CODE>MultiPurpose</CODE> - Multi-purpose paper tray</LI>
-<LI><CODE>LargeCapacity</CODE> - Large capacity paper tray</LI>
-</UL>
-<P>The actual options supported are defined in the printer's PPD file in
- the <CODE>PageSize</CODE>, <CODE>InputSlot</CODE>, and <CODE>MediaType</CODE>
- options.</P>
-<H3><A NAME="4_1_2">Setting the Orientation</A></H3>
-<P>The <CODE>-o landscape</CODE> option will rotate the page 90 degrees
- to print in landscape orientation:</P>
-<UL>
-<PRE>
-<B>lp -o landscape filename ENTER</B>
-<B>lpr -o landscape filename ENTER</B>
-</PRE>
-</UL>
-<H3><A NAME="4_1_3">Printing On Both Sides of the Paper</A></H3>
-<P>The <CODE>-o sides=two-sided-short-edge</CODE> and <CODE>-o
- sides=two-sided-long-edge</CODE> options will enable duplexing on the
- printer, if the printer supports it. The <CODE>-o
- sides=two-sided-short-edge</CODE> option is suitable for landscape
- pages, while the <CODE>-o sides=two-sided-long-edge</CODE> option is
- suitable for portrait pages:</P>
-<UL>
-<PRE>
-<B>lp -o sides=two-sided-short-edge filename ENTER</B>
-<B>lp -o sides=two-sided-long-edge filename ENTER</B>
-<B>lpr -o sides=two-sided-long-edge filename ENTER</B>
-</PRE>
-</UL>
-<P>The default is to print single-sided:</P>
-<UL>
-<PRE>
-<B>lp -o sides=one-sided filename ENTER</B>
-<B>lpr -o sides=one-sided filename ENTER</B>
-</PRE>
-</UL>
-<H2><A NAME="4_2">Banner Options</A></H2>
-<P>The following options apply when printing all types of files.</P>
-<H3><A NAME="4_2_1">Selecting the Banner Page(s)</A></H3>
-<P>The <CODE>-o jobsheets=start,end</CODE> option sets the banner
- page(s) to use for a job:</P>
-<UL>
-<PRE>
-<B>lp -o job-sheets=none filename ENTER</B>
-<B>lp -o job-sheets=standard filename ENTER</B>
-<B>lpr -o job-sheets=classified,classified filename ENTER</B>
-</PRE>
-</UL>
-<P>If only one banner file is specified, it will be printed before the
- files in the job. If a second banner file is specified, it is printed
- after the files in the job.</P>
-<P>The available banner pages depend on the local system configuration;
- CUPS includes the following banner files:</P>
-<UL>
-<LI><CODE>none</CODE> - Do not produce a banner page.</LI>
-<LI><CODE>classified</CODE> - A banner page with a &quot;classified&quot; label at
- the top and bottom.</LI>
-<LI><CODE>confidential</CODE> - A banner page with a &quot;confidential&quot;
- label at the top and bottom.</LI>
-<LI><CODE>secret</CODE> - A banner page with a &quot;secret&quot; label at the top
- and bottom.</LI>
-<LI><CODE>standard</CODE> - A banner page with no label at the top and
- bottom.</LI>
-<LI><CODE>topsecret</CODE> - A banner page with a &quot;top secret&quot; label at
- the top and bottom.</LI>
-<LI><CODE>unclassified</CODE> - A banner page with an &quot;unclassified&quot;
- label at the top and bottom.</LI>
-</UL>
-<H2><A NAME="4_3">Document Options</A></H2>
-<P>The following options apply when printing all types of files.</P>
-<H3><A NAME="4_3_1">Selecting a Range of Pages</A></H3>
-<P>The <CODE>-o page-ranges=pages</CODE> option selects a range of pages
- for printing:</P>
-<UL>
-<PRE>
-<B>lp -o page-ranges=1 filename ENTER</B>
-<B>lp -o page-ranges=1-4 filename ENTER</B>
-<B>lp -o page-ranges=1-4,7,9-12 filename ENTER</B>
-<B>lpr -o page-ranges=1-4,7,9-12 filename ENTER</B>
-</PRE>
-</UL>
-<P>As shown above, the <CODE>pages</CODE> value can be a single page, a
- range of pages, or a collection of page numbers and ranges separated by
- commas. The pages will always be printed in ascending order, regardless
- of the order of the pages in the <CODE>page-ranges</CODE> option.</P>
-<P>The default is to print all pages.</P>
-<H3><A NAME="4_3_2">Selecting Even or Odd Pages</A></H3>
-<P>Use the <CODE>-o page-set=set</CODE> option to select the even or odd
- pages:</P>
-<UL>
-<PRE>
-<B>lp -o page-set=odd filename ENTER</B>
-<B>lp -o page-set=even filename ENTER</B>
-<B>lpr -o page-set=even filename ENTER</B>
-</PRE>
-</UL>
-<P>The default is to print all pages.</P>
-<H3><A NAME="4_3_3">N-Up Printing</A></H3>
-<P>The <CODE>-o number-up=value</CODE> option selects N-Up printing.
- N-Up printing places multiple document pages on a single printed page.
- CUPS supports 1, 2, 4, 6, 9, and 16-Up formats; the default format is
- 1-Up:</P>
-<UL>
-<PRE>
-<B>lp -o number-up=1 filename ENTER</B>
-<B>lp -o number-up=2 filename ENTER</B>
-<B>lp -o number-up=4 filename ENTER</B>
-<B>lpr -o number-up=16 filename ENTER</B>
-</PRE>
-</UL>
-<P>The <CODE>-o page-border=value</CODE> option chooses the border to
- draw around each page:</P>
-<UL>
-<LI><CODE>-o page-border=double</CODE>; draw two hairline borders around
- each page</LI>
-<LI><CODE>-o page-border=double-thick</CODE>; draw two 1pt borders
- around each page</LI>
-<LI><CODE>-o page-border=none</CODE>; do not draw a border (default)</LI>
-<LI><CODE>-o page-border=single</CODE>; draw one hairline border around
- each page</LI>
-<LI><CODE>-o page-border=single-thick</CODE>; draw one 1pt border around
- each page</LI>
-</UL>
-<P>The <CODE>-o number-up-layout=value</CODE> option chooses the layout
- of the pages on each output page:</P>
-<UL>
-<LI><CODE>-o number-up-layout=btlr</CODE>; Bottom to top, left to right</LI>
-<LI><CODE>-o number-up-layout=btrl</CODE>; Bottom to top, right to left</LI>
-<LI><CODE>-o number-up-layout=lrbt</CODE>; Left to right, bottom to top</LI>
-<LI><CODE>-o number-up-layout=lrtb</CODE>; Left to right, top to bottom
- (default)</LI>
-<LI><CODE>-o number-up-layout=rlbt</CODE>; Right to left, bottom to top</LI>
-<LI><CODE>-o number-up-layout=rltb</CODE>; Right to left, top to bottom</LI>
-<LI><CODE>-o number-up-layout=tblr</CODE>; Top to bottom, left to right</LI>
-<LI><CODE>-o number-up-layout=tbrl</CODE>; Top to bottom, right to left</LI>
-</UL>
-<H3><A NAME="4_3_4">Setting the Brightness</A></H3>
-<P>You can control the overall brightness of the printed output using
- the <CODE>-o brightness=percent</CODE> option:</P>
-<UL>
-<PRE>
-<B>lp -o brightness=120 filename ENTER</B>
-<B>lpr -o brightness=120 filename ENTER</B>
-</PRE>
-</UL>
-<P>Values greater than 100 will lighten the print, while values less
- than 100 will darken it.</P>
-<H3><A NAME="4_3_5">Setting the Gamma Correction</A></H3>
-<P>You can control the overall gamma correction of the printed output
- using the <CODE>-o gamma=value</CODE> option:</P>
-<UL>
-<PRE>
-<B>lp -o gamma=1700 filename ENTER</B>
-<B>lpr -o gamma=1700 filename ENTER</B>
-</PRE>
-</UL>
-<P>Values greater than 1000 will lighten the print, while values less
- than 1000 will darken it. The default gamma is 1000.</P>
-<H2><A NAME="4_4">Text Options</A></H2>
-<P>The following options apply when printing text files.</P>
-<H3><A NAME="4_4_1">Setting the Number of Characters Per Inch</A></H3>
-<P>The <CODE>-o cpi=value</CODE> option sets the number of characters
- per inch:</P>
-<UL>
-<PRE>
-<B>lp -o cpi=10 filename ENTER</B>
-<B>lp -o cpi=12 filename ENTER</B>
-<B>lpr -o cpi=17 filename ENTER</B>
-</PRE>
-</UL>
-<P>The default characters per inch is 10.</P>
-<H3><A NAME="4_4_2">Setting the Number of Lines Per Inch</A></H3>
-<P>The <CODE>-o lpi=value</CODE> option sets the number of lines per
- inch:</P>
-<UL>
-<PRE>
-<B>lp -o lpi=6 filename ENTER</B>
-<B>lpr -o lpi=8 filename ENTER</B>
-</PRE>
-</UL>
-<P>The default lines per inch is 6.</P>
-<H3><A NAME="4_4_3">Setting the Number of Columns</A></H3>
-<P>The <CODE>-o columns=value</CODE> option sets the number of text
- columns:</P>
-<UL>
-<PRE>
-<B>lp -o columns=2 filename ENTER</B>
-<B>lpr -o columns=3 filename ENTER</B>
-</PRE>
-</UL>
-<P>The default number of columns is 1.</P>
-<H3><A NAME="4_4_4">Setting the Page Margins</A></H3>
-<P>Normally the page margins are set to the hard limits of the printer.
- Use the <CODE>-o page-left=value</CODE>, <CODE>-o page-right=value</CODE>
-, <CODE>-o page-top=value</CODE>, and <CODE>-o page-bottom=value</CODE>
- options to adjust the page margins:</P>
-<UL>
-<PRE>
-<B>lp -o page-left=<I>value</I> filename ENTER</B>
-<B>lp -o page-right=<I>value</I> filename ENTER</B>
-<B>lp -o page-top=<I>value</I> filename ENTER</B>
-<B>lp -o page-bottom=<I>value</I> filename ENTER</B>
-<B>lpr -o page-bottom=<I>value</I> filename ENTER</B>
-</PRE>
-</UL>
-<P>The <CODE>value</CODE> argument is the margin in points; each point
- is 1/72 inch or 0.35mm.</P>
-<H3><A NAME="4_4_5">Pretty Printing</A></H3>
-<P>The <CODE>-o prettyprint</CODE> option puts a header at the top of
- each page with the page number, job title (usually the filename), and
- the date. Also, C and C++ keywords are highlighted, and comment lines
- are italicized:</P>
-<UL>
-<PRE>
-<B>lp -o prettyprint filename ENTER</B>
-<B>lpr -o prettyprint filename ENTER</B>
-</PRE>
-</UL>
-<H2><A NAME="4_5">Image Options</A></H2>
-<P>The following options apply when printing image files.</P>
-<H3><A NAME="4_5_1">Positioning the Image</A></H3>
-<P>The <CODE>-o position=name</CODE> option specifies the position of
- the image on the page:</P>
-<UL>
-<LI><CODE>center</CODE> - Center the image on the page (default)</LI>
-<LI><CODE>top</CODE> - Print the image centered at the top of the page</LI>
-<LI><CODE>left</CODE> - Print the image centered on the left of page</LI>
-<LI><CODE>right</CODE> - Print the image centered on the right of the
- page</LI>
-<LI><CODE>top-left</CODE> - Print the image at the top left corner of
- the page</LI>
-<LI><CODE>top-right</CODE> - Print the image at the top right corner of
- the page</LI>
-<LI><CODE>bottom</CODE> - Print the image centered at the bottom of the
- page</LI>
-<LI><CODE>bottom-left</CODE> - Print the image at the bottom left corner
- of the page</LI>
-<LI><CODE>bottom-right</CODE> - Print the image at the bottom right
- corner of the page</LI>
-</UL>
-<H3><A NAME="4_5_2">Scaling the Image</A></H3>
-<P>The <CODE>-o scaling=percent</CODE>, <CODE>-o ppi=value</CODE>, and <CODE>
--o natural-scaling=percent</CODE> options change the size of a printed
- image:</P>
-<UL>
-<PRE>
-<B>lp -o scaling=<I>percent</I> filename ENTER</B>
-<B>lp -o ppi=<I>value</I> filename ENTER</B>
-<B>lpr -o natural-scaling=<I>percent</I> filename ENTER</B>
-</PRE>
-</UL>
-<P>The <CODE>scaling=percent</CODE> value is a number from 1 to 800
- specifying the size in relation to the page (<I>not</I> the image.) A
- scaling of 100 percent will fill the page as completely as the image
- aspect ratio allows. A scaling of 200 percent will print on up to 4
- pages.</P>
-<P>The <CODE>ppi=value</CODE> value is a number from 1 to 1200
- specifying the resolution of the image in pixels per inch. An image
- that is 3000x2400 pixels will print 10x8 inches at 300 pixels per inch,
- for example. If the specified resolution makes the image larger than
- the page, multiple pages will be printed to satisfy the request.</P>
-<P>The <CODE>natural-scaling=percent</CODE> value is a number from 1 to
- 800 specifying the size in relation to the natural image size. A
- scaling of 100 percent will print the image at its natural size, while
- a scaling of 50 percent will print the image at half its natural size.
- If the specified scaling makes the image larger than the page, multiple
- pages will be printed to satisfy the request.</P>
-<H3><A NAME="4_5_3">Adjusting the Hue (Tint) of an Image</A></H3>
-<P>The <CODE>-o hue=value</CODE> option will adjust the hue of the
- printed image, much like the tint control on your television:</P>
-<UL>
-<PRE>
-<B>lp -o hue=<I>value</I> filename ENTER</B>
-<B>lpr -o hue=<I>value</I> filename ENTER</B>
-</PRE>
-</UL>
-
-<!-- NEED 3in -->
-<P>The <CODE>value</CODE> argument is a number from -360 to 360 and
- represents the color hue rotation. The following table summarizes the
- change you'll see with different colors:
-<CENTER>
-<TABLE BORDER="1" WIDTH="50%">
-<TR><TH>Original</TH><TH>hue=-45</TH><TH>hue=45</TH></TR>
-<TR><TD>Red</TD><TD>Purple</TD><TD>Yellow-orange</TD></TR>
-<TR><TD>Green</TD><TD>Yellow-green</TD><TD>Blue-green</TD></TR>
-<TR><TD>Yellow</TD><TD>Orange</TD><TD>Green-yellow</TD></TR>
-<TR><TD>Blue</TD><TD>Sky-blue</TD><TD>Purple</TD></TR>
-<TR><TD>Magenta</TD><TD>Indigo</TD><TD>Crimson</TD></TR>
-<TR><TD>Cyan</TD><TD>Blue-green</TD><TD>Light-navy-blue</TD></TR>
-</TABLE>
-</CENTER>
-</P>
-<P>The default hue adjustment is 0.</P>
-<H3><A NAME="4_5_4">Adjusting the Saturation (Color) of an Image</A></H3>
-<P>The <CODE>-o saturation=percent</CODE> option adjusts the saturation
- of the colors in an image, much like the color knob on your television:</P>
-<UL>
-<PRE>
-<B>lp -o saturation=<I>percent</I> filename ENTER</B>
-<B>lpr -o saturation=<I>percent</I> filename ENTER</B>
-</PRE>
-</UL>
-<P>The <CODE>percent</CODE> argument specifies the color saturation from
- 0 to 200. A color saturation of 0 produces a black-and-white print,
- while a value of 200 will make the colors extremely intense.</P>
-<P>The default saturation is 100.
-<!-- NEED 4in -->
-</P>
-<H2><A NAME="4_6">HP-GL/2 Options</A></H2>
-<P>The following options apply to HP-GL/2 files.</P>
-<H3><A NAME="4_6_1">Printing in Black</A></H3>
-<P>The <CODE>-o blackplot</CODE> option specifies that all pens should
- plot in black:</P>
-<UL>
-<PRE>
-<B>lp -o blackplot filename ENTER</B>
-<B>lpr -o blackplot filename ENTER</B>
-</PRE>
-</UL>
-<P>The default is to use the colors defined in the plot file or the
- standard pen colors defined in the HP-GL/2 reference manual from
- Hewlett Packard.</P>
-<H3><A NAME="4_6_2">Fitting the Plot on the Page</A></H3>
-<P>The <CODE>-o fitplot</CODE> option specifies that the plot should be
- scaled to fit on the page:</P>
-<UL>
-<PRE>
-<B>lp -o fitplot filename ENTER</B>
-<B>lpr -o fitplot filename ENTER</B>
-</PRE>
-</UL>
-<P>The default is to use the absolute distances specified in the plot
- file.
-<CENTER>
-<TABLE BGCOLOR="#cccccc" BORDER="1" CELLPADDING="5" WIDTH="80%">
-<TR><TD><B> NOTE:</B>
-<P>This feature depends upon an accurate plot size (<CODE>PS</CODE>)
- command in the HP-GL/2 file. If no plot size is given in the file than
- the HP-GL/2 filter assumes the plot is ANSI E size.</P>
-</TD></TR>
-</TABLE>
-</CENTER>
-</P>
-<H3><A NAME="4_6_3">Setting the Default Pen Width</A></H3>
-<P>The <CODE>-o penwidth=value</CODE> option specifies the default pen
- width for HP-GL/2 files:</P>
-<UL>
-<PRE>
-<B>lp -o penwidth=<I>value</I> filename ENTER</B>
-<B>lpr -o penwidth=<I>value</I> filename ENTER</B>
-</PRE>
-</UL>
-<P>The pen width <CODE>value</CODE> specifies the pen width in
- micrometers. The default value of 1000 produces lines that are 1
- millimeter in width. Specifying a pen width of 0 produces lines that
- are exactly 1 pixel wide.
-<CENTER>
-<TABLE BGCOLOR="#cccccc" BORDER="1" CELLPADDING="5" WIDTH="80%">
-<TR><TD><B> NOTE:</B>
-<P>This option is ignored when the pen widths are set in the plot file.</P>
-</TD></TR>
-</TABLE>
-</CENTER>
-</P>
-<H2><A NAME="4_7">Raw or Unfiltered Output</A></H2>
-<P>The <CODE>-o raw</CODE> option allows you to send files directly to a
- printer without filtering. This is sometimes required when printing
- from applications that provide their own &quot;printer drivers&quot; for your
- printer:</P>
-<UL>
-<PRE>
-<B>lp -o raw filename ENTER</B>
-<B>lpr -o raw filename ENTER</B>
-</PRE>
-</UL>
-<P>The <CODE>-l</CODE> option can also be used with the <CODE>lpr</CODE>
- command to send files directly to a printer:</P>
-<UL>
-<PRE>
-<B>lpr -l filename ENTER</B>
-</PRE>
-</UL>
-<H1 ALIGN="RIGHT"><A NAME="SAVING_OPTIONS">4 - Saving Printer Options
- and Defaults</A></H1>
-<P>This chapter describes how to save printer options for your printer
- and set your own default printer.</P>
-<H2><A NAME="5_1">Printer Options</A></H2>
-<P>Each printer supports a large number of options, which you learned
- about in<A HREF="#STANDARD_OPTIONS"> Chapter 3, &quot;Standard Printer
- Options&quot;</A>. Rather than specifying these options each time you print
- a file, CUPS allows you to save them as &quot;default&quot; options for the
- printer.</P>
-<P>The <CODE>lpoptions(1)</CODE> command saves the options for your
- printers. Like the <CODE>lp</CODE> and <CODE>lpr</CODE> commands, it
- accepts printer options using the <CODE>-o</CODE> argument:</P>
-<UL>
-<PRE>
-<B>lpoptions -o prettyprint ENTER</B>
-<B>lpoptions -o media=A4 -o sides=two-sided-long-edge ENTER</B>
-<B>lpoptions -o media=Legal -o scaling=100 ENTER</B>
-</PRE>
-</UL>
-<P>Once saved, any <CODE>lp</CODE> or <CODE>lpr</CODE> command will use
- them when you print.</P>
-<H2><A NAME="5_2">Setting Options for a Specific Printer</A></H2>
-<P>The previous example shows how to set the options for the default
- printer. The <CODE>-p printer</CODE> option specifies the options are
- for another printer:</P>
-<UL>
-<PRE>
-<B>lpoptions -p laserjet -o prettyprint ENTER</B>
-<B>lpoptions -p laserjet -o media=A4 -o sides=two-sided-long-edge ENTER</B>
-<B>lpoptions -p deskjet -o media=Legal -o scaling=100 ENTER</B>
-</PRE>
-</UL>
-<H2><A NAME="5_3">Removing Options</A></H2>
-<P>The previous two examples shows how to set options for the default
- and a specific printer. Below, shows you how to remove the saved option
- using the <CODE>-r</CODE> argument:</P>
-<UL>
-<PRE>
-<KBD>lpoptions -r prettyprint <I>ENTER</I></KBD>
-<KBD>lpoptions -p laserjet -r prettyprint <I>ENTER</I></KBD>
-</PRE>
-</UL>
-<H2><A NAME="5_4">Viewing the Current Defaults</A></H2>
-<P>The <CODE>lpoptions</CODE> command can also be used to show the
- current options by not specifying any new options on the command-line:</P>
-<UL>
-<PRE>
-<B>lpoptions ENTER</B>
-media=A4 sides=two-sided-long-edge
-<B>lpoptions -p deskjet ENTER</B>
-media=Legal scaling=100
-</PRE>
-</UL>
-<H2><A NAME="5_5">Viewing Options for a Specific Printer</A></H2>
-<P>You can display the supported options using the <CODE>lpoptions</CODE>
- command with the <CODE>-l</CODE> option, as follows:</P>
-<UL>
-<PRE>
-<B>lpoptions -p laserjet -l ENTER</B>
-</PRE>
-</UL>
-<H2><A NAME="5_6">Setting the Default Printer</A></H2>
-<P>The administrator normally will set a system-wide default printer
- that is normally used as the default printer by everyone. Use the <CODE>
--d printer</CODE> option to set your own default printer:</P>
-<UL>
-<PRE>
-<B>lpoptions -d deskjet ENTER</B>
-</PRE>
-</UL>
-<P>The printer can be local (<CODE>deskjet</CODE>) or remote (<CODE>
-deskjet@server</CODE>).</P>
-<H2><A NAME="5_7">Printer Instances</A></H2>
-<P>Besides setting options for each print queue, CUPS supports<I>
- printer instances</I> which allow you to define several different sets
- of options for each printer. You specify a printer instance using the
- slash (<CODE>/</CODE>) character:</P>
-<UL>
-<PRE>
-<B>lpoptions -p laserjet/duplex -o sides=two-sided-long-edge ENTER</B>
-<B>lpoptions -p laserjet/legal -o media=Legal ENTER</B>
-</PRE>
-</UL>
-<P>The <CODE>lp</CODE> and <CODE>lpr</CODE> commands also understand
- this notation:</P>
-<UL>
-<PRE>
-<B>lp -d laserjet/duplex filename ENTER</B>
-<B>lpr -P laserjet/legal filename ENTER</B>
-</PRE>
-</UL>
-<H2><A NAME="5_8">Removing Instances</A></H2>
-<P>Use the <CODE>-x printer/instance</CODE> option to remove a printer
- instance that you no longer need:</P>
-<UL>
-<PRE>
-<B>lpoptions -x laserjet ENTER</B>
-<B>lpoptions -x laserjet/duplex ENTER</B>
-<B>lpoptions -x laserjet/legal ENTER</B>
-</PRE>
-</UL>
-<P>The <CODE>-x</CODE> option only removes the default options for that
- printer and instance; the original print queue will remain until
- deleted with the <CODE>lpadmin(8)</CODE> command by the administrator.</P>
-<H1 ALIGN="RIGHT"><A NAME="LICENSE">A - Software License Agreement</A></H1>
-<H2 ALIGN="CENTER"><A NAME="6_1">Common UNIX Printing System License
- Agreement</A></H2>
-<P ALIGN="CENTER">Copyright 1997-2003 by Easy Software Products
-<BR> 44141 AIRPORT VIEW DR STE 204
-<BR> HOLLYWOOD, MARYLAND 20636-3111 USA
-<BR>
-<BR> Voice: +1.301.373.9600
-<BR> Email:<A HREF="mailto:cups-info@cups.org"> cups-info@cups.org</A>
-<BR> WWW:<A HREF="http://www.cups.org"> http://www.cups.org</A></P>
-<H3><A NAME="6_1_1">Introduction</A></H3>
-<P>The Common UNIX Printing System<SUP>TM</SUP>, (&quot;CUPS<SUP>TM</SUP>&quot;),
- is provided under the GNU General Public License (&quot;GPL&quot;) and GNU
- Library General Public License (&quot;LGPL&quot;), Version 2, with exceptions for
- Apple operating systems and the OpenSSL toolkit. A copy of the
- exceptions and licenses follow this introduction.</P>
-<P>The GNU LGPL applies to the CUPS API library, located in the &quot;cups&quot;
- subdirectory of the CUPS source distribution and in the &quot;cups&quot; include
- directory and library files in the binary distributions. The GNU GPL
- applies to the remainder of the CUPS distribution, including the
- &quot;pdftops&quot; filter which is based upon Xpdf and the CUPS imaging library.</P>
-<P>For those not familiar with the GNU GPL, the license basically allows
- you to:</P>
-<UL>
-<LI>Use the CUPS software at no charge.</LI>
-<LI>Distribute verbatim copies of the software in source or binary form.</LI>
-<LI>Sell verbatim copies of the software for a media fee, or sell
- support for the software.</LI>
-<LI>Distribute or sell printer drivers and filters that use CUPS so long
- as source code is made available under the GPL.</LI>
-</UL>
-<P>What this license<B> does not</B> allow you to do is make changes or
- add features to CUPS and then sell a binary distribution without source
- code. You must provide source for any new drivers, changes, or
- additions to the software, and all code must be provided under the GPL
- or LGPL as appropriate. The only exceptions to this are the portions of
- the CUPS software covered by the Apple operating system license
- exceptions outlined later in this license agreement.</P>
-<P>The GNU LGPL relaxes the &quot;link-to&quot; restriction, allowing you to
- develop applications that use the CUPS API library under other licenses
- and/or conditions as appropriate for your application.</P>
-<H3><A NAME="6_1_2">License Exceptions</A></H3>
-<P>In addition, as the copyright holder of CUPS, Easy Software Products
- grants the following special exceptions:</P>
-<OL>
-<LI><B>Apple Operating System Development License Exception</B>;
-<OL TYPE="a">
-<LI>Software that is developed by any person or entity for an Apple
- Operating System (&quot;Apple OS-Developed Software&quot;), including but not
- limited to Apple and third party printer drivers, filters, and backends
- for an Apple Operating System, that is linked to the CUPS imaging
- library or based on any sample filters or backends provided with CUPS
- shall not be considered to be a derivative work or collective work
- based on the CUPS program and is exempt from the mandatory source code
- release clauses of the GNU GPL. You may therefore distribute linked
- combinations of the CUPS imaging library with Apple OS-Developed
- Software without releasing the source code of the Apple OS-Developed
- Software. You may also use sample filters and backends provided with
- CUPS to develop Apple OS-Developed Software without releasing the
- source code of the Apple OS-Developed Software.</LI>
-<LI>An Apple Operating System means any operating system software
- developed and/or marketed by Apple Computer, Inc., including but not
- limited to all existing releases and versions of Apple's Darwin, Mac OS
- X, and Mac OS X Server products and all follow-on releases and future
- versions thereof.</LI>
-<LI>This exception is only available for Apple OS-Developed Software and
- does not apply to software that is distributed for use on other
- operating systems.</LI>
-<LI>All CUPS software that falls under this license exception have the
- following text at the top of each source file:<BLOCKQUOTE>This file is
- subject to the Apple OS-Developed Software exception.</BLOCKQUOTE></LI>
-</OL>
-</LI>
-<LI><B>OpenSSL Toolkit License Exception</B>;
-<OL TYPE="a">
-<LI>Easy Software Products explicitly allows the compilation and
- distribution of the CUPS software with the OpenSSL Toolkit.</LI>
-</OL>
-</LI>
-</OL>
-<P>No developer is required to provide these exceptions in a derived
- work.</P>
-<H3><A NAME="6_1_3">Trademarks</A></H3>
-<P>Easy Software Products has trademarked the Common UNIX Printing
- System, CUPS, and CUPS logo. These names and logos may be used freely
- in any direct port or binary distribution of CUPS. Please contract Easy
- Software Products for written permission to use them in derivative
- products. Our intention is to protect the value of these trademarks and
- ensure that any derivative product meets the same high-quality
- standards as the original.</P>
-<H3><A NAME="6_1_4">Binary Distribution Rights</A></H3>
-<P>Easy Software Products also sells rights to the CUPS source code
- under a binary distribution license for vendors that are unable to
- release source code for their drivers, additions, and modifications to
- CUPS under the GNU GPL and LGPL. For information please contact us at
- the address shown above.</P>
-<P>The Common UNIX Printing System provides a &quot;pdftops&quot; filter that is
- based on the Xpdf software. For binary distribution licensing of this
- software, please contact:<BLOCKQUOTE> Derek B. Noonburg
-<BR> Email:<A HREF="mailto:derekn@foolabs.com"> derekn@foolabs.com</A>
-<BR> WWW:<A HREF="http://www.foolabs.com/xpdf/">
- http://www.foolabs.com/xpdf/</A></BLOCKQUOTE></P>
-<H3><A NAME="6_1_5">Support</A></H3>
-<P>Easy Software Products sells software support for CUPS as well as a
- commercial printing product based on CUPS called ESP Print Pro. You can
- find out more at our web site:</P>
-<UL>
-<PRE>
-<A HREF="http://www.easysw.com/">http://www.easysw.com/</A>
-</PRE>
-</UL>
-
-<!-- NEW PAGE -->
-<H2><A NAME="6_2">GNU GENERAL PUBLIC LICENSE</A></H2>
-<P>Version 2, June 1991</P>
-<PRE>
-Copyright 1989, 1991 Free Software Foundation, Inc.
-59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-
-Everyone is permitted to copy and distribute verbatim
-copies of this license document, but changing it is not allowed.
-</PRE>
-<H4>Preamble</H4>
-<P>The licenses for most software are designed to take away your freedom
- to share and change it. By contrast, the GNU General Public License is
- intended to guarantee your freedom to share and change free
- software--to make sure the software is free for all its users. This
- General Public License applies to most of the Free Software
- Foundation's software and to any other program whose authors commit to
- using it. (Some other Free Software Foundation software is covered by
- the GNU Library General Public License instead.) You can apply it to
- your programs, too.</P>
-<P>When we speak of free software, we are referring to freedom, not
- price. Our General Public Licenses are designed to make sure that you
- have the freedom to distribute copies of free software (and charge for
- this service if you wish), that you receive source code or can get it
- if you want it, that you can change the software or use pieces of it in
- new free programs; and that you know you can do these things.</P>
-<P>To protect your rights, we need to make restrictions that forbid
- anyone to deny you these rights or to ask you to surrender the rights.
- These restrictions translate to certain responsibilities for you if you
- distribute copies of the software, or if you modify it.</P>
-<P>For example, if you distribute copies of such a program, whether
- gratis or for a fee, you must give the recipients all the rights that
- you have. You must make sure that they, too, receive or can get the
- source code. And you must show them these terms so they know their
- rights.</P>
-<P>We protect your rights with two steps: (1) copyright the software,
- and (2) offer you this license which gives you legal permission to
- copy, distribute and/or modify the software.</P>
-<P>Also, for each author's protection and ours, we want to make certain
- that everyone understands that there is no warranty for this free
- software. If the software is modified by someone else and passed on, we
- want its recipients to know that what they have is not the original, so
- that any problems introduced by others will not reflect on the original
- authors' reputations.</P>
-<P>Finally, any free program is threatened constantly by software
- patents. We wish to avoid the danger that redistributors of a free
- program will individually obtain patent licenses, in effect making the
- program proprietary. To prevent this, we have made it clear that any
- patent must be licensed for everyone's free use or not licensed at all.</P>
-<P>The precise terms and conditions for copying, distribution and
- modification follow.</P>
-<H4>GNU GENERAL PUBLIC LICENSE
-<BR> TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION</H4>
-<OL START="0">
-<LI>This License applies to any program or other work which contains a
- notice placed by the copyright holder saying it may be distributed
- under the terms of this General Public License. The &quot;Program&quot;, below,
- refers to any such program or work, and a &quot;work based on the Program&quot;
- means either the Program or any derivative work under copyright law:
- that is to say, a work containing the Program or a portion of it,
- either verbatim or with modifications and/or translated into another
- language. (Hereinafter, translation is included without limitation in
- the term &quot;modification&quot;.) Each licensee is addressed as &quot;you&quot;.
-<P>Activities other than copying, distribution and modification are not
- covered by this License; they are outside its scope. The act of running
- the Program is not restricted, and the output from the Program is
- covered only if its contents constitute a work based on the Program
- (independent of having been made by running the Program). Whether that
- is true depends on what the Program does.</P>
-<LI>You may copy and distribute verbatim copies of the Program's source
- code as you receive it, in any medium, provided that you conspicuously
- and appropriately publish on each copy an appropriate copyright notice
- and disclaimer of warranty; keep intact all the notices that refer to
- this License and to the absence of any warranty; and give any other
- recipients of the Program a copy of this License along with the
- Program.
-<P>You may charge a fee for the physical act of transferring a copy, and
- you may at your option offer warranty protection in exchange for a fee.</P>
-<LI>You may modify your copy or copies of the Program or any portion of
- it, thus forming a work based on the Program, and copy and distribute
- such modifications or work under the terms of Section 1 above, provided
- that you also meet all of these conditions:
-<OL TYPE="a">
-<LI>You must cause the modified files to carry prominent notices stating
- that you changed the files and the date of any change.</LI>
-<LI>You must cause any work that you distribute or publish, that in
- whole or in part contains or is derived from the Program or any part
- thereof, to be licensed as a whole at no charge to all third parties
- under the terms of this License.</LI>
-<LI>if the modified program normally reads commands interactively when
- run, you must cause it, when started running for such interactive use
- in the most ordinary way, to print or display an announcement including
- an appropriate copyright notice and a notice that there is no warranty
- (or else, saying that you provide a warranty) and that users may
- redistribute the program under these conditions, and telling the user
- how to view a copy of this License. (Exception: if the Program itself
- is interactive but does not normally print such an announcement, your
- work based on the Program is not required to print an announcement.)</LI>
-</OL>
-<P>These requirements apply to the modified work as a whole. If
- identifiable sections of that work are not derived from the Program,
- and can be reasonably considered independent and separate works in
- themselves, then this License, and its terms, do not apply to those
- sections when you distribute them as separate works. But when you
- distribute the same sections as part of a whole which is a work based
- on the Program, the distribution of the whole must be on the terms of
- this License, whose permissions for other licensees extend to the
- entire whole, and thus to each and every part regardless of who wrote
- it.</P>
-<P>Thus, it is not the intent of this section to claim rights or contest
- your rights to work written entirely by you; rather, the intent is to
- exercise the right to control the distribution of derivative or
- collective works based on the Program.</P>
-<P>In addition, mere aggregation of another work not based on the
- Program with the Program (or with a work based on the Program) on a
- volume of a storage or distribution medium does not bring the other
- work under the scope of this License.</P>
-<LI>You may copy and distribute the Program (or a work based on it,
- under Section 2) in object code or executable form under the terms of
- Sections 1 and 2 above provided that you also do one of the following:
-<OL TYPE="a">
-<LI>Accompany it with the complete corresponding machine-readable source
- code, which must be distributed under the terms of Sections 1 and 2
- above on a medium customarily used for software interchange; or,</LI>
-<LI>Accompany it with a written offer, valid for at least three years,
- to give any third party, for a charge no more than your cost of
- physically performing source distribution, a complete machine-readable
- copy of the corresponding source code, to be distributed under the
- terms of Sections 1 and 2 above on a medium customarily used for
- software interchange; or,</LI>
-<LI>Accompany it with the information you received as to the offer to
- distribute corresponding source code. (This alternative is allowed only
- for noncommercial distribution and only if you received the program in
- object code or executable form with such an offer, in accord with
- Subsection b above.)</LI>
-</OL>
-<P>The source code for a work means the preferred form of the work for
- making modifications to it. For an executable work, complete source
- code means all the source code for all modules it contains, plus any
- associated interface definition files, plus the scripts used to control
- compilation and installation of the executable. However, as a special
- exception, the source code distributed need not include anything that
- is normally distributed (in either source or binary form) with the
- major components (compiler, kernel, and so on) of the operating system
- on which the executable runs, unless that component itself accompanies
- the executable.</P>
-<P>If distribution of executable or object code is made by offering
- access to copy from a designated place, then offering equivalent access
- to copy the source code from the same place counts as distribution of
- the source code, even though third parties are not compelled to copy
- the source along with the object code.</P>
-<LI>You may not copy, modify, sublicense, or distribute the Program
- except as expressly provided under this License. Any attempt otherwise
- to copy, modify, sublicense or distribute the Program is void, and will
- automatically terminate your rights under this License. However,
- parties who have received copies, or rights, from you under this
- License will not have their licenses terminated so long as such parties
- remain in full compliance.</LI>
-<LI>You are not required to accept this License, since you have not
- signed it. However, nothing else grants you permission to modify or
- distribute the Program or its derivative works. These actions are
- prohibited by law if you do not accept this License. Therefore, by
- modifying or distributing the Program (or any work based on the
- Program), you indicate your acceptance of this License to do so, and
- all its terms and conditions for copying, distributing or modifying the
- Program or works based on it.</LI>
-<LI>Each time you redistribute the Program (or any work based on the
- Program), the recipient automatically receives a license from the
- original licensor to copy, distribute or modify the Program subject to
- these terms and conditions. You may not impose any further restrictions
- on the recipients' exercise of the rights granted herein. You are not
- responsible for enforcing compliance by third parties to this License.</LI>
-<LI>If, as a consequence of a court judgment or allegation of patent
- infringement or for any other reason (not limited to patent issues),
- conditions are imposed on you (whether by court order, agreement or
- otherwise) that contradict the conditions of this License, they do not
- excuse you from the conditions of this License. If you cannot
- distribute so as to satisfy simultaneously your obligations under this
- License and any other pertinent obligations, then as a consequence you
- may not distribute the Program at all. For example, if a patent license
- would not permit royalty-free redistribution of the Program by all
- those who receive copies directly or indirectly through you, then the
- only way you could satisfy both it and this License would be to refrain
- entirely from distribution of the Program.
-<P>If any portion of this section is held invalid or unenforceable under
- any particular circumstance, the balance of the section is intended to
- apply and the section as a whole is intended to apply in other
- circumstances.</P>
-<P>It is not the purpose of this section to induce you to infringe any
- patents or other property right claims or to contest validity of any
- such claims; this section has the sole purpose of protecting the
- integrity of the free software distribution system, which is
- implemented by public license practices. Many people have made generous
- contributions to the wide range of software distributed through that
- system in reliance on consistent application of that system; it is up
- to the author/donor to decide if he or she is willing to distribute
- software through any other system and a licensee cannot impose that
- choice.</P>
-<P>This section is intended to make thoroughly clear what is believed to
- be a consequence of the rest of this License.</P>
-<LI>If the distribution and/or use of the Program is restricted in
- certain countries either by patents or by copyrighted interfaces, the
- original copyright holder who places the Program under this License may
- add an explicit geographical distribution limitation excluding those
- countries, so that distribution is permitted only in or among countries
- not thus excluded. In such case, this License incorporates the
- limitation as if written in the body of this License.</LI>
-<LI>The Free Software Foundation may publish revised and/or new versions
- of the General Public License from time to time. Such new versions will
- be similar in spirit to the present version, but may differ in detail
- to address new problems or concerns.
-<P>Each version is given a distinguishing version number. If the Program
- specifies a version number of this License which applies to it and &quot;any
- later version&quot;, you have the option of following the terms and
- conditions either of that version or of any later version published by
- the Free Software Foundation. If the Program does not specify a version
- number of this License, you may choose any version ever published by
- the Free Software Foundation.</P>
-<LI>If you wish to incorporate parts of the Program into other free
- programs whose distribution conditions are different, write to the
- author to ask for permission. For software which is copyrighted by the
- Free Software Foundation, write to the Free Software Foundation; we
- sometimes make exceptions for this. Our decision will be guided by the
- two goals of preserving the free status of all derivatives of our free
- software and of promoting the sharing and reuse of software generally.</LI>
-</LI>
-</LI>
-</LI>
-</LI>
-</LI>
-</LI>
-</OL>
-<H4>NO WARRANTY</H4>
-<OL START="11">
-<LI>BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
- FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
- OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
- PROVIDE THE PROGRAM &quot;AS IS&quot; WITHOUT WARRANTY OF ANY KIND, EITHER
- EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE
- ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH
- YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL
- NECESSARY SERVICING, REPAIR OR CORRECTION.</LI>
-<LI>IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN
- WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY
- AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU
- FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR
- CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
- PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
- RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
- FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF
- SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
- DAMAGES.</LI>
-</OL>
-<H4>END OF TERMS AND CONDITIONS</H4>
-
-<!-- NEW PAGE -->
-<H2><A NAME="6_3">GNU LIBRARY GENERAL PUBLIC LICENSE</A></H2>
-<P>Version 2, June 1991</P>
-<PRE>
-Copyright (C) 1991 Free Software Foundation, Inc.
-59 Temple Place - Suite 330, Boston, MA  02111-1307, USA
-Everyone is permitted to copy and distribute verbatim copies
-of this license document, but changing it is not allowed.
-
-[This is the first released version of the library GPL.  It is
- numbered 2 because it goes with version 2 of the ordinary GPL.]
-</PRE>
-<H4>Preamble</H4>
-<P>The licenses for most software are designed to take away your freedom
- to share and change it. By contrast, the GNU General Public Licenses
- are intended to guarantee your freedom to share and change free
- software--to make sure the software is free for all its users.</P>
-<P>This license, the Library General Public License, applies to some
- specially designated Free Software Foundation software, and to any
- other libraries whose authors decide to use it. You can use it for your
- libraries, too.</P>
-<P>When we speak of free software, we are referring to freedom, not
- price. Our General Public Licenses are designed to make sure that you
- have the freedom to distribute copies of free software (and charge for
- this service if you wish), that you receive source code or can get it
- if you want it, that you can change the software or use pieces of it in
- new free programs; and that you know you can do these things.</P>
-<P>To protect your rights, we need to make restrictions that forbid
- anyone to deny you these rights or to ask you to surrender the rights.
- These restrictions translate to certain responsibilities for you if you
- distribute copies of the library, or if you modify it.</P>
-<P>For example, if you distribute copies of the library, whether gratis
- or for a fee, you must give the recipients all the rights that we gave
- you. You must make sure that they, too, receive or can get the source
- code. If you link a program with the library, you must provide complete
- object files to the recipients so that they can relink them with the
- library, after making changes to the library and recompiling it. And
- you must show them these terms so they know their rights.</P>
-<P>Our method of protecting your rights has two steps: (1) copyright the
- library, and (2) offer you this license which gives you legal
- permission to copy, distribute and/or modify the library.</P>
-<P>Also, for each distributor's protection, we want to make certain that
- everyone understands that there is no warranty for this free library.
- If the library is modified by someone else and passed on, we want its
- recipients to know that what they have is not the original version, so
- that any problems introduced by others will not reflect on the original
- authors' reputations.</P>
-<P>Finally, any free program is threatened constantly by software
- patents. We wish to avoid the danger that companies distributing free
- software will individually obtain patent licenses, thus in effect
- transforming the program into proprietary software. To prevent this, we
- have made it clear that any patent must be licensed for everyone's free
- use or not licensed at all.</P>
-<P>Most GNU software, including some libraries, is covered by the
- ordinary GNU General Public License, which was designed for utility
- programs. This license, the GNU Library General Public License, applies
- to certain designated libraries. This license is quite different from
- the ordinary one; be sure to read it in full, and don't assume that
- anything in it is the same as in the ordinary license.</P>
-<P>The reason we have a separate public license for some libraries is
- that they blur the distinction we usually make between modifying or
- adding to a program and simply using it. Linking a program with a
- library, without changing the library, is in some sense simply using
- the library, and is analogous to running a utility program or
- application program. However, in a textual and legal sense, the linked
- executable is a combined work, a derivative of the original library,
- and the ordinary General Public License treats it as such.</P>
-<P>Because of this blurred distinction, using the ordinary General
- Public License for libraries did not effectively promote software
- sharing, because most developers did not use the libraries. We
- concluded that weaker conditions might promote sharing better.</P>
-<P>However, unrestricted linking of non-free programs would deprive the
- users of those programs of all benefit from the free status of the
- libraries themselves. This Library General Public License is intended
- to permit developers of non-free programs to use free libraries, while
- preserving your freedom as a user of such programs to change the free
- libraries that are incorporated in them. (We have not seen how to
- achieve this as regards changes in header files, but we have achieved
- it as regards changes in the actual functions of the Library.) The hope
- is that this will lead to faster development of free libraries.</P>
-<P>The precise terms and conditions for copying, distribution and
- modification follow. Pay close attention to the difference between a
- &quot;work based on the library&quot; and a &quot;work that uses the library&quot;. The
- former contains code derived from the library, while the latter only
- works together with the library.</P>
-<P>Note that it is possible for a library to be covered by the ordinary
- General Public License rather than by this special one.</P>
-<H4>TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION</H4>
-<P><STRONG>0.</STRONG> This License Agreement applies to any software
- library which contains a notice placed by the copyright holder or other
- authorized party saying it may be distributed under the terms of this
- Library General Public License (also called &quot;this License&quot;). Each
- licensee is addressed as &quot;you&quot;.</P>
-<P>A &quot;library&quot; means a collection of software functions and/or data
- prepared so as to be conveniently linked with application programs
- (which use some of those functions and data) to form executables.</P>
-<P>The &quot;Library&quot;, below, refers to any such software library or work
- which has been distributed under these terms. A &quot;work based on the
- Library&quot; means either the Library or any derivative work under
- copyright law: that is to say, a work containing the Library or a
- portion of it, either verbatim or with modifications and/or translated
- straightforwardly into another language. (Hereinafter, translation is
- included without limitation in the term &quot;modification&quot;.)</P>
-<P>&quot;Source code&quot; for a work means the preferred form of the work for
- making modifications to it. For a library, complete source code means
- all the source code for all modules it contains, plus any associated
- interface definition files, plus the scripts used to control
- compilation and installation of the library.</P>
-<P>Activities other than copying, distribution and modification are not
- covered by this License; they are outside its scope. The act of running
- a program using the Library is not restricted, and output from such a
- program is covered only if its contents constitute a work based on the
- Library (independent of the use of the Library in a tool for writing
- it). Whether that is true depends on what the Library does and what the
- program that uses the Library does.</P>
-<P><STRONG>1.</STRONG> You may copy and distribute verbatim copies of
- the Library's complete source code as you receive it, in any medium,
- provided that you conspicuously and appropriately publish on each copy
- an appropriate copyright notice and disclaimer of warranty; keep intact
- all the notices that refer to this License and to the absence of any
- warranty; and distribute a copy of this License along with the Library.</P>
-<P>You may charge a fee for the physical act of transferring a copy, and
- you may at your option offer warranty protection in exchange for a fee.</P>
-<P><STRONG>2.</STRONG> You may modify your copy or copies of the Library
- or any portion of it, thus forming a work based on the Library, and
- copy and distribute such modifications or work under the terms of
- Section 1 above, provided that you also meet all of these conditions:</P>
-<OL TYPE="a">
-<LI>The modified work must itself be a software library.
-<P></P>
-<LI>You must cause the files modified to carry prominent notices stating
- that you changed the files and the date of any change.
-<P></P>
-<LI>You must cause the whole of the work to be licensed at no charge to
- all third parties under the terms of this License.
-<P></P>
-<LI>If a facility in the modified Library refers to a function or a
- table of data to be supplied by an application program that uses the
- facility, other than as an argument passed when the facility is
- invoked, then you must make a good faith effort to ensure that, in the
- event an application does not supply such function or table, the
- facility still operates, and performs whatever part of its purpose
- remains meaningful.
-<P>(For example, a function in a library to compute square roots has a
- purpose that is entirely well-defined independent of the application.
- Therefore, Subsection 2d requires that any application-supplied
- function or table used by this function must be optional: if the
- application does not supply it, the square root function must still
- compute square roots.)</P>
-</LI>
-</LI>
-</LI>
-</LI>
-</OL>
-<P>These requirements apply to the modified work as a whole. If
- identifiable sections of that work are not derived from the Library,
- and can be reasonably considered independent and separate works in
- themselves, then this License, and its terms, do not apply to those
- sections when you distribute them as separate works. But when you
- distribute the same sections as part of a whole which is a work based
- on the Library, the distribution of the whole must be on the terms of
- this License, whose permissions for other licensees extend to the
- entire whole, and thus to each and every part regardless of who wrote
- it.</P>
-<P>Thus, it is not the intent of this section to claim rights or contest
- your rights to work written entirely by you; rather, the intent is to
- exercise the right to control the distribution of derivative or
- collective works based on the Library.</P>
-<P>In addition, mere aggregation of another work not based on the
- Library with the Library (or with a work based on the Library) on a
- volume of a storage or distribution medium does not bring the other
- work under the scope of this License.</P>
-<P><STRONG>3.</STRONG> You may opt to apply the terms of the ordinary
- GNU General Public License instead of this License to a given copy of
- the Library. To do this, you must alter all the notices that refer to
- this License, so that they refer to the ordinary GNU General Public
- License, version 2, instead of to this License. (If a newer version
- than version 2 of the ordinary GNU General Public License has appeared,
- then you can specify that version instead if you wish.) Do not make any
- other change in these notices.</P>
-<P>Once this change is made in a given copy, it is irreversible for that
- copy, so the ordinary GNU General Public License applies to all
- subsequent copies and derivative works made from that copy.</P>
-<P>This option is useful when you wish to copy part of the code of the
- Library into a program that is not a library.</P>
-<P><STRONG>4.</STRONG> You may copy and distribute the Library (or a
- portion or derivative of it, under Section 2) in object code or
- executable form under the terms of Sections 1 and 2 above provided that
- you accompany it with the complete corresponding machine-readable
- source code, which must be distributed under the terms of Sections 1
- and 2 above on a medium customarily used for software interchange.</P>
-<P>If distribution of object code is made by offering access to copy
- from a designated place, then offering equivalent access to copy the
- source code from the same place satisfies the requirement to distribute
- the source code, even though third parties are not compelled to copy
- the source along with the object code.</P>
-<P><STRONG>5.</STRONG> A program that contains no derivative of any
- portion of the Library, but is designed to work with the Library by
- being compiled or linked with it, is called a &quot;work that uses the
- Library&quot;. Such a work, in isolation, is not a derivative work of the
- Library, and therefore falls outside the scope of this License.</P>
-<P>However, linking a &quot;work that uses the Library&quot; with the Library
- creates an executable that is a derivative of the Library (because it
- contains portions of the Library), rather than a &quot;work that uses the
- library&quot;. The executable is therefore covered by this License. Section
- 6 states terms for distribution of such executables.</P>
-<P>When a &quot;work that uses the Library&quot; uses material from a header file
- that is part of the Library, the object code for the work may be a
- derivative work of the Library even though the source code is not.
- Whether this is true is especially significant if the work can be
- linked without the Library, or if the work is itself a library. The
- threshold for this to be true is not precisely defined by law.</P>
-<P>If such an object file uses only numerical parameters, data structure
- layouts and accessors, and small macros and small inline functions (ten
- lines or less in length), then the use of the object file is
- unrestricted, regardless of whether it is legally a derivative work.
- (Executables containing this object code plus portions of the Library
- will still fall under Section 6.)</P>
-<P>Otherwise, if the work is a derivative of the Library, you may
- distribute the object code for the work under the terms of Section 6.
- Any executables containing that work also fall under Section 6, whether
- or not they are linked directly with the Library itself.</P>
-<P><STRONG>6.</STRONG> As an exception to the Sections above, you may
- also compile or link a &quot;work that uses the Library&quot; with the Library to
- produce a work containing portions of the Library, and distribute that
- work under terms of your choice, provided that the terms permit
- modification of the work for the customer's own use and reverse
- engineering for debugging such modifications.</P>
-<P>You must give prominent notice with each copy of the work that the
- Library is used in it and that the Library and its use are covered by
- this License. You must supply a copy of this License. If the work
- during execution displays copyright notices, you must include the
- copyright notice for the Library among them, as well as a reference
- directing the user to the copy of this License. Also, you must do one
- of these things:</P>
-<OL TYPE="a">
-<LI>Accompany the work with the complete corresponding machine-readable
- source code for the Library including whatever changes were used in the
- work (which must be distributed under Sections 1 and 2 above); and, if
- the work is an executable linked with the Library, with the complete
- machine-readable &quot;work that uses the Library&quot;, as object code and/or
- source code, so that the user can modify the Library and then relink to
- produce a modified executable containing the modified Library. (It is
- understood that the user who changes the contents of definitions files
- in the Library will not necessarily be able to recompile the
- application to use the modified definitions.)
-<P></P>
-<LI>Accompany the work with a written offer, valid for at least three
- years, to give the same user the materials specified in Subsection 6a,
- above, for a charge no more than the cost of performing this
- distribution.
-<P></P>
-<LI>If distribution of the work is made by offering access to copy from
- a designated place, offer equivalent access to copy the above specified
- materials from the same place.
-<P></P>
-<LI>Verify that the user has already received a copy of these materials
- or that you have already sent this user a copy.</LI>
-</LI>
-</LI>
-</LI>
-</OL>
-<P>For an executable, the required form of the &quot;work that uses the
- Library&quot; must include any data and utility programs needed for
- reproducing the executable from it. However, as a special exception,
- the source code distributed need not include anything that is normally
- distributed (in either source or binary form) with the major components
- (compiler, kernel, and so on) of the operating system on which the
- executable runs, unless that component itself accompanies the
- executable.</P>
-<P>It may happen that this requirement contradicts the license
- restrictions of other proprietary libraries that do not normally
- accompany the operating system. Such a contradiction means you cannot
- use both them and the Library together in an executable that you
- distribute.</P>
-<P><STRONG>7.</STRONG> You may place library facilities that are a work
- based on the Library side-by-side in a single library together with
- other library facilities not covered by this License, and distribute
- such a combined library, provided that the separate distribution of the
- work based on the Library and of the other library facilities is
- otherwise permitted, and provided that you do these two things:</P>
-<OL TYPE="a">
-<LI>Accompany the combined library with a copy of the same work based on
- the Library, uncombined with any other library facilities. This must be
- distributed under the terms of the Sections above.
-<P></P>
-<LI>Give prominent notice with the combined library of the fact that
- part of it is a work based on the Library, and explaining where to find
- the accompanying uncombined form of the same work.</LI>
-</LI>
-</OL>
-<P><STRONG>8.</STRONG> You may not copy, modify, sublicense, link with,
- or distribute the Library except as expressly provided under this
- License. Any attempt otherwise to copy, modify, sublicense, link with,
- or distribute the Library is void, and will automatically terminate
- your rights under this License. However, parties who have received
- copies, or rights, from you under this License will not have their
- licenses terminated so long as such parties remain in full compliance.</P>
-<P><STRONG>9.</STRONG> You are not required to accept this License,
- since you have not signed it. However, nothing else grants you
- permission to modify or distribute the Library or its derivative works.
- These actions are prohibited by law if you do not accept this License.
- Therefore, by modifying or distributing the Library (or any work based
- on the Library), you indicate your acceptance of this License to do so,
- and all its terms and conditions for copying, distributing or modifying
- the Library or works based on it.</P>
-<P><STRONG>10.</STRONG> Each time you redistribute the Library (or any
- work based on the Library), the recipient automatically receives a
- license from the original licensor to copy, distribute, link with or
- modify the Library subject to these terms and conditions. You may not
- impose any further restrictions on the recipients' exercise of the
- rights granted herein. You are not responsible for enforcing compliance
- by third parties to this License.</P>
-<P><STRONG>11.</STRONG> If, as a consequence of a court judgment or
- allegation of patent infringement or for any other reason (not limited
- to patent issues), conditions are imposed on you (whether by court
- order, agreement or otherwise) that contradict the conditions of this
- License, they do not excuse you from the conditions of this License. If
- you cannot distribute so as to satisfy simultaneously your obligations
- under this License and any other pertinent obligations, then as a
- consequence you may not distribute the Library at all. For example, if
- a patent license would not permit royalty-free redistribution of the
- Library by all those who receive copies directly or indirectly through
- you, then the only way you could satisfy both it and this License would
- be to refrain entirely from distribution of the Library.</P>
-<P>If any portion of this section is held invalid or unenforceable under
- any particular circumstance, the balance of the section is intended to
- apply, and the section as a whole is intended to apply in other
- circumstances.</P>
-<P>It is not the purpose of this section to induce you to infringe any
- patents or other property right claims or to contest validity of any
- such claims; this section has the sole purpose of protecting the
- integrity of the free software distribution system which is implemented
- by public license practices. Many people have made generous
- contributions to the wide range of software distributed through that
- system in reliance on consistent application of that system; it is up
- to the author/donor to decide if he or she is willing to distribute
- software through any other system and a licensee cannot impose that
- choice.</P>
-<P>This section is intended to make thoroughly clear what is believed to
- be a consequence of the rest of this License.</P>
-<P><STRONG>12.</STRONG> If the distribution and/or use of the Library is
- restricted in certain countries either by patents or by copyrighted
- interfaces, the original copyright holder who places the Library under
- this License may add an explicit geographical distribution limitation
- excluding those countries, so that distribution is permitted only in or
- among countries not thus excluded. In such case, this License
- incorporates the limitation as if written in the body of this License.</P>
-<P><STRONG>13.</STRONG> The Free Software Foundation may publish revised
- and/or new versions of the Library General Public License from time to
- time. Such new versions will be similar in spirit to the present
- version, but may differ in detail to address new problems or concerns.</P>
-<P>Each version is given a distinguishing version number. If the Library
- specifies a version number of this License which applies to it and &quot;any
- later version&quot;, you have the option of following the terms and
- conditions either of that version or of any later version published by
- the Free Software Foundation. If the Library does not specify a license
- version number, you may choose any version ever published by the Free
- Software Foundation.</P>
-<P><STRONG>14.</STRONG> If you wish to incorporate parts of the Library
- into other free programs whose distribution conditions are incompatible
- with these, write to the author to ask for permission. For software
- which is copyrighted by the Free Software Foundation, write to the Free
- Software Foundation; we sometimes make exceptions for this. Our
- decision will be guided by the two goals of preserving the free status
- of all derivatives of our free software and of promoting the sharing
- and reuse of software generally.</P>
-<P><STRONG>NO WARRANTY</STRONG></P>
-<P><STRONG>15.</STRONG> BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE,
- THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY
- APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
- HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY &quot;AS IS&quot; WITHOUT
- WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE
- OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU
- ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.</P>
-<P><STRONG>16.</STRONG> IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR
- AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO
- MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE
- LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL
- OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE
- LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING
- RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A
- FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF
- SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
- DAMAGES.</P>
-<H4>END OF TERMS AND CONDITIONS</H4>
-</BODY>
-</HTML>