Welcome to Gutenprint 5.0.0-rc3! Please read these release notes carefully. Gutenprint, formerly named Gimp-Print, is a suite of printer drivers that may be used with most common UNIX print spooling systems, including CUPS, lpr, LPRng, or others. These drivers provide high quality printing for UNIX (including Macintosh OS X 10.2, 10.3, and 10.4) and Linux systems that in many cases equal or exceed proprietary vendor-supplied drivers in quality and functionality, and can be used for demanding printing tasks requiring flexibility and high quality. This software package includes the Print plug-in for the GIMP and Ghostscript and CUPS drivers, as well as Foomatic data. The package has been renamed in order to clearly distinguish it from the GIMP. While this package started out as the Print plugin for the GIMP, it has expanded into a collection of general purpose printer drivers, and the Print plugin for the GIMP is now only a small (but important) piece of the package. Furthermore, the name Gutenprint recognizes Johannes Gutenberg, the inventor of the movable type printing press. Finally, the word "guten" means "good" in German. Gutenprint 5.0.0-rc3 is the third release candidate of Gutenprint 5.0, and incorporates extensive feedback from the first release candidate. It is based on the Gimp-Print 4.3 series that has been in development for over three years, and includes many improvements over the very popular 4.2 series. This release is believed to be quite stable, but further testing is required before final release. We believe this release to be stable enough for day to day use, and encourage people to test it and report their results. Gutenprint currently supports over 700 printer models. These release notes contain the following sections: I) General Requirements II) Changes from Previous Releases A) Changes from 5.0.0-rc2 to 5.0.0-rc3 B) Changes from 5.0.0-rc1 to 5.0.0-rc2 III) Overall changes from 4.2 to 5.0. A) General user-visible changes B) New Functionality C) Changes to the Print plugin for the GIMP D) Changes to the CUPS interface E) Changes to the Ghostscript driver F) Changes to the Foomatic data generator G) Quality improvements H) Architectural Changes IV) Exceptions and Workarounds A) General Issues B) Build/Installation Issues V) Supported Printers A) List of Supported Printers B) Printer-specific notes VI) List of supported options A) Basic Printer Options B) Advanced Printer Options C) Specialized Printer Options D) Basic Output Controls E) Basic Output Adjustments F) Advanced Output Adjustments G) Output Density (Ink Quantity) Controls H) Gray Balance Controls I) Output Gamma Controls J) Gray Generation Controls K) Output Linearization Curves (GIMP Plugin Only) L) Detailed Color Correction Curves (GIMP Plugin Only) M) Specialized Output Controls N) Transition Controls O) Foomatic-Only Options ================================================================ I) GENERAL REQUIREMENTS Gutenprint will run on any reasonably modern computer running Linux, Macintosh OS X (10.2 or above), Solaris, or any other UNIX-like operating system. If you plan to compile this package from source, you will also need an ANSI C compiler, such as gcc (recommended). A compiler is not required if you are installing a pre-compiled package. Processor and memory requirements vary depending upon the printer and runtime options selected; it is suggested that you have at least 64 MB of memory for general purpose printing, 256 MB or more for high quality printing on a good printer, and 1 GB or more for large format printing at high resolution. You should have at least 50 MB of free disk space to compile and install Gutenprint. Disk space requirements for printing will vary depending upon how you use Gutenprint, but are generally modest except as noted below. We recommend a processor speed of at least 300 MHz. Fast printers may require a faster processor to achieve maximum printing speed. For general use, you should have the Common UNIX Printing System, CUPS (version 1.1.15 or above) or Foomatic (2.0 or above) installed. Please the rest of the release notes, in particular the Exceptions and Workarounds, for full details on installation, as there is important information to be aware of. CUPS is the printing system used on Macintosh OS X 10.2 and above, and many other systems use it. The combination of CUPS and Gutenprint provides a flexible, general purpose printing system capable of producing the highest quality output with any of the printers supported by this package. We strongly recommend using CUPS with Gutenprint as a general-purpose printing solution. The Print plug-in for the GIMP requires either the GIMP 2.0 or above, or 1.2.3 or above on the 1.2 line (1.2.5 is recommended). This plug-in will work with any printing system, and offers a comprehensive user interface to control all aspects of the printing process. If you are printing photographs in large format from the GIMP at very high resolution, disk space requirements may be substantial, and we recommend at least 2 GB of free disk space for that purpose. The Ghostscript driver requires GNU Ghostscript 6.53 or higher, ESP Ghostscript 7.05 or higher, or AFPL Ghostscript 7.04 or higher. It uses the IJS package included with these versions of Ghostscript to create a driver that may be built much more easily than traditional Ghostscript drivers. This driver should be used in conjunction with Foomatic to configure printers. Users of Macintosh OS X 10.2 (Jaguar), 10.3 (Panther), and 10.4 (Tiger) can use this package, as the printing system is based on CUPS. For ease of installation, a pre-built package with installer is normally supplied a few days after the release of the source package. We strongly recommend that OS X users use the pre-built package rather than attempt to build it themselves. NOTE: This package will not work with any version of OS X 10.0 and 10.1 (such as 10.1.5). The printing system used with these versions of OS X is not compatible with Gutenprint. OS X 10.2 and above use CUPS as the basis of the printing system, which is compatible with Gutenprint. The README file included with this package provides full instructions for building and installing Gutenprint. ================================================================ II) MAJOR CHANGES FROM PREVIOUS RELEASES A) MAJOR CHANGES BETWEEN GUTENPRINT 5.0.0 RELEASE CANDIDATE 2 AND GUTENPRINT 5.0.0 RELEASE CANDIDATE 3: 1) The package now offers explicit support for many more printers. All printers supported by Gutenprint are now listed explicitly rather than via the compatibility list. As a result, CUPS PPD files and Foomatic are now generated for each supported printer. 2) CUPS and Foomatic/IJS now produce correctly dimensioned and positioned output. Previous pre-releases of Gutenprint 5.0 produced incorrectly dimensioned and/or positioned (offset from the correct position) output in certain cases. This happened in the following circumstances: a) When a printer capable of optional full-bleed or borderless operation was used in full-bleed/borderless mode, the output was stretched to fit the expanded dimensions. The result was that lines of specified lengths were printed slightly longer than desired, and since the vertical and horizontal stretching was normally not identical, the output was distorted slightly. b) When printing directly to a CD, the output was shrunk horizontally and/or positioned incorrectly by a small amount (typically a few mm). c) Depending upon the application doing the printing and the printer selected, the output was shifted down and to the right by several mm. The PPD files and driver have been modified to specify zero borders in all cases when a printer with borderless capability is used. If normal (non-borderless) mode is selected, the border is simply not printed, leaving correct dimensions for everything within the imageable area. However, as a result of this, the driver no longer prints true full bleed (overprinting the edge of the page). The margins are set to zero, and typically there will be very narrow unprinted margins (less than 1 mm) on one or more sides. Printing to CD's works correctly whether or not full bleed mode is selected. This change has no effect in the GIMP plugin and in other applications which directly use Gutenprint, as there was never any problem in those contexts. 3) The IJS driver now correctly ejects the last page of a job. Previously it did not always eject the last page with certain Epson printers. 4) The Epson Stylus Photo R800, R1800, R2400, and related printers should now print at full speed in all cases. Previously these printers were extremely slow (about 10 times slower than normal) in many cases. Related to this, the list of resolutions offered for these printers are slightly different from before. Resolutions above 2880x1440 DPI are no longer offered; instead, resolutions of 2880x1440 high quality and 2880x1440 highest quality are offered. These resolutions use extra passes of the print head to reduce banding. In addition, these resolutions are actually 1440 DPI horizontally and 2880 DPI vertically. 5) The HP DeskJet 690 and other supported PCL printers capable of 6-color photo printing (such as the Apollo P-2100 and Apple Color StyleWriter 4500) no longer result in the driver crashing if black and white output mode was selected. Also, Canon printers capable of 6 or 7 color photo printing no longer result in a crash if black and white output mode is selected. 6) Canon and Lexmark inkjet printers now print if color output mode is selected with a black and white cartridge installed. Previously this was not possible in the GIMP plugin; the CUPS and Foomatic drivers permitted this to be set, but gave a runtime error when a job with these settings was printed. These printers now accept the job and simply print it in black and white. 7) The cleaning and nozzle check functions of escputil now work properly on most printers, and escputil no longer crashes if you type ctrl-D to a command prompt. In addition, the status printed via the status command is now much more readable. 8) The color quality for the Epson R300, R800, R2400, and related printers has been improved. 9) Raw output now works correctly on the Epson R800 and R1800. 10) The Canon driver now handles color and grayscale, and also photo ink cartridges (previously it sometimes handled these incorrectly or even crashed). However, many of these printers still do not print correctly with a photo cartridge installed (the width of the printout is incorrect). 11) The GIMP plugin now displays the thumbnail image correctly in CMY mode (previously it displayed incorrect colors). 12) Experimental support for the Japan-market Epson printers PM-A900, PM-D800, PM-G730, and PX-V630, and preliminary support for the PM-A650, PM-A750, and PM-A890. 13) The definition of the Epson Stylus CX3500, CX3600, CX3650, CX4100, CX4200, CX4500, CX4600, CX4700, CX4800, CX5700, CX5800, CX7700, CX7800, DX4200, DX4250, DX4800, and PX-A650 have been corrected. The DX4800 now works correctly; the color output for all of these printers has been corrected. All of these printers also now print at full speed; they previously printed extremely slowly in many cases. The list of resolutions is also slightly different from before; the 2880x1440 DPI resolution is no longer offered; instead, resolutions of 1440x1440 high quality and 1440x1440 highest quality are offered. These resolutions use extra passes of the print head to reduce banding. 14) A new option for generating simplified PPD files for CUPS has been added. The --enable-simplified-cups-ppds=yes option to configure allows generating PPD files with only basic options (including only common paper sizes) in addition to the normal, full-featured PPD files; --enable-simplified-cups-ppds=only generates only the simplified PPD files. The -a and -s options to cups-genppd.5.0 may be used manually to do the same thing. This is discussed in the README file. 15) cups-genppdupdate.5.0 has significant enhancements: * A new option, -N, causes cups-genppdupdate.5.0 to not merge options from the old PPD file into the new file. This can be used to reset a CUPS+Gutenprint PPD file to its original state. * A new option, -o, causes cups-genppdupdate.5.0 to output the PPD files into a different directory. * It is now possible to specify individual PPD files or printer queue names on the command line to only update/reset specific PPD files. * The program no longer tries and fails to update Foomatic-based PPD files. 16) The Foomatic data generator now generates simplified data (using a driver name of "gutenprint-ijs-simplified.5.0") in addition to the standard, full-featured data (gutenprint-ijs.5.0). 17) The input slots (media sources) have been corrected for the Epson Stylus Photo R1800, R2400, and RX700. 18) New options to escputil allow specifying the number of line pairs and number of patterns for head alignment explicitly, if needed. In addition, the number of line pairs for the Epson Stylus Photo 700 has been changed from 7 to 15. 19) A few build problems have been fixed. 20) A Hungarian translation has been added. 21) The configure script now prints out a summary of configuration options selected at the end of the script run. For developers, "autogen.sh --help" now prints out the configure help if the configure script exists. 22) The Lexmark driver should now print correctly (this is only partially tested). 23) Chilean Office, Chilean Double Letter, and Chilean Double Office paper sizes have been added. 24) An error in the Czech, Danish, and Portuguese translations that caused the GIMP plugin to emit a warning at startup has been fixed. 25) The package is now built with libtool 1.5.22. The following bugs have been fixed since Gutenprint 5.0.0-rc3: 1318890 Borderless print scaled wrongly 1379402 BJC-4400: SEGFAULT (photo-ink/color mode) 1393755 [Feature Request] Chilean paper sizes. 1417600 escputil clean and nozzle check don't work on new printers 1417603 escputil seg faults if you type ctrl-D to prompt 1421674 Gutenprint 5.0.0rc2 crashes in Mac OS X 10.2.8 1422101 Raw output does not work on R800 and related printers 1425951 Bug#351731: Fails in alignment with stylos photo 700 1447115 Epson driver broken in RC2 (DX4850) 1458059 Lexmark Z52 not working 1458911 Very poor performance with Epson R2400, R800, and R1800 1466678 Epson Stylus Photo R300 fails to eject last page 1467956 Print to CD prints incorrectly with CUPS driver 1478819 bad translation format 1487715 HP DeskJet 690 and related crash in grayscale w/photo ink 1487717 Canon/Lexmark printers fail in color mode w/BW inks 1487720 Canon printers crash in grayscale with photo ink ---------------- B) MAJOR CHANGES BETWEEN GUTENPRINT 5.0.0 RELEASE CANDIDATE 1 AND GUTENPRINT 5.0.0 RELEASE CANDIDATE 2: 1) The Postscript driver now produces more accurate colors. Previous releases produced overly pale colors with the default settings. 2) The Postscript driver now accepts red, green, and blue rather than cyan, magenta, and yellow options in the GIMP plugin. 3) The Postscript driver now prints correctly regardless of image size. Previously it corrupted the output if the width of the image was not a multiple of 4 pixels. 4) The driver package now permits specifying all options regardless of the setting of the Image Type and Quality options (previously it disabled a lot of settings if Quality and/or Image Type were not set to Manual Control). The behavior is now that Quality and Image Type provide defaults that may be overridden by the user. For example, if the resolution is provided explicitly, it will override the resolution implied by the Quality setting. Related to this, the CUPS driver now handles Quality properly. 5) A description of all options supported by Gutenprint has been added. 6) cups-genppdupdate now preserves the ownership and permissions of the PPD files being updated, rather than forcibly setting the owner to root and the permissions to root read/write and everyone else read-only access. 7) The GIMP plugin now loads the printrc file correctly in all locales. Previously it did not load floating point numbers correctly in locales that don't use the `.' character as the decimal point. 8) The GIMP plugin now offers improved choices in the color adjustment window for viewing individual channels of the output. It now offers red/green/blue, cyan/magenta/yellow, or cyan/magenta/yellow/black as appropriate. 9) The GIMP plugin is now considerably more responsive; many unnecessary screen redraws have been removed. In addition, a display glitch wherein horizontal lines were sometimes drawn through certain widgets has been fixed. 10) The Epson printer utility escputil now reports ink information more consistently across a wider range of printers. In particular, the extended ink information command (escputil -e) should now work correctly on all models from the Stylus Color 740 through the present. 11) Preliminary support for the Epson Stylus C68, C87, C88, CX3700, CX3800, CX3805, CX3810, CX4100, CX4200, CX4500, CX4700, CX4800, CX5700, CX5800, CX7700, CX7800, D68, D88, DX3800, DX3850, DX4200, DX4250, DX4800, PX-A650, and Stylus Photo R220, R320, and R340. These printers are expected to be fully functional (for the multi-function devices, this package supports only the printer function -- it does not support scanning or fax). 12) Preliminary support for the Epson Stylus Photo R2400/PX-5500. This printer has been partially tuned, but there will likely be further changes to this driver. 13) Support for the Epson PictureMate/E-100. 14) Preliminary support for the Epson Stylus Photo RX700/PM-A900. This printer has been partially tuned, but there will likely be further changes to this driver. 15) Initial support for Canon S200, SELPHY CP-510 and SELPHY CP-710; Sony UP-DR150, and Olympus P-11 has been added. 16) The Canon PIXMA iP4000 printers can now print to cds. Duplex printing with binding on the short side is now supported, too. 17) The Epson Stylus Photo R200 and related printers have been retuned to give improved detail in the shadows, reduced ink usage, more accurate grayscale, and more accurate colors. Affected printers are presently the R200, R210, R220, R300, R310, R320, R340, RX400, RX420, RX425, RX430, RX500, RX510, RX600, RX620, RX630, PM-D750, PM-D770, PM-G700, and PM-G720. Any profiles generated against these printers will have to be re-created. 18) The Epson Stylus Photo R800 and R1800 have been retuned to give improved detail in the shadows, reduced ink usage, more accurate grayscale, and more accurate colors. Any profiles generated against these printers will have to be re-created. 19) New "transposed" resolutions (1440x720 and 2880x1440) have been added for some Epson printers. These resolutions are actually equivalent to 720x1440 and 1440x2880 DPI respectively. In some cases these may yield better results (specifically, less microbanding) than the normal 1440x720 and 2880x1440 DPI resolutions. 20) Quadtone printing now works correctly regardless of whether color or grayscale mode is selected. The following bugs have been fixed in Gutenprint 5.0.0-rc2: 1389788 Poor discoverability of advanced options 1389787 CUPS driver does not set Quality correctly 1389785 cups-genppdupdate sets PPD file owners incorrectly 1388615 escputil with Epson CX3700 1304710 Postscript driver corrupts output if width not multiple of 4 1251978 PPD for Stylus Color 600 ================================================================ III) OVERALL CHANGES BETWEEN GIMP-PRINT 4.2 AND GUTENPRINT 5.0: A) GENERAL USER-VISIBLE CHANGES: 1) Gutenprint offers many new options, which are described separately below. Many other options that are present in both 4.2 and 5.0 function differently between the two releases. 2) Options in the CUPS driver and GIMP plugin are now grouped according to function. This work is still in progress, and we expect to make further usability improvements. 3) Simplified bundles of settings are now offered for users who do not need to customize the settings. The Print Quality and Image Type controls offer a variety of settings optimized for common printing tasks; these settings may be overridden by explicit user choice. 4) Many of the color settings have changed effect. We recommend starting with no color adjustments and making appropriate changes only as required. Specific changes that you should be aware of include: * The default operation of the contrast setting has changed to be more in accord with other packages. In 4.2, reducing the contrast resulted in changing the black and white setting. In 5.0, reducing the contrast does not change the black and white settings. As a result, it is possible to use the contrast setting to improve highlight and shadow detail by reducing the contrast. The previous behavior is available by turning on the "Linear Contrast Adjustment" setting. * The brightness control now behaves more in accord with standard practice, adjusting the image's overall brightness without changing the black or white points. * The Cyan, Magenta, and Yellow settings have been replaced with separate settings for gamma, density, and gray balance for Cyan, Magenta, Yellow, and Black. The Cyan, Magenta, and Yellow settings in Gimp-Print 4.2 most closely correspond to the gamma settings in 5.0. The per-channel density settings do not affect the color correction. They are applied after the color correction to scale the individual channels. The per-channel gray balance settings adjust gray balance without affecting per-channel density settings (i. e. the adjust the amount of ink used to generate gray), permitting increased color saturation without compromising gray balance. 5) The Uncorrected color correction mode is recommended for users who wish to use their own color (ICC or otherwise) profiles with Gutenprint drivers. This will yield the maximum gamut and most uniform response. If you are not using your own color management, you will generally get best results from the High Accuracy color correction setting. Users who wish to perform their own linearization and ink limiting may wish to use the Raw color correction mode, which does not adjust the density. Any profiles generated against Gimp-Print 4.2 are unlikely to produce good results with Gutenprint 5.0. The color generation is sufficiently different that you will need to create new profiles against Gutenprint 5.0. In general, color adjustment should not change between Gutenprint 5.0 releases starting with release 5.0.0. Color adjustments may change during beta (5.0.0-beta) and release candidate (5.0.0-rc) phases. 6) The old man pages, and src/ghost/README, have been withdrawn. These pages, and the Ghostscript README file, were based on the Gimp-Print 4.2 options, which were much less extensive than the current option system. It is not practical to keep them up to date in any meaningful way. Our recommendation is that people use either the native CUPS driver or Foomatic to manage options rather than attempt to create and manage printer queues by hand. 7) The source browser in the documentation package has been removed. This information, which consists of color-coded annotation of the source code, is of little interest to the vast majority of users and consumes a significant amount of space in the installation. ---------------- B) NEW FUNCTIONALITY: 1) This release offers a new "curve" data type, permitting very precise adjustments of output. Currently the curves are only accessible in the GIMP plugin. 2) This release offers many new output controls: + Balance (density) controls for each color channel, in addition to the gamma controls present in 4.2. + Gray balance controls for the cyan, magenta, and yellow channels. These controls allow fine tuning of gray tones without affecting color. + Black (GCR) transition, including the transition gamma and the upper and lower limits. + Transitions for photo (light cyan, light magenta, and gray) inks. + Transfer curves for each channel (cyan, magenta, yellow, black, and composite), allowing very precise control over the output. + Transfer curves for generation of additional channels where applicable, such as red and blue inks for the Epson Stylus Photo R800 and R1800. + Hue, saturation, and luminosity transfer curves permit tuning of the color corrections utilized by Gutenprint. + Ink limit control. + The density control now permits setting density as high as 8.0, vs. 2.0 in 4.2. 3) The Epson driver offers (almost) true full bleed for printers that support it (but see the limitations below). 4) The PCL driver now offers duplex (two sided) printing support on appropriate printers. 5) The package now includes support for a number of dye sublimation photo printers made by Olympus, Canon, Sony, and Fujifilm. 6) The resolution list for Epson printers has been simplified; many redundant resolutions have been removed. 7) Print head direction for Epson printers (unidirectional vs. bidirectional) is now a separate control. In addition to contributing to the simplification of the Epson printer resolutions, this permits the choice of unidirectional vs. bidirectional at all resolutions if desired. By default, the driver picks the most appropriate choice for the situation. 8) The Epson driver now allows printing directly to CD's on printers that support this functionality. In addition, a choice of center hole size (16 mm or 43 mm) is now offered. A fine adjustment is provided to permit control over positioning of the image on the CD. This fine adjustment setting is not available in the Foomatic interface at present. To print to a CD, you need to select the "Print to CD" media source (input slot). You must also select the appropriate page size (3" CD or 5" CD). Note that this is different from the instructions Epson provides, which specify A4 media size. 9) The Epson driver now offers a choice of print head weave patterns. In addition to simplifying the resolution choices for Epson Stylus Pro printers, this offers an additional control for fine tuning output quality. 10) The Epson driver offers an Ink Set control for printers taking different choices of inks (such as the Epson Stylus Photo 2200, which offers a choice of Matte Black and Photo Black inks). 11) Where practical, all controls offer a default setting for simplicity of operation. This default value is intended to offer the optimal choice given the printer and its other settings. For example, if "Automatic" is selected for print head direction, the print head motion will be unidirectional at high resolutions (since unidirectional usually produces better output), but bidirectional at low resolutions (for faster printing). The default is only offered for options that are not directly controlled by the user's action. For example, there is no default choice offered for paper type, since the correct value is based on the paper type loaded by the user. Similarly, there is no default for the input slot or ink set. 12) Support for a variety of input types, in both 8 and 16 bit resolution, has been added. Gutenprint can now handle input in grayscale, whitescale (inverted grayscale), RGB, CMY, CMYK, and KCMY in 8 and 16 bit resolutions for all output types. 13) A new Threshold color correction mode has been added that produces either all-on or all-off of each color. This is similar to the Monochrome mode in 4.2, except that it works for color as well as black. 14) A new Desaturated color correction mode has been added that produces gray (desaturated) output using color inks. 15) A new Density color correction mode has been added that corrects only for density. This will normally produce excessively dark output. However, applications that wish to use their own linearization curves may wish to use this interface to prevent Gutenprint from performing its own linearization. 16) A new Raw color correction mode has been added that performs no correction whatsoever on the input. This mode may be used by applications that wish to perform their own ink limiting and linearization, and use Gutenprint to perform dithering (screening) and output generation only. 17) A new Predithered color correction mode has been added that combines the effects of Raw and Threshold. This mode may be used by applications that wish to perform their own dithering and use Gutenprint to generate printer-specific output only. The input value should be the size of the drop desired (for single-level printers, it should be 0 or 1; for printers with three drop sizes, it should be 0, 1, 2, or 3). 18) A new Correct Hue Only color correction mode has been added that performs partial color correction (adjusts hue, but not darkness). 19) The escputil command, which performs various printer administration activities on Epson Stylus printers, has a number of improvements: * A new extended ink information command has been added. This command, which is supported on printers with separate individual ink cartridges, prints additional information about the ink cartridge in addition to the amount of ink present. On older printers, it simply returns the standard ink information. * The status command now prints status in a human-readable format rather than simply reporting the raw information returned by the printer. * Ink level detection now works on all known supported printers, and may work on other non-supported printers. Previously it did not work on some newer printers. However, it is somewhat slower on these printers than it is on older printers that support the faster ink detection method. * Ink level detection now prints the correct ink color names for the printer model. * It is now no longer necessary to use the -u flag with certain printers in most cases. The utility now autodetects the printer model and generates appropriate commands in all cases. If you supply a printer queue (with the -P option) rather than a raw device (with the -r option), you will still need to provide the -u flag, as the utility cannot detect the actual printer connected to a queue. However, commands that must be run bidirectionally (ink level, identify, and printer status) do not require the -u flag any more. * escputil now successfully detects ink level, printer model, and status even if the printer is out of ink. 20) The Epson driver permits adjusting the dot size if required to increase the amount of ink printed. For example, if 1440x720 DPI is selected, but the density requested is very high, the printer will switch to using drop sizes appropriate for 720 DPI. This option is not normally required and is disabled by default. ---------------- C) CHANGES TO THE PRINT PLUGIN FOR THE GIMP: 1) A new plugin for the GIMP 2.x is now provided. 2) The Print plugin for the GIMP 1.2 is now deprecated and will be withdrawn in 5.1 (the development release following 5.0). The Print plugin for the GIMP 1.2 will continue to be supported in all 5.0 releases, but no new functionality will be added following the release of 5.0.0. 3) The plugin now always displays the page preview with the top of the page at the top of the preview pane, rotating the image preview as necessary to display landscape or portrait mode. 4) The positioning controls have been simplified. 5) The printrc file format is different. Gutenprint 5.0 can read printrc files created by Gimp-Print 4.2 and earlier, but it writes out the printrc file in a format that earlier versions of Gimp-Print cannot read. 6) Printer queue discovery and command specification are greatly simplified over 4.2. The plugin now offers a default printing command that is determined based on the characteristics of the system, and also offers the choice of printing to a file or using a custom print command for each printer defined in the printrc file. The default printing command is correct whether the output is Postscript or not; it is no longer necessary to remove "-oraw" from the print command line. 7) The Print plugin now always displays all options relevant to what's being printed, enabling and disabling options as appropriate. 8) The plugin now lists printers grouped by manufacturer, rather than a single long list. 9) If you are using an older version of the GIMP 1.2, and the GIMP is installed in a non-standard location on your system such that you cannot run configure in Gutenprint without using --with-gimp-prefix or --with-gimp-exec-prefix, please read item (8) in Exceptions and Workarounds below. In addition, if you have both the GIMP 1.3/2.0 and the GIMP 1.2 installed on your system, you should read the same material. ---------------- D) CHANGES TO THE CUPS INTERFACE: 1) The CUPS PPD files now offer both fine and coarse adjustments for all color controls, permitting much finer control over output (in steps of .005 rather than .05) without making the menus unwieldly. 2) The CUPS driver refuses to function with PPD files created for a different version of Gutenprint or Gimp-Print, providing an error message indicating the problem. This avoids problems caused by mismatches between the PPD files and the driver. While mismatches are potentially not harmful in all cases, they could cause problems ranging from failures to print with poor diagnostic messages to incorrect results. 3) The Gutenprint 5.0 CUPS driver can be installed concurrently with the 4.2 driver. Both the PPD files and the driver carry different names from their 4.2 counterparts, permitting a parallel installation or gradual switchover between 4.2 and 5.0-based releases. 4) An update script (cups-genppdupdate.5.0) is provided to update PPD files between later 4.3 and 5.0-based releases, preserving option values where possible. This script will not update PPD files based on Gimp-Print 4.2, or Gimp-Print 4.3 releases prior to 4.3.21. 5) On printers capable of borderless output, the CUPS driver now advertises (via the *ImageableArea in PPD files) the full page dimension, and crops the output if the borderless mode is not selected. If borderless mode is selected, the full image (up to the limits of the printer) will be printed. This compromise is necessitated by the fact that PPD files can only supply a single imageable area for a particular page size, so it was necessary to select which imageable area to provide. In early prereleases of Gutenprint 5.0, we supplied the normal page area, and stretched the output if the user selected full bleed. This caused problems for many users, in that it was not possible to print the full surface of the paper while preserving dimensions. Based on user feedback, we determined that the best solution is to provide the full page size as the imageable area and crop the result if full bleed mode is not selected. 6) The CUPS driver now offers 16-bit printing as an option with ESP Ghostscript 8.15, and Apple Macintosh OS X 10.4 ("Tiger"), using the new Color Precision control. Setting Color Precision to "Best" enables 16-bit printing if the system supports it; setting it to "Normal" uses 8-bit printing. Setting Color Precision to "Best" has no effect if the version of CUPS does not support 16-bit printing; in that case, "Best" is still 8-bit. The higher precision may improve results with certain source material, particularly if it contains smooth color gradients. The result would be freedom from banding, particularly in highlights where it might be visible with 8-bit color computation. It may be somewhat slower than 8-bit printing. 7) Due to the implementation of CUPS, it is necessary on some systems to link the programs associated with the CUPS driver (in particular, cups-genppd and rastertogutenprint) statically against the Gutenprint library. Please see bugs 865253 and 865265 for full details. This fix works correctly unless --disable-static (to disable building static libraries) is passed on the command line. Normally, only people packaging up Gutenprint for distribution use this option. If you wish to use this option, please read item (6) in Exceptions and Workarounds *carefully* for a full description of the problem along with suggested methods of procedure. ---------------- E) CHANGES TO THE GHOSTSCRIPT DRIVER: 1) The stp driver, a monolithic (traditional) Ghostscript driver used with Ghostscript 5.10, 5.50, and 6.51, has been withdrawn. The only supported Ghostscript driver is the IJS-based driver, for GNU Ghostscript 6.53 and above, ESP Ghostscript 7.05 and above, and AFPL Ghostscript 7.04 and above. This change was made due to the difficulty of supporting the monolithic driver and the complexity of building it. The traditional monolithic driver architecture required that all drivers be compiled into Ghostscript, requiring that program to be recompiled whenever a driver is added. This is a rather complicated operation that cannot easily be automated. The IJS architecture, based on the open source HPIJS driver supplied by Hewlett-Packard for HP inkjet printers, allows for drivers to be compiled independently of the core Ghostscript. A Gimp-Print/Gutenprint driver based on the IJS architecture was introduced into Gimp-Print 4.2.1 and 4.3.0, and has been recommended for use with Gimp-Print 4.2.2 and beyond. In addition to a greatly simplified build procedure and overall cleaner architecture, the separation between Ghostscript and driver imposed by the IJS architecture permits use of Gutenprint with AFPL Ghostscript with no license conflict. ---------------- F) CHANGES TO FOOMATIC DATA GENERATION: 1) The Ghostscript IJS driver now functions only with Foomatic PPD files created for the matching version of Gutenprint, providing an error message indicating the problem if an incorrect PPD file is used. This avoids problems caused by mismatches between the PPD files and the driver. While mismatches are not harmful in all cases, they could cause problems ranging from failures to print with poor diagnostic messages to incorrect results. 2) The Gutenprint 5.0 Foomatic data and IJS driver can be installed concurrently with the 4.2 driver. Both the PPD files and the driver carry different names from their 4.2 counterparts, permitting a parallel installation or gradual switchover between 4.2 and 5.0-based releases. 3) On printers capable of borderless output, the Foomatic driver now advertises (via the *ImageableArea in PPD files) the full page dimension, and crops the output if the borderless mode is not selected. If borderless mode is selected, the full image (up to the limits of the printer) will be printed. This compromise is necessitated by the fact that PPD files can only supply a single imageable area for a particular page size, so it was necessary to select which imageable area to provide. In early prereleases of Gutenprint 5.0, we supplied the normal page area, and stretched the output if the user selected full bleed. This caused problems for many users, in that it was not possible to print the full surface of the paper while preserving dimensions. Based on user feedback, we determined that the best solution is to provide the full page size as the imageable area and crop the result if full bleed mode is not selected. ---------------- G) QUALITY IMPROVEMENTS: 1) Color and tonal accuracy is greatly improved compared to 4.2 while the gamut (range of printable colors) has been increased. This particularly improves the hue accuracy of red, magenta, and blue, and the tonal accuracy of cyan and green. Most Epson printers have been fully tuned for the new color correction algorithms introduced for this release. The default gamma has been changed to produce lighter midtones with all Epson printers. 2) The handling of variable drop sizes and photo inks (6 and 7 color printers) has been completely revised, with the result being that variable drop size printers with photo inks (such as most Epson Stylus Photo and Stylus Pro printers) give much more consistent results with fewer artifacts. In particular, colors match correctly across all resolutions, which was not the case in 4.2. In 4.2, variable size drops and light inks were treated the same way; an "effective drop size" based on the relative size of the drops and the darkness of the inks was used to decide what kind of drop to print. While this method has some advantages (it ensures that dark and light inks are never printed at the same place, and also that dark dots are optimally dispersed among light dots), it has some serious disadvantages as well: the properties of a small dark dot and a large light dot are not really the same, particularly when inks are mixed. The combination of different drop sizes being used at different resolutions meant that the transition between light and dark inks differed depending upon the resolution chosen, and if more than one drop size was required at a given resolution, the transition tended to be quite marked. The new method of handling variable size drops and light inks is to first separate each of the four channels (cyan, magenta, yellow, and black) into the appropriate light and dark inks, if needed. This separation is performed based on the relative darkness of the different ink sub-colors (such as light and dark cyan) and specific characteristics of the printer, ink type, and paper chosen. Following this, each sub-color is screened separately, and the appropriate combination of drop sizes is chosen. The drop size selection in this release has also been changed to fill the page with as many small drops as possible before switching to larger drops. This ensures that the largest number of the smallest possible drops is printed, which yields a smoother texture in the midtones. Finally, new dither algorithms described below allow drops of ink of different colors to be dispersed, avoiding clumping or overprinting of drops. 3) The EvenTone dither algorithm has been extensively reworked in this release, offering many improvements. First, it has been rewritten to work correctly with variable drop size and photo printers. This algorithm, which offers significant improvements over the standard Adaptive Hybrid algorithm, does not work optimally with variable drop sizes or photo printers in 4.2. Secondly, a variation called Hybrid EvenTone has been added. This dither algorithm perturbs the dot positions slightly to break up some patterning seen in standard EvenTone dithering in solid regions of pale tones, particularly when printing with black ink only. This very slightly reduces the smoothness of texture in exchange for largely eliminating this undesirable patterning. This algorithm is also expected to be more resistant to microbanding effects. 4) The conversion between black and composite (CMY) gray has been improved in this release, yielding more neutral grays on most printers. 5) Epson printers have been completely retuned, in most cases yielding much better density, more accurate gray scale, and darker black on all paper types. ---------------- H) ARCHITECTURAL CHANGES: 1) Family drivers are now modular. A "family driver" is a collection of printer drivers for one group of printers sharing a common programming architecture, e. g. ESC/P2, PCL, Lexmark, Canon. The drivers can be built as separate modules and loaded at runtime as needed. 2) Color processing is now partially modularized. This architecture will enable us, or others, to provide color management without having to change the internal interfaces within Gutenprint. 3) New composite data types. Gutenprint 5.0 defines additional data types. These types include: * Sequences, curves, and arrays. A sequence is a primitive vector of numbers data type; curves and arrays provide additional capabilities such as interpolation (for curves) and multiple dimensions (for arrays). * Lists are a general ordered container of named objects of arbitrary type. They are used throughout the core library in a variety of ways. The creator of a list can specify constructor, destructor, name comparison, copy, and sort operations on list members. * Parameters, which are part of the options system described below. In addition to storing values and descriptions of the parameter, parameters can be queried to determine defaults and constraints. Parameter lists (which use the list container internally) are also defined as part of this. * String lists are used in various ways; in particular, they are used by the parameter system to inform programs of the available choices of values for string-valued parameters. 4) Complete overhaul of the options system. Rather than offering a fixed set of operations, family drivers, color modules, etc. can now offer a wide variety of options using a predefined set of data types. The data types currently supported are strings picked from a list, floating point numbers, integers, curves, arrays, Boolean values, dimensions, and filenames. The new options system provides a flexible way for drivers to inform applications of default values and UI hints, the ability to selectively enable and disable options, and a generalized way of verifying legality of option choices. 5) The coordinate system has been changed from bottom left to top left of the page, and the printable area can now extend beyond the edge of the page. The result is a more intuitive coordinate system for driver writers that matches the coordinate system of printers, and the ability to do true full bleed. 6) The specification of color correction, input, and output modes has been completely revised, permitting applications to specify input mode, output mode, channel bit depth, and color correction completely independently. This architecture is also more extensible. 7) Complete overhaul of the black generation in CMYK output. Black generation is now performed in the color code rather than the dither code. This simplifies the dither code, puts the CMYK generation where it should be, and improves overall flexibility. 8) Complete overhaul of the multi-tone (photo or quadtone) ink processing architecture (channels). Instead of being processed as part of the dithering code as in 4.2, where ink drops of lighter inks were assigned virtual values proportional to their darkness as well as their size, this is now processed after the initial color conversion. This has a number of major advantages: * As the actual amount of ink to be printed is visible to the color code, the color code can do ink limiting without fear that the dither code will change the amount of ink to be printed. * It ensures that the same proportions of inks will be printed at any density and resolution. In 4.2, the ramp from light to dark ink varied depending upon the dot sizes available and hence the resolution. This has already been demonstrated to yield much better linearity and much more neutral gray scale with even very modest tuning effort. * It enables use of all drop sizes of all ink tones. In 4.2, we could not use the smallest drop size of dark ink, because the virtual dot size of a small dot of dark ink is typically close to the virtual dot size of a large dot of small ink. This would yield very sharp transition, and perhaps even result in more light ink printed in darker regions than in lighter regions. With channel processing separate from dithering, this concern no longer exists; we can safely use small drops of dark ink, improving smoothness. * It enables the color code to do ink limiting intelligently without concern that the dither code will rearrange things behind its back. * It greatly simplifies the specification of inks. With drop size and darkness orthogonal, family drivers can greatly simplify their tables of inks. * Dither algorithms can choose to ignore smaller drop sizes if they wish to offer fast operation. * Applications with special requirements can now access the raw ink channels directly. This facility was used to create a mechanism to more accurately tune printer inks. 9) The color system can now generate arbitrary ink colors, lifting the CMYK-only restriction in previous versions of the package. This permits full support for the Epson Stylus Photo R800 and R1800, which use red and blue ink in addition to the traditional CMYK. 10) Use of true XML to store data about printers and paper sizes, and to represent new data types (sequences, curves, and arrays). This uses the "mxml" XML library, a fast, lightweight XML parser written by Mike Sweet for this project. Currently, the use of XML (as opposed to compiled-in data) is limited, but we expect that this will change beyond the initial 5.0 release. 11) In addition to parameters, internal components such as family drivers, color drivers, etc. can store arbitrary data in the basic stp_vars_t object. This facility is used to simplify the internal driver API; the family driver no longer needs to keep track of dither, color, etc. information itself. 12) The Epson Stylus family driver has been decomposed into more functionally distinct units. The data schema has been considerably improved, and the code itself broken into more easily maintained units. 13) The build system has been updated with a more contemporary toolchain based on autoconf 2.5 and gettext 0.11. 14) The Print plugin for the GIMP has been decomposed into a UI library and the core plugin. The user interface library is a pure GTK-based library; the tiny GIMP plugin is a client of this library. 15) Printer characteristics are exposed to the application level as read-only parameters. This permits the escputil utility to not duplicate information stored in the printer driver. ================================================================ IV) EXCEPTIONS AND WORKAROUNDS A) GENERAL ISSUES 1) Full bleed mode does not work completely correctly on most Epson printers at present. Typically there is a small margin at the bottom of the page (1-2 mm) and possibly a very small margin at the top. However, it works correctly along the left and right margins. We do not have an estimated time for a fix. 2) The Canon, Hewlett-Packard, and Lexmark drivers do not offer all of the additional options and improvements that the Epson driver does. We do not have an estimated time for fix. Please contact us if you would like to assist with this. 3) Support for the Canon S200 has not yet been ported forward from 4.2. 4) This release is slower than 4.2 in many cases, particularly when using High Accuracy (which is the default color correction in most cases) or Bright color correction. It is possible that this release will not be able to drive some printers at full speed, particularly if your computer has a slow processor. Performance has been only partially analyzed or tuned at present. 5) The user's manual and developer's guide have not been updated for this release. ---------------- B) BUILD/INSTALLATION ISSUES 1) With certain versions of CUPS and in certain non-default configurations, if a new version of Gutenprint is installed over an existing version genppd will create PPD files based on the older version of Gutenprint rather than the newer version. This will happen if all of the following are true: i) The cups-config provided by the CUPS driver adds -Wl,rpath=/usr/lib. This is done by some versions of CUPS reportedly because in some cases the runtime linker does not pick up libraries out of /usr/lib. This can be checked by running cups-config --libs --ldflags and inspecting the output for any mention of "rpath", "RPATH", "RUN_PATH", or the like. This is controlled by the CUPS installation on your system. ii) There is presently a version of Gutenprint installed in /usr (--prefix=/usr) rather than /usr/local or the like. The default location of Gutenprint installation is in /usr/local, but system vendors typically install Gutenprint in /usr. iii) Gutenprint is built dynamically only (--disable-static). This is not a default, and requires the explicit --disable-static on the Gutenprint "configure" command line. Therefore, if you build Gutenprint normally you should not be vulnerable to this problem. Note that in general if you install CUPS into a non-standard location, and install Gutenprint into the same location, this problem can surface. For example, if you choose to install CUPS in /usr/local and Gutenprint in /usr/local you are vulnerable to this. However, it is not standard practice to install CUPS anywhere but /usr. In this case, the run path embedded in the genppd executable points to the version of Gutenprint installed in /usr/lib. This run path overrides any attempt by libtool to look in the build directory. The result is that cups-genppd and rastertogutenprint are run against the older version of Gutenprint. If the new version contains additional features (more printers, etc.) they will not be available. This bug is difficult to detect in a normal build. It does not cause an error to happen during build; the only failure is that some PPD files may not be built or may be built with missing options. Due to the PPD version checking introduced in this release, the behavior might manifest itself as a runtime error. It is also possible that there will be no error at all other than the older version of Gutenprint being used, with the result that new features and bug fixes are not available. If you wish to use only shared libraries, do not wish to build static libraries at all, and are vulnerable to this issue (because cups-config --ldflags sets the run path), there are three workarounds available: i) Build and install Gutenprint into /usr (rather than /usr/local) and then rebuild Gutenprint from scratch. This will install the correct libgutenprint.so in /usr/lib, and in the rebuild genppd will be run against the correct library. ii) Remove the old version of Gutenprint prior to building the new version of Gutenprint. The important files to remove are anything named /usr/lib/libgutenprint*. iii) Edit cups-config to remove the reference to the run path. 2) There is a known translation problem building the PPD files used by the CUPS driver such that on many systems all of the PPD files are in the English language. This causes CUPS tools, such as KUPS or http://localhost:631 to display many copies of each PPD file, all in the English (en) language. In fact, the PPD files should be translated into many different languages. The PPD files are created by a program named "genppd" in the src/cups directory. This program is called once for each language, and creates all of the PPD files for the language in one shot. The command 'zgrep' can be used to determine if genppd is creating the PPD files correctly, as follows: src/cups$ zgrep LanguageVersion ppd/*/pcl-4.ppd.gz ppd/C/pcl-4.ppd.gz:*LanguageVersion: English ppd/da/pcl-4.ppd.gz:*LanguageVersion: Danish ppd/en_GB/pcl-4.ppd.gz:*LanguageVersion: English-GB ... If the PPD file for each language has a different language version, the genppd program operated correctly. If instead the output looks like this: src/cups$ zgrep LanguageVersion ppd/*/stp-pcl-4.5.0.ppd.gz ppd/C/stp-pcl-4.5.0.ppd.gz:*LanguageVersion: English ppd/da/stp-pcl-4.5.0.ppd.gz:*LanguageVersion: English ppd/en_GB/stp-pcl-4.5.0.ppd.gz:*LanguageVersion: English ... the program did not operate correctly. If you do not have 'zgrep' on your system, you can gunzip the PPD files, and use grep LanguageVersion ppd/*/stp-pcl-4.5.0.ppd to accomplish the same test. The normal mechanism for performing translations is to set the LANG environment variable to the appropriate language prior to running the program. This normally causes the program to search the translations (normally in /usr/share/locale or /usr/lib/locale) for the chosen language. When a specially marked string is used, a special macro calls `gettext()' on the string to retrieve the translation, and substitutes the translation for the string in question. There are two problems with this approach in the context of genppd. The translation engine is intended to be used after installation, not during build, and this causes problems. i) At the time genppd is run, the translations have not been installed in the normal system directories. Fortunately, it's possible to tell the translation machinery (via bindtextdomain) to look elsewhere for the translation catalogs. What we do is install the catalogs in a temporary directory under src/cups, and tell genppd to instruct the translation machinery to look there. This workaround is straightforward, and doesn't normally cause problems. ii) LANG only lets us pick a valid locale (normally determined by listing the directories in /usr/share/locale or /usr/lib/locale). Unfortunately, while language codes (which form the base of locales) are standard, the actual locale names aren't always. On some systems, the locale names are just the language base names; on others, they are the language names concatenated with country codes (e. g. en_US), while on others they are language codes concatenated with character sets. We are not aware of any workaround for this, possibly short of actually running make install and then rebuilding the PPD's. 'make install' will install the message catalogs, and that may create the necessary locale directories. This is not exactly a very elegant approach. The GNU gettext library (libintl.a) provides another environment variable, LANGUAGE, which unconditionally looks up translations according to the language, ignoring LANG and the LC_* environment variables that are normally used for translation. This library is no longer included with Gutenprint (--with-included-gettext will not work). Install the GNU gettext package first if you need libintl.a. Many systems provide translation machinery in their standard libraries, and it may not always be best to use foreign libraries to replace standard system functionality. We have chosen to use LANGUAGE for this purpose, as the GNU gettext library appears to offer the most reliable translation, and LANGUAGE appears to offer the most reliable mechanism. We have actually found that LANG and LC_* can interfere with LANGUAGE, thus we do not use both. To determine if the translations are working, you must actually inspect the PPD files. You will need to cd src/cups/ppd/sv gunzip * more * or the like to determine if this is successful. In particular, look for LanguageVersion, and make sure that it is correct (it should be "Swedish" in the sv directory, for example), and also make sure that the paper sizes are also translated. We currently suggest using the Swedish translation for this purpose as it is the most complete. If packagers find that the PPD files are all in English, rather than translated into the appropriate languages, we suggest the following: i) Install GNU gettext (libintl). If your system is not based on GNU libc (Linux usually is based on GNU libc; BSD, Solaris, IRIX, etc. are not), you will need this to have any possibility of creating the translated PPD files. ii) Run 'make install' to install the package (including the message catalogs) onto the system first, and then do the following: cd src/cups rm ppd-stamp make to rebuild the PPD files. Having the message catalogs on the system may permit this to succeed. iii) Ensure that your system actually has locales named 'sv', 'pl', and all of the other supported languages, and change LANGUAGE to something more appropriate (most likely LANG, LC_MESSAGES, or LC_ALL). iv) Build the PPD files on a Linux-based system; they are portable. v) Use --disable-translated-cups-ppds on the configure command line to suppress the translated PPD files altogether. Please feel free to contact us about this issue. 3) There are multiple issues that one must be aware of when using Foomatic with Gutenprint. i) Before installing any new release of Gutenprint 5.0, you must manually remove any existing Foomatic option files. This is because the Foomatic utility to load data kits (foomatic-kitload) does not remove obsolete data files from the Foomatic database. If you do not do this, any PPD files you generate will be incorrect and printing may work incorrectly or not at all. Foomatic option files are usually located in /usr/local/share/foomatic/db/source/opt or /usr/share/foomatic/db/source/opt Assuming they're in the former location, you must remove data files associated with the Gutenprint driver. The command to do this, which must be run as the superuser (root) is cd /usr/local/share/foomatic/db/source/opt ls -l gutenprint-ijs*.xml If there are existing files present, you must remove them: rm -f gutenprint-ijs*.xml Now check to make sure that they are gone: ls -l gutenprint-ijs*.xml CAUTION: Be very careful when typing this command! Minor errors in typing these commands may result in severe damage to your system. After this, you may run 'make install' in your Gutenprint source directory to install the package. You will then need to re-create any printer queues using Foomatic. In general, you will have to perform this procedure any time you install a new version of Gutenprint. Please check the Foomatic site (http://www.linuxprinting.org/foomatic.html) and the Gutenprint site (http://gimp-print.sourceforge.net) for updated instructions about this. ii) Unlike with the CUPS native driver, there is no simple way to update all PPD files when you install a new version of Gutenprint. You must either use the foomatic-ppdfile command to upgrade PPD files individually, or foomatic-compiledb to build all PPD files. Your system may provide an alternate way to install new PPD files, in which case you may use that method. iii) The Foomatic data is version locked to the Gutenprint release installed on the system. For example, PPD files generated with the Foomatic data for release 5.0.0 will not work with the ijsgutenprint in release 5.0.1. This is to prevent accidentally using incorrect data, which could cause incorrect function to take place. 4) There is a known complication building "escputil" that causes problems on some systems. "escputil" uses the "readline" package, to support command editing and history within the program. Unfortunately, linking programs with "readline" often requires linking against additional libraries, and the exact library depends upon the system (e. g. not all Linux systems have the same requirements). The configure script attempts to determine which additional library must be linked against. It tries using the following libraries in this order to build a test executable: -lncurses -lcurses -ltermcap no additional libraries The reason it tries other libraries first is that some systems will link successfully, but only fail when an attempt is made to actually call readline. Therefore, we assume that additional libraries are required. Since we try the extra libraries in order from most recent to oldest, we expect that the first one we find will be appropriate. For example, if the "ncurses" library is the standard on a given system, the "termcap" library may be provided for back compatibility, but it is unlikely that "termcap" will be the standard with "curses" or "ncurses" being provided for compatibility only (so that the link will succeed but the command will use the incorrect library). As this procedure is not failsafe, we provide the following configure options to control this behavior: ./configure --with-readline=yes (the default; attempts to determine the correct library to link against) ./configure --with-readline=no (turns off use of readline altogether) ./configure --with-readline=only (specifically instructs configure to not attempt to link against any other libraries) ./configure --with-readline=libs (specifies the libraries to be linked against) An hypothetical (this won't work anywhere!) example of the latter would be ./configure --with-readline='-lncurses -ltermcap' Note that configure will not allow readline to be used if it cannot successfully build the test program, regardless of the option selected. If you are having difficulty getting escputil to build, we suggest using --with-readline=no. The commands used within escputil are very short and seldom require significant editing. 5) The fix for bug 929227 (Gimp-Print incorrectly attempts to build against GIMP 2.0) requires special build instructions if you are using a very old version of the GIMP 1.2 (1.2.0, 1.2.1, or 1.2.2). Specifically, you must set GIMPTOOL in the environment to point to the proper version of gimptool when running Gutenprint's configure script. For example: GIMPTOOL=/usr/bin/gimptool ./configure The bug fix involves checking for the presence of the GIMP slightly differently from how it was previously done. Previously, Gimp-Print checked for the presence of a program named "gimptool", which provides information about how to build plugins against the GIMP. This worked correctly when only the GIMP 1.2 was installed, but not when the GIMP 2.0 was installed. The GIMP 2.0 actually installs a program named "gimptool-2.0", and creates a symbolic link named "gimptool" pointing to it. Later versions of the GIMP 1.2 (1.2.3, 1.2.4, 1.2.5, and any later versions that may be released) similarly create a program named "gimptool-1.2" and a symbolic link named "gimptool". As the configure script prior to this bug fix simply checked for gimptool, it incorrectly detected a gimptool from the GIMP 2.0. The current configure script checks first for gimptool-1.2 and then for gimptool, and only accepts the use of a GIMP 1.2 version of one of these programs. However, if you have one of the older versions of the GIMP 1.2 installed in a non-standard location, and you use --with-gimp-prefix or --with-gimp-exec-prefix to specify its location, the configure script will not automatically detect the correct location of gimptool, and you must specify it as described above. Note that you must specify a copy of gimptool from the GIMP 1.2, not from the GIMP 2.0. If your copy of the GIMP is installed in a standard location (typically /usr/bin or /usr/local/bin), you do not need to use --with-gimp-prefix or --with-gimp-exec-prefix, and therefore do not need to use this workaround. If you cannot upgrade to the GIMP 2.x, the Gutenprint and GIMP projects recommend upgrading to revision of the GIMP 1.2.5, which will not require this workaround. This workaround is available in the event that you cannot or do not wish to upgrade your installation of the GIMP. ================================================================ V) SUPPORTED PRINTERS: A) LIST OF SUPPORTED PRINTERS The following is the complete list of printers believed to be compatible with Gutenprint, along with the name of the driver. Some of these printers may work only partially; the specified drivers may not support the full range of resolutions, paper sizes, media sources, etc. that some of these printers may offer. Our practice is to provide preliminary support for printers as soon as we have information sufficient to code a functioning driver, and to release this support even in an otherwise stable release. In this case, we note in the list below that support for a particular printer is "Experimental". It is likely that printers that are supported in "Experimental" mode will produce poor quality at some or all resolutions and in addition may not function correctly at some resolutions. Experimental Epson printers are most likely to produce good output at the highest resolution offered (2880x720, 2880x1440, 2880x2880, or 5760x2880 DPI), since in general these printers will not use multiple drop sizes at such high resolutions. Note that Gutenprint supports only the printer in multi-function devices -- this package does not support scanning, fax, copying, or any other function. For scanning, please see the SANE project (http://www.sane-project.org). Printer Name Driver Name Notes ------- ---- ------ ---- ----- Apollo P-2100 pcl-apollo-p2100 Apollo P-2150 pcl-apollo-p2150 Apollo P-2200 pcl-apollo-p2200 Apollo P-2250 pcl-apollo-p2250 Apollo P-2500 pcl-apollo-p2500 Apollo P-2550 pcl-apollo-p2550 Apollo P-2600 pcl-apollo-p2600 Apollo P-2650 pcl-apollo-p2650 Apple Color StyleWriter 4100 pcl-apple-4100 Apple Color StyleWriter 4500 pcl-apple-4500 Apple Color StyleWriter 6500 pcl-apple-6500 Apple LaserWriter Select 360 pcl-apple-lw360 Brother DCP-1200 brother-dcp-1200 Brother HL-4Ve brother-hl-4ve Brother HL-10V brother-hl-10v Brother HL-10h brother-hl-10h Brother HL-630 brother-hl-630 Brother HL-660 brother-hl-660 Brother HL-760 brother-hl-760 Brother HL-960 brother-hl-960 Brother HL-1040 brother-hl-1040 Brother HL-1050 brother-hl-1050 Brother HL-1060 brother-hl-1060 Brother HL-1070 brother-hl-1070 Brother HL-1240 brother-hl-1240 Brother HL-1250 brother-hl-1250 Brother HL-1260 brother-hl-1260 Brother HL-1270N brother-hl-1270n Brother HL-1440 brother-hl-1440 Brother HL-1660e brother-hl-1660e Brother HL-2060 brother-hl-2060 Brother MFC-6550MC brother-mfc-6550mc Brother MFC-8300 brother-mfc-8300 Brother MFC-9500 brother-mfc-9500 Brother MFC-9600 brother-mfc-9600 Canon BJ-30 bjc-30 Canon BJC-50 bjc-50 Canon BJC-55 bjc-55 Canon BJC-80 bjc-80 Canon BJC-85 bjc-85 Canon BJC-210 bjc-210 Canon BJC-240 bjc-240 Canon BJC-250 bjc-250 Canon BJC-1000 bjc-1000 Canon BJC-2000 bjc-2000 Canon BJC-2010 bjc-2010 Canon BJC-2100 bjc-2100 Canon BJC-2110 bjc-2110 Canon BJC-3000 bjc-3000 Canon BJC-4000 bjc-4000 Canon BJC-4300 bjc-4300 Canon BJC-4400 bjc-4400 Canon BJC-6000 bjc-6000 Canon BJC-6100 bjc-6100 Canon BJC-6200 bjc-6200 Canon BJC-6500 bjc-6500 Canon BJC-7000 bjc-7000 Canon BJC-7100 bjc-7100 Canon BJC-8200 bjc-8200 Canon CP-100 canon-cp100 Canon CP-200 canon-cp200 Canon CP-220 canon-cp220 Canon CP-300 canon-cp300 Canon CP-330 canon-cp330 Canon GP 335 canon-gp_335 Canon LBP-4sx canon-lbp-4sx Canon LBP-430 canon-lbp-430 Canon LBP-1000 canon-lbp-1000 Canon LBP-1260 canon-lbp-1260 Canon LBP-1760 canon-lbp-1760 Canon S100 bjc-s100 Canon S200 bjc-s200 Experimental Canon S300 bjc-s300 Canon S400 bjc-s400 Canon S450 bjc-s450 Canon S500 bjc-s500 Canon S600 bjc-s600 Canon S630 bjc-s630 Canon S800 bjc-s800 Canon S4500 bjc-s4500 Canon SELPHY-CP-400 canon-cp400 Canon SELPHY-CP-500 canon-cp500 Canon SELPHY-CP-510 canon-cp510 Canon SELPHY-CP-600 canon-cp600 Canon SELPHY-CP-710 canon-cp710 Canon iP4000 bjc-iP4000 Experimental Canon imageRunner 330s canon-ir_330s Citizen ProJet II citizen-projet_ii DEC 1800 dec-1800 DEC LN17 dec-ln17 Epson ActionLaser 1100 epson-actl_1100 Epson ActionLaser II epson-actl_ii Epson AcuLaser C2000 epson-acl_c2000 Epson AcuLaser C2000PS epson-acl_c2000ps Epson AcuLaser C8500 epson-acl_c8500 Epson AcuLaser C8500PS epson-acl_c8500ps Epson AcuLaser C8600 epson-acl_c8600 Epson AcuLaser C8600PS epson-acl_c8600ps Epson EPL-5200 epson-epl-5200 Epson EPL-5200+ epson-epl-5200plus Epson EPL-5700 epson-epl-5700 Epson EPL-5700PS epson-epl-5700ps Epson EPL-5800 epson-epl-5800 Epson EPL-5800PS epson-epl-5800ps Epson EPL-5900 epson-epl-5900 Epson EPL-5900PS epson-epl-5900ps Epson EPL-6100 epson-epl-6100 Epson EPL-6100PS epson-epl-6100ps Epson EPL-7100 epson-epl-7100 Epson Stylus C20 escp2-c20 Epson Stylus C20SX escp2-c20sx Epson Stylus C20UX escp2-c20ux Epson Stylus C40 escp2-c40 Epson Stylus C40SX escp2-c40sx Epson Stylus C40UX escp2-c40ux Epson Stylus C41 escp2-c41 Epson Stylus C41SX escp2-c41sx Epson Stylus C41UX escp2-c41ux Epson Stylus C42 escp2-c42 Epson Stylus C42SX escp2-c42sx Epson Stylus C42UX escp2-c42ux Epson Stylus C43 escp2-c43 Epson Stylus C43SX escp2-c43sx Epson Stylus C43UX escp2-c43ux Epson Stylus C44 escp2-c44 Epson Stylus C44SX escp2-c44sx Epson Stylus C44UX escp2-c44ux Epson Stylus C45 escp2-c45 Epson Stylus C46 escp2-c46 Epson Stylus C48 escp2-c48 Epson Stylus C50 escp2-c50 Epson Stylus C60 escp2-c60 Epson Stylus C61 escp2-c61 Epson Stylus C62 escp2-c62 Epson Stylus C63 escp2-c63 Epson Stylus C64 escp2-c64 Epson Stylus C65 escp2-c65 Epson Stylus C66 escp2-c66 Epson Stylus C68 escp2-c68 Epson Stylus C70 escp2-c70 Epson Stylus C80 escp2-c80 Epson Stylus C82 escp2-c82 Epson Stylus C83 escp2-c83 Epson Stylus C84 escp2-c84 Epson Stylus C85 escp2-c85 Epson Stylus C86 escp2-c86 Epson Stylus C88 escp2-c88 Epson Stylus Color escp2 Epson Stylus Color I escp2-i Epson Stylus Color II escp2-ii Epson Stylus Color IIs escp2-iis Epson Stylus Color PRO escp2-pro Epson Stylus Pro XL escp2-pro-xl Epson Stylus Color 400 escp2-400 Epson Stylus Color 440 escp2-440 Epson Stylus Color 460 escp2-460 Epson Stylus Color 480 escp2-480 Epson Stylus Color 500 escp2-500 Epson Stylus Color 580 escp2-580 Epson Stylus Color 600 escp2-600 Epson Stylus Color 640 escp2-640 Epson Stylus Color 660 escp2-660 Epson Stylus Color 670 escp2-670 Epson Stylus Color 680 escp2-680 Epson Stylus Color 740 escp2-740 Epson Stylus Color 760 escp2-760 Epson Stylus Color 777 escp2-777 Epson Stylus Color 800 escp2-800 Epson Stylus Color 850 escp2-850 Epson Stylus Color 860 escp2-860 Epson Stylus Color 880 escp2-880 Epson Stylus Color 8 3 escp2-83 Epson Stylus Color 900 escp2-900 Epson Stylus Color 980 escp2-980 Epson Stylus Color 1160 escp2-1160 Epson Stylus Color 1500 escp2-1500 Epson Stylus Color 1520 escp2-1520 Epson Stylus Color 3000 escp2-3000 Epson Stylus Photo escp2-photo Epson Stylus Photo 700 escp2-700 Epson Stylus Photo EX escp2-ex Epson Stylus Photo EX3 escp2-ex3 Epson Stylus Photo 720 escp2-720 Epson Stylus Photo 750 escp2-750 Epson Stylus Photo 780 escp2-780 Epson Stylus Photo 785 escp2-785 Epson Stylus Photo 790 escp2-790 Epson Stylus Photo 810 escp2-810 Epson Stylus Photo 820 escp2-820 Epson Stylus Photo 825 escp2-825 Epson Stylus Photo 830 escp2-830 Epson Stylus Photo 830U escp2-830u Epson Stylus Photo 870 escp2-870 Epson Stylus Photo 875 escp2-875 Epson Stylus Photo 890 escp2-890 Epson Stylus Photo 895 escp2-895 Epson Stylus Photo 900 escp2-ph900 Epson Stylus Photo 915 escp2-915 Epson Stylus Photo 925 escp2-925 Epson Stylus Photo 935 escp2-935 Epson Stylus Photo 950 escp2-950 Epson Stylus Photo 960 escp2-960 Epson Stylus Photo 1200 escp2-1200 Epson Stylus Photo 1270 escp2-1270 Epson Stylus Photo 1280 escp2-1280 Epson Stylus Photo 1290 escp2-1290 Epson Stylus Photo 2000P escp2-2000 Epson Stylus Photo 2100 escp2-2100 Epson Stylus Photo 2200 escp2-2200 Epson Stylus Photo R200 escp2-r200 Epson Stylus Photo R210 escp2-r210 Epson Stylus Photo R220 escp2-r220 Epson Stylus Photo R300 escp2-r300 Epson Stylus Photo R310 escp2-r310 Epson Stylus Photo R320 escp2-r320 Epson Stylus Photo R340 escp2-r340 Epson Stylus Photo RX400 escp2-rx400 Epson Stylus Photo RX420 escp2-rx420 Epson Stylus Photo RX425 escp2-rx425 Epson Stylus Photo RX430 escp2-rx430 Epson Stylus Photo RX500 escp2-rx500 Epson Stylus Photo RX510 escp2-rx510 Epson Stylus Photo RX600 escp2-rx600 Epson Stylus Photo RX620 escp2-rx620 Epson Stylus Photo RX630 escp2-rx630 Epson Stylus Photo RX700 escp2-rx700 Epson Stylus Photo R800 escp2-r800 Epson Stylus Photo R1800 escp2-r1800 Epson Stylus Photo R2400 escp2-r2400 Epson Stylus Pro 5000 escp2-5000 Epson Stylus Pro 5500 escp2-5500 Epson Stylus Pro 7000 escp2-7000 Epson Stylus Pro 7500 escp2-7500 Epson Stylus Pro 7600 escp2-7600 Epson Stylus Pro 9000 escp2-9000 Epson Stylus Pro 9500 escp2-9500 Epson Stylus Pro 9600 escp2-9600 Epson Stylus Pro 10000 escp2-10000 Epson Stylus Scan 2000 escp2-scan2000 Epson Stylus Scan 2500 escp2-scan2500 Epson Stylus CX1500 escp2-cx1500 Epson Stylus CX3100 escp2-cx3100 Epson Stylus CX3200 escp2-cx3200 Epson Stylus CX3500 escp2-cx3500 Epson Stylus CX3600 escp2-cx3600 Epson Stylus CX3650 escp2-cx3650 Epson Stylus CX3700 escp2-cx3700 Epson Stylus CX3800 escp2-cx3800 Epson Stylus CX3805 escp2-cx3805 Epson Stylus CX3810 escp2-cx3810 Epson Stylus CX4100 escp2-cx4100 Epson Stylus CX4200 escp2-cx4200 Epson Stylus CX4500 escp2-cx4500 Epson Stylus CX4600 escp2-cx4600 Epson Stylus CX4700 escp2-cx4700 Epson Stylus CX4800 escp2-cx4800 Epson Stylus CX5100 escp2-cx5100 Epson Stylus CX5200 escp2-cx5200 Epson Stylus CX5300 escp2-cx5300 Epson Stylus CX5400 escp2-cx5400 Epson Stylus CX5700 escp2-cx5700 Epson Stylus CX5800 escp2-cx5800 Epson Stylus CX6300 escp2-cx6300 Epson Stylus CX6400 escp2-cx6400 Epson Stylus CX6500 escp2-cx6500 Epson Stylus CX6600 escp2-cx6600 Epson Stylus CX7700 escp2-cx7700 Epson Stylus CX7800 escp2-cx7800 Epson Stylus CX8300 escp2-cx8300 Epson Stylus CX8400 escp2-cx8400 Epson Stylus D68 escp2-d68 Epson Stylus D88 escp2-d88 Epson Stylus DX3800 escp2-dx3800 Epson Stylus DX3850 escp2-dx3850 Epson Stylus DX4200 escp2-dx4200 Epson Stylus DX4250 escp2-dx4250 Epson Stylus DX4800 escp2-dx4800 Epson PictureMate escp2-picmate Epson PictureMate Deluxe escp2-picmated Epson CL 700 escp2-cl700 Epson CL 750 escp2-cl750 Epson CL 760 escp2-cl760 Experimental Epson E 100 escp2-e100 Epson E 150 escp2-e150 Epson E 200 escp2-e200 Epson EM 900C escp2-em900c Epson EM 930C escp2-em930c Epson MC 2000 escp2-mc2000 Epson MC 5000 escp2-mc5000 Epson MC 7000 escp2-mc7000 Epson MC 9000 escp2-mc9000 Epson MC 10000 escp2-mc10000 Epson MJ 930C escp2-mj930c Epson MJ 5100C escp2-mj5100c Epson MJ 6000C escp2-mj6000c Epson MJ 8000C escp2-mj8000c Epson PM 700C escp2-pm700c Epson PM 730C escp2-pm730c Epson PM 740C escp2-pm740c Experimental Epson PM 750C escp2-pm750c Epson PM 760C escp2-pm760c Epson PM 770C escp2-pm770c Epson PM 780C escp2-pm780c Epson PM 790PT escp2-pm790pt Epson PM 800C escp2-pm800c Epson PM 850PT escp2-pm850pt Epson PM 870C escp2-pm870c Experimental Epson PM 880C escp2-pm880c Epson PM 930C escp2-pm930c Experimental Epson PM 940C escp2-pm940c Experimental Epson PM 950C escp2-pm950c Epson PM 970C escp2-pm970c Experimental Epson PM 980C escp2-pm980c Experimental Epson PM 2000C escp2-pm2000c Epson PM 2200C escp2-pm2200c Epson PM 3000C escp2-pm3000c Epson PM 3300C escp2-pm3300c Epson PM 3500C escp2-pm3500c Epson PM 3700C escp2-pm3700c Experimental Epson PM 4000PX escp2-pm4000px Epson PM 5000C escp2-pm5000c Epson PM 7000C escp2-pm7000c Epson PM 9000C escp2-pm9000c Epson PM 10000 escp2-pm10000 Epson PM A650 escp2-pma650 Experimental Epson PM A750 escp2-pma750 Experimental Epson PM A890 escp2-pma890 Experimental Epson PM A900 escp2-pma900 Epson PM A950 escp2-pma950 Epson PM D600 escp2-pmd600 Experimental Epson PM D750 escp2-pmd750 Epson PM D770 escp2-pmd770 Epson PM D800 escp2-pmd800 Experimental Epson PM D1000 escp2-pmd1000 Epson PM G700 escp2-pmg700 Epson PM G720 escp2-pmg720 Epson PM G730 escp2-pmg730 Epson PM G800 escp2-pmg800 Experimental Epson PM G820 escp2-pmg820 Experimental Epson PX A650 escp2-pxa650 Epson PX G900 escp2-pxg900 Epson PX G920 escp2-pxg920 Epson PX G5000 escp2-pxg5000 Epson PX V500 escp2-pxv500 Epson PX V600 escp2-pxv600 Epson PX V630 escp2-pxv630 Epson PX 5500 escp2-px5500 Epson PX 7000 escp2-px7000 Epson PX 9000 escp2-px9000 Fujifilm Printpix-CX-400 fujifilm-cx400 Fujifilm Printpix-CX-550 fujifilm-cx550 Fujitsu PrintPartner 10V fujitsu-pp_10v Fujitsu PrintPartner 16DV fujitsu-pp_16dv Fujitsu PrintPartner 20W fujitsu-pp_20w Fujitsu PrintPartner 8000 fujitsu-pp_8000 Generic PCL 4 Printer pcl-g_4 Generic PCL 5 Printer pcl-g_5 Generic PCL 5c Printer pcl-g_5c Generic PCL 5e Printer pcl-g_5e Generic PCL 6/PCL XL Printer pcl-g_6 HP Business Inkjet 2200 hp-bij_2200 HP Business Inkjet 2230 hp-bij_2230 HP Business Inkjet 2250 hp-bij_2250 HP Business Inkjet 2250TN hp-bij_2250tn HP Business Inkjet 2280 hp-bij_2280 HP Color Inkjet Printer CP1160 hp-cij_cp1160 HP Color Inkjet Printer CP1700 hp-cij_cp1700 HP Color LaserJet 2500 hp-clj_2500 HP Color LaserJet 4500 hp-clj_4500 HP Color LaserJet 4550 hp-clj_4550 HP Color LaserJet 4600 hp-clj_4600 HP Color LaserJet 5 hp-clj_5 HP Color LaserJet 5000 hp-clj_5000 HP Color LaserJet 5500 hp-clj_5500 HP Color LaserJet 8550GN hp-clj_8550gn HP DesignJet 230 pcl-desnj-230 HP DesignJet 250C pcl-desnj-250 HP DesignJet 430 pcl-desnj-430 HP DesignJet 450C pcl-desnj-450 HP DesignJet 455CA pcl-desnj-455 HP DesignJet 488CA pcl-desnj-488 HP DesignJet 700 pcl-desnj-700 HP DesignJet 750C Plus hp-desnj_750c_plus HP DesignJet 750C pcl-750 HP DesignJet 2500CP pcl-desnj-2500 HP DesignJet 3500CP pcl-desnj-3500 HP DesignJet ColorPro CAD hp-desnj_cp_cad HP DeskJet 400 pcl-400 HP DeskJet 420C hp-dj_420c HP DeskJet 450 hp-dj_450 HP DeskJet 500 pcl-500 HP DeskJet 500C pcl-501 HP DeskJet 505J Plus hp-dj_505j_plus HP DeskJet 510 hp-dj_510 HP DeskJet 520 pcl-520 HP DeskJet 540C pcl-540 HP DeskJet 550C pcl-550 HP DeskJet 5550 hp-dj_5550 HP DeskJet 5551 hp-dj_5551 HP DeskJet 560C pcl-560 HP DeskJet 600 pcl-600 HP DeskJet 600C pcl-601 HP DeskJet 610C hp-dj_610c HP DeskJet 610CL hp-dj_610cl HP DeskJet 6122 hp-dj_6122 HP DeskJet 6127 hp-dj_6127 HP DeskJet 612C hp-dj_612c HP DeskJet 640C hp-dj_640c HP DeskJet 648C hp-dj_648c HP DeskJet 660C hp-dj_660c HP DeskJet 670C hp-dj_670c HP DeskJet 670TV hp-dj_670tv HP DeskJet 672C hp-dj_672c HP DeskJet 680C hp-dj_680c HP DeskJet 682C hp-dj_682c HP DeskJet 690C pcl-690 HP DeskJet 692C hp-dj_692c HP DeskJet 693C hp-dj_693c HP DeskJet 694C hp-dj_694c HP DeskJet 695C hp-dj_695c HP DeskJet 697C hp-dj_697c HP DeskJet 810C pcl-810 HP DeskJet 812C pcl-812 HP DeskJet 815C hp-dj_815c HP DeskJet 816C hp-dj_816c HP DeskJet 825C hp-dj_825c HP DeskJet 830C hp-dj_830c HP DeskJet 832C hp-dj_832c HP DeskJet 840C pcl-840 HP DeskJet 841C hp-dj_841c HP DeskJet 842C pcl-842 HP DeskJet 843C hp-dj_843c HP DeskJet 845C pcl-845 HP DeskJet 850C pcl-850 HP DeskJet 855C pcl-855 HP DeskJet 870C pcl-870 HP DeskJet 880C hp-dj_880c HP DeskJet 882C hp-dj_882c HP DeskJet 890C pcl-890 HP DeskJet 895C pcl-895 HP DeskJet 916C pcl-900 HP DeskJet 920C hp-dj_920c HP DeskJet 9300 hp-dj_9300 HP DeskJet 930C hp-dj_930c HP DeskJet 932C hp-dj_932c HP DeskJet 933C hp-dj_933c HP DeskJet 934C hp-dj_934c HP DeskJet 935C hp-dj_935c HP DeskJet 940C hp-dj_940c HP DeskJet 948C hp-dj_948c HP DeskJet 950C hp-dj_950c HP DeskJet 952C hp-dj_952c HP DeskJet 955C hp-dj_955c HP DeskJet 957C hp-dj_957c HP DeskJet 959C hp-dj_959c HP DeskJet 960C hp-dj_960c HP DeskJet 970C hp-dj_970c HP DeskJet 975C hp-dj_975c HP DeskJet 980C hp-dj_980c HP DeskJet 990C hp-dj_990c HP DeskJet 995C hp-dj_995c HP DeskJet 1100C pcl-1100 HP DeskJet 1120C pcl-1120 HP DeskJet 1125C hp-dj_1125c HP DeskJet 1200C pcl-1200 HP DeskJet 1220C pcl-1220 HP DeskJet 1600C pcl-1600 HP DeskJet 1600CM hp-dj_1600cm HP DeskJet 2000 pcl-2000 HP DeskJet 2500 pcl-2500 HP DeskJet 2500CM hp-2500cm HP DeskJet 340C pcl-340 HP DeskJet 3810 hp-dj_3810 HP DeskJet 3816 hp-dj_3816 HP DeskJet 3820 hp-dj_3820 HP DeskJet 3822 hp-dj_3822 HP LaserJet 2 pcl-2 HP LaserJet 2D hp-lj_2d HP LaserJet 2P Plus hp-lj_2p_plus HP LaserJet 2P pcl-2p HP LaserJet 3 pcl-3 HP LaserJet 3D hp-lj_3d HP LaserJet 3P w/ PCL5 hp-lj_3p_w_pcl5 HP LaserJet 3P w/PS hp-lj_3p_w_ps HP LaserJet 4 Plus hp-lj_4_plus HP LaserJet 4 pcl-4 HP LaserJet 4L pcl-4l HP LaserJet 4M hp-lj_4m HP LaserJet 4ML hp-lj_4ml HP LaserJet 4P hp-lj_4p HP LaserJet 4Si pcl-4si HP LaserJet 4V pcl-4v HP LaserJet 5 pcl-5 HP LaserJet 5L hp-lj_5l HP LaserJet 5M hp-lj_5m HP LaserJet 5MP hp-lj_5mp HP LaserJet 5P hp-lj_5p HP LaserJet 5Si pcl-5si HP LaserJet 6 pcl-6 HP LaserJet 6L hp-lj_6l HP LaserJet 6MP hp-lj_6mp HP LaserJet 6P hp-lj_6p HP LaserJet 1010 hp-lj_1010 HP LaserJet 1012 hp-lj_1012 HP LaserJet 1015 hp-lj_1015 HP LaserJet 1100 hp-lj_1100 HP LaserJet 1100A hp-lj_1100a HP LaserJet 1150 hp-lj_1150 HP LaserJet 1200 hp-lj_1200 HP LaserJet 1220 hp-lj_1220 HP LaserJet 1300 hp-lj_1300 HP LaserJet 2100 hp-lj_2100 HP LaserJet 2100M hp-lj_2100m HP LaserJet 2200 hp-lj_2200 HP LaserJet 2300 hp-lj_2300 HP LaserJet 3200 hp-lj_3200 HP LaserJet 3200m hp-lj_3200m HP LaserJet 3200se hp-lj_3200se HP LaserJet 3300 MFP hp-lj_3300_mfp HP LaserJet 3310 MFP hp-lj_3310_mfp HP LaserJet 3320 MFP hp-lj_3320_mfp HP LaserJet 3320N MFP hp-lj_3320n_mfp HP LaserJet 3330 MFP hp-lj_3330_mfp HP LaserJet 4000 hp-lj_4000 HP LaserJet 4050 hp-lj_4050 HP LaserJet 4100 hp-lj_4100 HP LaserJet 4200 hp-lj_4200 HP LaserJet 4300 hp-lj_4300 HP LaserJet 5000 hp-lj_5000 HP LaserJet 5100 hp-lj_5100 HP LaserJet 8000 hp-lj_8000 HP LaserJet 8100 hp-lj_8100 HP LaserJet 8150 hp-lj_8150 HP LaserJet 9000 hp-lj_9000 HP Mopier 240 hp-mopier_240 HP Mopier 320 hp-mopier_320 HP OfficeJet 300 hp-oj_300 HP OfficeJet 330 hp-oj_330 HP OfficeJet 350 hp-oj_350 HP OfficeJet 500 hp-oj_500 HP OfficeJet 520 hp-oj_520 HP OfficeJet 570 hp-oj_570 HP OfficeJet 580 hp-oj_580 HP OfficeJet 590 hp-oj_590 HP OfficeJet 600 hp-oj_600 HP OfficeJet 610 hp-oj_610 HP OfficeJet 625 hp-oj_625 HP OfficeJet 630 hp-oj_630 HP OfficeJet 635 hp-oj_635 HP OfficeJet 700 hp-oj_700 HP OfficeJet 710 hp-oj_710 HP OfficeJet 720 hp-oj_720 HP OfficeJet 725 hp-oj_725 HP OfficeJet 5105 hp-oj_5105 HP OfficeJet 5110 hp-oj_5110 HP OfficeJet 5110xi hp-oj_5110xi HP OfficeJet 6105 hp-oj_6105 HP OfficeJet 6110 hp-oj_6110 HP OfficeJet 7110 hp-oj_7110 HP OfficeJet 7130 hp-oj_7130 HP OfficeJet 7140 hp-oj_7140 HP OfficeJet D125 hp-oj_d125 HP OfficeJet D135 hp-oj_d135 HP OfficeJet D145 hp-oj_d145 HP OfficeJet D155 hp-oj_d155 HP OfficeJet G55 hp-oj_g55 HP OfficeJet G85 hp-oj_g85 HP OfficeJet G95 hp-oj_g95 HP OfficeJet K60 hp-oj_k60 HP OfficeJet K60xi hp-oj_k60xi HP OfficeJet K80 hp-oj_k80 HP OfficeJet K80xi hp-oj_k80xi HP OfficeJet LX hp-oj_lx HP OfficeJet Pro 1150C hp-oj_pro_1150c HP OfficeJet Pro 1170C hp-oj_pro_1170c HP OfficeJet Pro 1175C hp-oj_pro_1175c HP OfficeJet R40 hp-oj_r40 HP OfficeJet R45 hp-oj_r45 HP OfficeJet R60 hp-oj_r60 HP OfficeJet R65 hp-oj_r65 HP OfficeJet R80 hp-oj_r80 HP OfficeJet T45 hp-oj_t45 HP OfficeJet T65 hp-oj_t65 HP OfficeJet V40 hp-oj_v40 HP OfficeJet V40xi hp-oj_v40xi HP OfficeJet hp-oj HP PSC 370 hp-psc_370 HP PSC 380 hp-psc_380 HP PSC 500 hp-psc_500 HP PSC 750 hp-psc_750 HP PSC 950 hp-psc_950 HP PSC 950xi hp-psc_950xi HP PSC 2110 hp-psc_2110 HP PSC 2150 hp-psc_2150 HP PSC 2210 hp-psc_2210 HP PhotoSmart 7150 hp-psc_7150 HP PhotoSmart 7345 hp-psc_7345 HP PhotoSmart 7350 hp-psc_7350 HP PhotoSmart 7550 hp-psc_7550 HP PhotoSmart P100 hp-psc_p100 HP PhotoSmart P130 hp-psc_p130 HP PhotoSmart P230 hp-psc_p230 HP PhotoSmart P1000 pcl-P1000 HP PhotoSmart P1100 pcl-P1100 HP PhotoSmart P1115 hp-psc_p1115 HP PhotoSmart P1215 hp-psc_p1215 HP PhotoSmart P1218 hp-psc_p1218 HP PhotoSmart P1315 hp-psc_p1315 HP e-printer e20 hp-e-printer_e20 IBM 4019 ibm-4019 IBM 4029 030 LaserPrinter 10 ibm-4029_030_lp_10 IBM 4312 ibm-4312 IBM Infoprint 12 ibm-infoprint_12 IBM Page Printer 3112 ibm-pp_3112 Infotec 4651 MF infotec-4651_mf Kyocera F-1010 kyocera-f-1010 Kyocera FS-600 (KPDL-2) kyocera-fs-600_kpdl-2 Kyocera FS-600 kyocera-fs-600 Kyocera FS-680 kyocera-fs-680 Kyocera FS-800 kyocera-fs-800 Kyocera FS-1000 kyocera-fs-1000 Kyocera FS-1000+ kyocera-fs-1000plus Kyocera FS-1010 kyocera-fs-1010 Kyocera FS-1050 kyocera-fs-1050 Kyocera FS-1200 kyocera-fs-1200 Kyocera FS-1600 kyocera-fs-1600 Kyocera FS-1600+ kyocera-fs-1600plus Kyocera FS-1700 kyocera-fs-1700 Kyocera FS-1700+ kyocera-fs-1700plus Kyocera FS-1750 kyocera-fs-1750 Kyocera FS-1800 kyocera-fs-1800 Kyocera FS-1800+ kyocera-fs-1800plus Kyocera FS-1900 kyocera-fs-1900 Kyocera FS-3500 kyocera-fs-3500 Kyocera FS-3600 kyocera-fs-3600 Kyocera FS-3600+ kyocera-fs-3600plus Kyocera FS-3700 kyocera-fs-3700 Kyocera FS-3700+ kyocera-fs-3700plus Kyocera FS-3750 kyocera-fs-3750 Kyocera FS-3800 kyocera-fs-3800 Kyocera FS-5800C kyocera-fs-5800c Kyocera FS-5900C kyocera-fs-5900c Kyocera FS-6500 kyocera-fs-6500 Kyocera FS-6500+ kyocera-fs-6500plus Kyocera FS-6700 kyocera-fs-6700 Kyocera FS-7000 kyocera-fs-7000 Kyocera FS-7000+ kyocera-fs-7000plus Kyocera FS-8000C kyocera-fs-8000c Kyocera FS-9000 kyocera-fs-9000 Kyocera FS-9100DN kyocera-fs-9100dn Kyocera FS-9500DN kyocera-fs-9500dn Kyocera KM-1530 kyocera-km-1530 Kyocera KM-1810 kyocera-km-1810 Kyocera KM-2030 kyocera-km-2030 Kyocera KM-2530 kyocera-km-2530 Kyocera KM-3530 kyocera-km-3530 Kyocera KM-4230 kyocera-km-4230 Kyocera KM-4530 kyocera-km-4530 Kyocera KM-5230 kyocera-km-5230 Kyocera KM-5530 kyocera-km-5530 Kyocera KM-6230 kyocera-km-6230 Lexmark 4076 lexmark-4076 Lexmark Optra E lexmark-optra_e Lexmark Optra E+ lexmark-optra_eplus Lexmark Valuewriter 300 lexmark-vw_300 Lexmark Z42 lexmark-z42 Lexmark Z43 lexmark-z43 Lexmark Z52 lexmark-z52 Lexmark Z53 lexmark-z53 Minolta PagePro 1100 minolta-pp_1100 Minolta PagePro 6 minolta-pp_6 Minolta PagePro 6e minolta-pp_6e Minolta PagePro 6ex minolta-pp_6ex Minolta PagePro 8 minolta-pp_8 Minolta PagePro 8L minolta-pp_8l NEC SuperScript 1260 nec-ssc_1260 NEC SuperScript 1400 nec-ssc_1400 NEC SuperScript 1800 nec-ssc_1800 NEC SuperScript 660i nec-ssc_660i NEC SuperScript 860 nec-ssc_860 NEC SuperScript 870 nec-ssc_870 Okidata OL400 okidata-ol400 Okidata OL400e okidata-ol400e Okidata OL400ex okidata-ol400ex Okidata OL410e okidata-ol410e Okidata OL600e okidata-ol600e Okidata OL610e/S okidata-ol610e_s Okidata OL800 okidata-ol800 Okidata OL810ex okidata-ol810ex Okidata Okipage 6e okidata-okp_6e Okidata Okipage 6ex okidata-okp_6ex Okidata Okipage 8p okidata-okp_8p Okidata Okipage 10e okidata-okp_10e Okidata Okipage 10ex okidata-okp_10ex Okidata Okipage 14ex okidata-okp_14ex Okidata Super 6e okidata-super_6e Olivetti JP350S olivetti-jp350s Olivetti PG 306 olivetti-pg_306 Olympus P-10 olympus-p10 Olympus P-11 olympus-p11 Olympus P-200 olympus-p200 Olympus P-300 olympus-p300 Olympus P-300E olympus-p300e Olympus P-300U olympus-p300u Olympus P-330E olympus-p330e Olympus P-330NE olympus-p330ne Olympus P-400 olympus-p400 Olympus P-440 olympus-p440 PCPI 1030 pcpi-1030 Panasonic KX-P4410 panasonic-kx-p4410 Panasonic KX-P4450 panasonic-kx-p4450 Panasonic KX-P6150 panasonic-kx-p6150 Panasonic KX-P6500 panasonic-kx-p6500 Raven LP-410 raven-lp-410 Ricoh Aficio 220 ricoh-afc_220 Ricoh Aficio 401 ricoh-afc_401 Ricoh Aficio 700 ricoh-afc_700 Samsung ML-85 samsung-ml-85 Samsung ML-4600 samsung-ml-4600 Samsung ML-5000a samsung-ml-5000a Samsung ML-6000 samsung-ml-6000 Samsung ML-6100 samsung-ml-6100 Samsung ML-7000 samsung-ml-7000 Samsung ML-7000N samsung-ml-7000n Samsung ML-7000P samsung-ml-7000p Samsung ML-7050 samsung-ml-7050 Samsung QL-5100A samsung-ql-5100a Samsung QL-6050 samsung-ql-6050 Seiko SpeedJET 200 seiko-sj_200 Sharp AR-161 sharp-ar-161 Sony IJP-V100 sony-ijp-v100 Sony UP-DP10 sony-updp10 Experimental Sony UP-DR150 sony-updr150 Experimental Star LS-04 star-ls-04 Star LaserPrinter 8 star-lp_8 Tally MT908 tally-mt908 Xerox Able 1406 xerox-able_1406 Xerox DocuPrint 4508 xerox-dp_4508 Xerox DocuPrint C20 xerox-dp_c20 Xerox DocuPrint N4512 xerox-dp_n4512 Xerox DocuPrint N4512PS xerox-dp_n4512ps Xerox DocuPrint P12 xerox-dp_p12 Xerox DocuPrint P1202 xerox-dp_p1202 Xerox DocuPrint P8e xerox-dp_p8e Xerox Document Centre 400 xerox-dc_400 ---------------- B) PRINTER-SPECIFIC NOTES: 1) It is strongly recommended that four color mode not be used on the Epson Stylus C63, C64, C65, C66, C70, C80, and CX-5200, and the PX-V500 and PX-V600 when printing to glossy papers, as the black ink is formulated differently from the color ink and does not adhere properly to these papers. Epson Photo Paper, Premium Glossy Photo Paper, Premium Luster Photo Paper, and Premium Semigloss Photo Paper are known to be affected. If you use the default settings (specifically, the Standard ink type), this will be handled automatically. 2) The Gutenprint driver does not in all cases offer the same set of resolutions offered by the printer manufacturer's drivers. There are a variety of reasons why that is the case: i) In some cases, we have not determined the necessary commands to utilize some resolutions (particularly very high resolutions). ii) In some cases, the advertised printer resolution may not match what we determine to be the maximum resolution based on our understanding of the printer's capabilities. Sometimes the advertised resolution is qualified by a statement that implies that the actual resolution may be different from the stated resolution. In some cases, we may be able to achieve the same number of drops per square inch by means of a different resolution. For example, we may determine that a printer that is advertised to support 5760x720 DPI in fact supports 2880x1440 DPI. This is the same number of droplets per square inch (4147200), but with a different aspect ratio (the ratio of the horizontal resolution to the vertical resolution). iii) In some cases, we offer additional resolutions not offered by the printer vendor. These resolutions may be either lower or higher than those offered by the printer vendor. We frequently offer lower resolutions than those offered by the printer vendor to offer a greater choice of printing speed. These resolutions will offer low quality but very fast printing speed for use where the quality is unimportant but speed is of the greatest importance. In some cases, we offer resolutions higher (or simply different) than those advertised by printer vendors. We will offer these options if testing determines that these resolutions can be used safely and we determine that these resolutions offer a potential benefit in quality in some cases. It is almost always better to have a printing resolution with a smaller aspect ratio (i. e. the horizontal and vertical resolutions are similar). For example, a resolution of 2880x1440 DPI is likely to yield superior results to a resolution of 5760x720 DPI. Therefore, in some cases we do not offer certain resolutions offered by the printer vendor (in the case of the Epson Stylus Photo R800, 5760x1440 DPI) because they are not likely to yield any benefit (either speed or quality) over another resolution that we offer (in this case, 2880x1440 DPI Highest Quality). Indeed, we have received reports that in some cases a lower resolution may actually offer improved quality over a higher resolution. For example, the Epson Stylus Photo 780 is reported to yield better quality at 1440x720 DPI Highest Quality than 2880x720 DPI. We periodically evaluate the list of resolutions we offer to decide whether to offer any additional options. 3) Many Epson printers (specifically, the Epson Stylus Color 740 and all newer printers) will not respond to ASCII text without a special "activation" sequence (specifically, this command takes the printers out of "packet mode"). A brand new printer, or one that has been connected to a Windows system, may or may not work in packet mode. Therefore, the common suggestion to test a printer port by sending plain text to it may not work for these printers; failure to print in this fashion is not a positive indication that the printer or the connection is malfunctioning. These printers are, however, able to print plain text *after* the activation sequence is sent. A suggestion would be to first verify that the printer is capable of returning ink levels. This may be done via escputil -i -r /dev/lp0 (or whatever device your printer is connected to in place of /dev/lp0). If this returns status, it demonstrates that the link between your computer and printer is working. ================================================================ VI) LIST OF SUPPORTED OPTIONS This section details the options available in this release of Gutenprint 5.0. More advanced options are subject to change between releases, and existing options may acquire additional choices as new capabilities are added. These options are not supported by all printers; depending upon the functionality of the driver and printer, different capabilities are available for different printers. ---------------- A) BASIC PRINTER OPTIONS These options control basic printer functions. Printer Model Select the printer to use. It must always be supplied. When using CUPS or Foomatic, the printer will automatically be selected via the chosen PPD file; with the Print plugin for the GIMP, it is selected in the Setup Printer dialog. Page Size Select the paper (media) size to print to. Some printers support custom paper sizes, while others only support certain preset sizes. This must always be supplied. Note that this option refers to the actual size of the media, not the printable area. For example, selecting A4 refers to actual A4 paper, whatever the margins may be. Double-Sided Printing Otherwise known as "duplex" printing, this is offered for printers capable of printing on both sides of the page. In addition to single-sided printing, there are two modes of duplex operation: the page may be flipped over its long edge (like a book), or over the short edge (like a note pad; this is sometimes referred to as Tumble). This option is new to Gutenprint 5.0. Media Type Select the kind of paper or other media being printed to. This enables the printer and driver to be set up appropriately for the kind of paper in use. Most printers offer a choice of supported media types. It is important to set the Media Type to the correct value if possible, or if not to a closely related medium. The printer may need to know what kind of media is in use to determine how to feed the paper correctly; the driver needs to know in order to select the right output settings. Media Source Select the source of the paper or other media. This option is offered with printers that have multiple feeds, for example multiple paper bins, manual feed, printing directly to a CD, etc. Ink Set Select the kind of ink in use in the printer, for printers offering different optional inks (for example, ink designed for matte paper vs. ink designed for glossy paper). This option is new to Gutenprint 5.0. Borderless Select whether to print with borders or not, for printers with the capability to print to the edge of the page. This is otherwise known as "full bleed". This option is new to Gutenprint 5.0. Resolution Select the resolution to print at (dots per inch). In general, higher resolutions produce better quality, at the expense of additional time. As a general rule of thumb, on laser printers and older inkjet printers resolutions of 300 DPI or thereabouts provide draft quality; lower resolutions provide economy draft quality and cannot produce solid black. Resolutions of 600 or 720 DPI produce good quality output; higher resolutions are useful for very high quality image or graphic output. Newer inkjet printers, with smaller ink drop sizes, typically require higher resolutions to produce acceptable output; in some cases even 1440x720 DPI does not produce good quality. Users of Epson inkjet printers have another setting available: the Quality option can be used to indirectly control the printer resolution, among other things. This offers a simpler way to control output quality. ---------------- B) ADVANCED PRINTER OPTIONS These options control less frequently used printer options. All of these options are new to Gutenprint 5.0. CD Hub Size This setting may be used on printers with the capability to print directly to a CD. Depending upon your choice of media, you may be able to safely print all the way to the inner hole of the CD, or you may not be able to print any closer than the hub about an inch from the center. CD Horizontal Fine Adjustment CD Vertical Fine Adjustment These settings allow you to shift the position of the print while printing to a CD. If you find that your print is not centered on the CD surface, you may need to adjust these setting to compensate. Enhanced Gloss Some newer printers have a cartridge of "gloss enhancer", which helps solve the problem of pigment inks having an inconsistent lustre on glossy paper. Use this option to enable use of the gloss enhancer. Laminate Pattern Some dye sublimation printers are able achieve better durability of output by covering it with transparent laminate surface. This surface can be of different patterns: common are matte, glossy or texture. ---------------- C) SPECIALIZED PRINTER OPTIONS These options control unusual printer features. They may be useful in certain circumstances; generally the default settings will work optimally. Ink Type Select which subset of inks to use for printing. For example, on a photo printer with additional light cyan and light magenta inks, it's possible to print with only the standard cyan, magenta, yellow, and black inks. Normally there is no reason to use any setting other than the default. Reasons why one might want to use it include: 1) Some black inks are not compatible with certain glossy papers. If the black ink smudges on your paper, you may elect to use an option without black ink (a "composite" setting). 2) Some inks or paper/ink combinations produce color shifts when the light inks are used. If your chosen combination produces unacceptable color shifts or color casts, you may prefer to use the Four Color Standard option, which will generally yield more consistent color at the expense of "grainier" output. Printing Direction Most inkjet printers can print either unidirectionally (the head prints only when moving in one direction) or bidirectionally (the head prints when moving in both directions). Bidirectional printing is generally faster, since the printer is printing at all times rather than wasting much of the time returning the head to the starting position. On many printers, however, unidirectional printing produces better quality output than bidirectional printing. The standard setting for this option adapts to the printing resolution. This option is new to Gutenprint 5.0, but Gimp-Print 4.2 offered this option in the form of extra resolution choices. Interleave Method Most inkjet printers create the printed image using multiple overlapping passes of the print head. On many printers this function is performed within the printer itself and cannot be adjusted, but with many Epson inkjet printers (and some others), this is performed by the driver or may be specified to the printer. One advantage of the multiple overlapping passes is that it can hide small differences between the individual print head nozzles, which would otherwise be visible as banding. The different interleave methods are different strategies for for performing this overlapping; some are better at hiding the banding than others. They all require the same amount of time to print. Generally it is not necessary to adjust this; in some cases, depending upon your printer, you may find that one pattern or another performs better. On Epson Stylus Pro printers, this option allows specifying different overlap patterns within the printer. In this case, the choice of overlap pattern may affect both the printing time and the quality to a significant degree. This option is new to Gutenprint 5.0. Adjust dot size as necessary This option is provided on many Epson inkjet printers to allow you to use larger ink drops than those normally used for the resolution chosen. This may be necessary if you use certain kinds of media or for some reason wish to use much more ink (higher density) than the default. It should not be necessary to use this option. This option is new to Gutenprint 5.0. ---------------- D) BASIC OUTPUT CONTROLS Output Type This option specifies whether to print in color or black and white/grayscale (using only black inks). Black and white printing is generally faster than color printing, even if the item being printed is entirely black and white. However, printing with only black ink may yield a "grainy" appearance. This option was present in Gutenprint 4.2, but it offered an additional option of "black and white", which printed everything as either black or white (no grayscale). The Gutenprint 5.0 equivalent is to set Color Correction to Threshold. Color Correction This selects the choice of color correction method within Gutenprint. The following options are presently offered: * DEFAULT: Select a color correction mode appropriate for the document type being printed. * HIGH ACCURACY: Apply optimum color correction to the output to produce the best color quality. This corrects the hue, brightness, and saturation (brilliance of color). This is the normal setting to use for printing photographs or graphics if you are not using any external color management. * BRIGHT COLORS: Apply color correction to the output, but generate more brilliant colors in some cases. * CORRECT HUE ONLY: Apply color correction to the output, but correct only the hue. This option does not correct brightness and saturation. * UNCORRECTED: Do not apply any color correction to the output beyond generating linear output. This is the best setting to use when utilizing external color management; the high accuracy modes employ correction algorithms that may not work well with color management. Note that if you use color management you should use profiles created with Gutenprint and with the exact settings that you plan to print with. Profiles provided by the printer vendor are calibrated for the vendor's driver, which may not be identical to Gutenprint's calibration. In addition, profiles created using Gimp-Print 4.2 or earlier will generally not perform well with Gutenprint 5.0. * DESATURATED: Print in pure grayscale, but using color inks. The result is somewhat different from printing in black and white using the Output Type option -- the driver may use color ink, which generates smoother output and may yield better results on many papers. * THRESHOLD: Convert all colors to fully on or fully off, eliminating all gradual tonal gradations. The result is that the output will consist of all very pure colors. * DENSITY: Correct only the amount of ink ("density"), otherwise performing no correction at all, even for linearity. Prints made with this option will usually be very dark if no other color management is used. This may be useful if you are printing in 16 bit precision or are using your own linearization curves. * RAW: Perform no correction at all, even for density. Prints made with this option will be very dark and may bleed (or even puddle!) ink if not used with external color management and linearization. This option may be useful if you are using external color management and linearization to get extremely saturated dark colors by using more ink in individual channels. It should be used with extreme caution, as it is very easy to damage the printer if you are not careful. * PRE-DITHERED: Interpret each pixel as the actual size of each drop to be printed. Legal values of the drop sizes differ between printers; all printers support 0 (no droplet) and 1 (the largest droplet). Some printers support four levels (0, 1, 2, and 3). This option is new to Gutenprint 5.0, but its function was partially encompassed by the Image Type option. Image Type Specify the option that best describes your print job. Your choice here will affect the processing of the print job. Currently available settings are: * TEXT: Optimize the output for printing black text with no graphics. This option results in crisp output and is very fast, but will yield very poor results with any color or grayscale graphics. * GRAPHICS: Optimize the output for printing color graphics. This option will generate smooth, bright output. * MIXED TEXT AND GRAPHICS: Optimize the output for printing a mixture of text and graphics. * PHOTOGRAPH: Optimize the output for printing photographs. This option will generate smooth tones and high quality colors, but will be slower than the other options. * LINE ART: Optimize the output for printing black and white line art with intricate detail. * MANUAL CONTROL: Do not bias the output at all; use only the settings specified by the user. This option was present in Gimp-Print 4.2, but with fewer choices and more restrictions on their use. Its functioned more like the Color Correction option in Gutenprint 5.0. Print Quality Specify the desired output quality using convenient presets. Where this option is available, Gutenprint will automatically adjust the printing resolution and other options to generate the desired quality. Settings chosen with this option may be overridden by explicitly setting other settings, such as resolution. Not all printers offer all of these options. Currently available settings, in increasing order of quality, include: * FAST ECONOMY: Use the fastest printing mode available on the printer to print with a minimum amount of ink. This option will produce very washed out colors and grays, and will typically be extremely grainy and streaky. * ECONOMY: Print very rapidly with a reduced amount of ink. This option will produce washed out colors and grays and will typically be quite grainy and streaky. * DRAFT: Print low quality draft output quickly. This option will typically produce acceptable colors with some amount of grain on plain paper, but will typically produce washed out and grainy output on high quality papers. On some printers this may employ a special draft mode to print especially quickly at the expense of color fidelity. * STANDARD: Print at a normal quality level for text or text/graphics on plain paper or basic inkjet paper. This option will typically produce acceptable colors, but on high quality papers the output may be grainy or somewhat washed out. This option may also be useful for printing draft copies of photographs on coated inkjet paper. * HIGH: Print final copies of text or text/graphics on plain paper or inkjet paper. This option will typically produce good color quality, but the quality may not be optimal for photographs on glossy paper. This option may also be useful for printing draft copies of photographs on glossy paper. * PHOTO: Print photographs on glossy paper or very high quality text, text/graphics, or line art on high quality paper. In the latter application this will produce output close to laser printer quality. On the highest quality premium papers the result may still be a bit grainy. * SUPER PHOTO: Print photographs on glossy paper with very high quality. This will generally yield very good results on high quality premium paper but may be overkill on other papers. This option is only offered on printers capable of producing very high quality output rivaling traditional photographic printing. This option may also be appropriate for very intricate line art, where the required resolution may exceed the capabilities of laser printers. * ULTRA PHOTO: Print photographs on premium papers with extremely high quality. This option is only offered on printers capable of producing extremely high quality output matching or exceeding traditional photographic printing. * BEST: Print with the best quality available on the printer for the application chosen. This may be equivalent to one of the other settings; on a very few printers the resolution may exceed that of Ultra Photo mode. * MANUAL CONTROL: Do not adjust the settings at all; use only the settings specified by the user. This option is new to Gutenprint 5.0. ---------------- E) BASIC OUTPUT ADJUSTMENTS Saturation This option controls the vividness of the output color; higher values produce more vivid colors. Very low values produce muted colors; setting this to zero produces gray. Contrast This controls the contrast of the output. Lower values produce less tonal range in the midtones (lighter colors become darker, and darker colors become lighter), which may allow for more definition in the highlights and shadows. Higher values do the opposite: lighter colors become even lighter, while darker colors become even darker. This option behaves differently from its equivalent in Gimp-Print 4.2. In Gimp-Print 4.2, setting contrast less than 1 changed the white point and black point: white became light gray and black became dark gray. In Gutenprint 5.0 this control changes the shape of the curve, but the black and white points remain the same. The Linear Contrast Adjustment option described below restores the Gimp-Print 4.2 behavior. Brightness This control adjusts the general brightness of the print; higher values produce generally lighter output, while lower values produce generally darker output. White and black are not changed; colors also retain their hue and saturation. This option behaves differently from its equivalent in Gimp-Print 4.2. In Gimp-Print 4.2, setting brightness greater than 1 caused black to print as gray, while setting brightness to less than 1 caused white to print as gray. In Gutenprint 5.0 this control changes the shape of the curve, but the black and white points remain the same. ---------------- F) ADVANCED OUTPUT ADJUSTMENTS These controls adjust more specialized settings. Dither Algorithm Since inkjet printers have a limited set of ink colors (normally cyan, magenta, yellow, and black), most colors have to be produced by mixing the available inks. This is done by printing patterns of very small dots, fooling the eye into seeing many different shades. This process is called "dithering"; several different patterns are available, with trade-offs between speed and quality. The following dither algorithms are currently available. If no algorithm is selected, the driver chooses an appropriate one based on other option settings. The following algorithms are currently available, generally in increasing order of quality. * VERY FAST: This algorithm produces very rough, patterned output, but is extremely fast. This generally yields poor results on modern inkjet printers, particularly models that offer multiple drop sizes, but it can yield very good results on laser printers. It is a good choice for printing text or line art where no grayscale or color is used, and also works very well when Threshold color correction is used. * FAST: This algorithm also produces output with very strong diagonal patterns, and is also quite fast. It produces somewhat better results on modern inkjet printers that offer multiple drop sizes, but offers no advantages on laser printers or old (generally pre-1999) inkjet printers. * ORDERED: This algorithm produces much smoother output than Fast or Very Fast. It is somewhat slower than those algorithms. It utilizes a fixed pattern that is generally free of artifacts, but it has some noise (roughness of texture) that may be objectionable with smooth-toned images. It is an excellent choice for printing draft copies of business graphics or photographs (charts, etc.) due to its lack of artifacts. * ADAPTIVE HYBRID: This algorithm produces slightly smoother output than Ordered dithering, at some cost in performance. It uses a fixed pattern in highlights to avoid artifacts, and error diffusion at higher densities to reduce noise. It is an excellent choice for printing business graphics due to its lack of artifacts and smooth texture in darker tones. * EVEN TONE: This relatively new algorithm yields excellent smoothness in all tones (light, midtone, and shadow), but is considerably slower than most of the other algorithms. It is somewhat prone to artifacts, including "tearing", at sharp boundaries. This algorithm is well-suited for printing photographs, but is not as suitable for printing solid-tone graphics. * HYBRID EVEN TONE: This algorithm combines Even Tone and Ordered dithering to yield smooth results with fewer artifacts than Even Tone dithering, but is even slower than standard Even Tone. It uses the fixed pattern of Ordered dithering to break up the artifacts of Even Tone dithering. The result is not quite as smooth as pure Even Tone, but the reduction of artifacts makes this an excellent choice for photographs or photographs mixed with other graphics. * PREDITHERED: This is used in combination with dithering performed outside of Gutenprint or with printers that perform their own dithering. It assumes that the output is already dithered and generates the appropriate drops based only on the values provided. Linear Contrast Adjustment The standard contrast control does not adjust the black and white points of the output; black in the input becomes black in the output, for example. The result is that if contrast is reduced below 1, the contrast in the highlights and shadows is actually increased to keep the same total tonal range. Gimp-Print 4.2 used a different kind of contrast control. In Gimp-Print 4.2, reducing the contrast reduced the contrast throughout the tonal range, resulting in white being printed as a light gray and black as a dark gray (reducing the contrast all the way to zero resulted in a uniform gray). If contrast was increased, the contrast was stretched until the output reached either black or white; anything lighter always printed as white and anything darker as black. Turning this control on selects the old Gimp-Print 4.2 behavior. This control is normally turned off. ---------------- G) OUTPUT DENSITY (INK QUANTITY) CONTROLS These controls adjust the amount of ink printed on the page. These controls may be used to darken a solid, pure black, or eliminate puddling (wet ink left on the paper that does not dry in the printer) if needed. They may also be useful for adjusting the behavior of non-standard inks. They should not be used to lighten or darken the print if the black level is correct. These controls are adjustments -- they adjust the amount of ink relative to the amount selected by the driver for the paper and resolution chosen. Density Value This control adjusts the total amount of ink used in all channels (ink colors). Black Density Value Blue Density Value Cyan Density Value Magenta Density Value Yellow Density Value Red Density Value These controls adjust the amount of ink used by each channel separately. They may be used to correct the amount of ink if needed to strengthen or weaken particular colors (e. g. if yellow is too strong or too weak). They should not be used to correct gray balance (to produce neutral gray) -- the gray balance controls described below should be used for that purpose. These options are new to Gutenprint 5.0. Ink Limit Value This control adjusts the maximum amount of ink that the driver will use to print with. This may be used if you want to use large amounts of particular inks to achieve saturated dark colors, without using excessive ink overall that will result in ink puddling or spilling within the printer. This control should be used only by people very experienced in inkjet printing. This option is new to Gutenprint 5.0. ---------------- H) GRAY BALANCE CONTROLS These controls adjust the gray balance by changing the amount of each color of ink used to produce gray. For example, if gray prints somewhat greenish, it can be corrected by increasing the magenta balance. These options are new to Gutenprint 5.0. Magenta Balance Value Yellow Balance Value Cyan Balance Value ---------------- I) OUTPUT GAMMA CONTROLS These controls permit adjusting the gamma (exponent) of the transfer curves of the individual channels. On most printers, using a linear ink scale (that is, the amount of ink is directly proportional to the input value) will produce very dark highlights, as even quite small amounts of ink produce very strong colors or gray. Therefore, the driver uses less ink to produce lighter colors. This does not affect the darkest tones. Setting these controls to larger values results in lighter highlights and midtones and increase contrast in the dark tones, while lower values result in darker midtones and highlights with reduced dark tone contrast. These controls are adjustments -- they adjust the gamma relative to the gamma chosen by the driver by multiplying them together. For example, if the driver uses a gamma value of 2.0 for a particular printer, and you specify a gamma of 0.75, the actual gamma used to print will be 1.5. Composite Gamma Value This control adjusts the gamma of all available ink channels when printing in color. This option is equivalent to the Gamma option in Gimp-Print 4.2. Black Gamma Value This control adjusts the gamma of the black channel when printing in grayscale. This option is new to Gutenprint 5.0. Cyan Gamma Value Magenta Gamma Value Yellow Gamma Value These controls adjust the gamma of individual channels when printing on printers that use cyan, magenta, and yellow inks (all inkjet printers use CMY inks). These gamma values are multiplied by the composite gamma value and the gamma chosen by the driver. Note that the black gamma value is not used when printing in color. That is because the amount of gray is computed after the gamma transformation has been applied to each channel, and the black channel is synthesized from this value. The GCR Transition Value serves as a gamma value for the black channel. In addition, there are no gamma values for the special channels for printers that offer additional inks (such as red and blue) for similar reasons. These controls are equivalent to the Cyan, Magenta, and Yellow controls in Gimp-Print 4.2. Red Gamma Value Green Gamma Value Blue Gamma Value These controls adjust the gamma of individual channels when printing on printers that use red, green, and blue inks (Postscript printers and many dye sublimation printers use red, green, and blue colors). These gamma values are multiplied by the composite gamma value and the gamma chosen by the driver. These options are new to Gutenprint 5.0; Gimp-Print 4.2 referred to them as Cyan, Magenta, and Yellow even if the output was RGB. ---------------- J) GRAY GENERATION CONTROLS These controls adjust the conversion of gray into black ink and composite (CMY) components. When printing in color, light grays are often printed using composite inks rather than black ink to reduce the speckling effect of dark black dots, while dark grays and black are usually printed using black ink to achieve a darker black. With some ink and paper combinations it is necessary to use a mixture of black and composite components to achieve maximum density and in some cases to achieve neutral grays (some pigment black inks are actually brown). The effect of using too much or too little black ink varies. Typically if too much black ink is used light colors and grays will have noticeable speckling from the black drops, while if too little black ink is used the midtones and dark tones will be washed out and in some cases too much ink will be used leading to puddles on the page. In some cases very large amounts of composite ink cause color shifts (darker grays are not neutral). Epson Premium Glossy Photo Paper seems to be particularly prone to this problem, particularly with dye inks. In general, lower-quality papers require more black ink (composite inks generally cannot create very dark tones), while higher quality papers require less black ink (the composite inks can create much darker grays, and the black dots appear much sharper). Setting these controls effectively requires a good understanding of gray generation and a fair amount of experimentation. Normally it's only necessary to set the paper type correctly to get good results. These options are all new to Gutenprint 5.0. GCR Lower Bound Value This control specifies the darkest shade of gray at which no black ink will be used (i. e. any lighter gray component will be printed using only composite inks). Setting this control to zero means that some amount of black ink will always be used; setting it to 1 means that no black ink will ever be used. GCR Upper Bound Value This control specifies the lightest shade of gray at which no composite CMY ink will be used (i. e. this level of gray and higher will be printed using only black ink). This control should never be set any lower than the GCR Lower Bound Value. Setting this control to zero means that only black ink is used to print any gray value; setting this control to a value greater than one means that some composite ink will be used even when printing black. The upper limit for this control is 5 (in which case black will be printed with no more than 20% black ink). If you use an ink set requiring use of color inks to produce neutral grayscale, you should set the GCR Lower Bound Value to zero or a value very close to zero and the GCR Upper Bound Value should be greater than 1, along with a GCR Transition Value (below) of 1. This will ensure that the proportion of black and color inks will be close to constant throughout the gray range. With this kind of inkset, it's often possible to produce cool or warm toned grayscale prints by selecting Desaturated color correction and adjusting the GCR Upper Bound Value appropriately. For example, if the black ink has a brown (warm) cast, increasing the GCR Upper Bound Value will yield a cooler tone (less black ink) while decreasing it will yield a warmer tone (more black ink). GCR Transition Value This control specifies the gamma of the GCR transition curve. Setting this control to a smaller value results in less black ink being used in the lighter portion of the transition region. This control is useful if the black ink is much darker than the composite inks in order to produce a smoother transition. GCR Curve This control (only available through the Print plugin for the GIMP or other Gutenprint-based applications that provide curve capability) allows you to specify the conversion curve from gray to black/composite precisely. The horizontal axis of this curve represents the gray level (between 0, or no gray at all, and 1, or pure black); the vertical axis represents the fraction of gray that is converted to black (0 means only composite inks, and 1 means only black ink). ---------------- K) OUTPUT LINEARIZATION CURVES (GIMP Plugin Only) These controls permit adjusting the transfer (linearization) curves of each channel precisely. They are only available through the Print plugin for the GIMP or other Gutenprint-based applications that provide curve capability. All of these controls are considered to be for very advanced use only. These options are all new to Gutenprint 5.0. Black Curve Blue Curve Cyan Curve Magenta Curve Yellow Curve Red Curve Green Curve ---------------- L) DETAILED COLOR CORRECTION CURVES (GIMP Plugin Only) These controls permit adjusting precise characteristics of color generation/correction. They are only available through the Print plugin for the GIMP or other Gutenprint-based applications that provide curve capability. All of these controls are considered to be for very advanced use only. The horizontal axis of all of these curves represents the hue of the output. Hue is measured as an angle, where 0 and 360 degrees represent cyan (or red, if the output inks are RGB). Conventionally, these angles are represented as a number between 0 and 6 (each full number in this scale represents 60 degrees). The specific hue angles for CMY and RGB outputs are as follows: \ Ink Type Angle \ RGB CMY ----- \ --- --- 0 | Red Cyan 1 | Yellow Blue 2 | Green Magenta 3 | Cyan Red 4 | Blue Yellow 5 | Magenta Green 6 | Red Cyan These options are all new to Gutenprint 5.0. Hue Adjustment Curve Luminosity Adjustment Curve Saturation Adjustment Curve These controls adjust the color correction in High Accuracy, Bright Colors, and Correct Hue Only color correction modes. These color correction modes work by adjusting the hue, saturation, and luminosity (HSL) of the output inks to achieve a more accurate color than the color created by simply converting the red, green, and blue inputs to cyan, magenta, and yellow (or red, green, and blue) inks. Note that in this printing context luminosity represents darkness (amount of light subtracted) rather than brightness. The saturation and hue adjustments are first applied. The luminosity correction operates on only the color component of the output. Before this correction is applied, any gray value is removed, and added back after the correction is completed. The vertical axis of the Hue Adjustment Curve represents an angular difference that is added to the base hue value to generate the desired output. For example, if the blue output is purple (too close to magenta), adding a negative value to that range of the output will bring the blue value more toward cyan (less magenta). The vertical axis of the Saturation Adjustment Curve represents an amount by which the saturation is multiplied. At any given hue point it may take on any value between 0 (eliminate all color saturation, which is equivalent to converting to pure gray) and 4 (dramatically boost the saturation). Therefore, this adjustment may be used to tone down excessively brilliant colors (e. g. if the reds are overly brilliant) or brighten up dull colors (e. g. if the greens are somewhat dull). This control has no effect if Correct Hue Only is used. If the saturation value is greater than 1, the effect differs depending upon whether High Accuracy or Bright Colors mode is selected: if Bright Colors is selected, the saturation is simply multiplied by the desired value and then set to 1 if it would exceed unity. If High Accuracy mode is selected, the amount of saturation boost is decreased if the starting saturation is high. The vertical axis of the Luminosity Adjustment Curve represents an amount by which the luminosity is multiplied. At any given hue point it may take on any value between 0 (remove the color component altogether) and 1 (leave it as is). Therefore, the function of the Luminosity Adjustment Curve is to lighten excessively dark colors rather than to darken light colors. This control has no effect if Correct Hue Only mode is used. Blue Map Cyan Map Magenta Map Yellow Map Red Map These curves control how the auxiliary red and blue inks are used on the Epson Stylus Photo R800, Stylus Photo R1800, and PictureMate family of printers. These printers use auxiliary inks to achieve more brilliance in the red and blue. Other printers in the future may use other auxiliary channels, which will be made available in similar fashion. The vertical axis of each of these controls specifies the amount of each ink that should be used to print colors of that hue. These curves are used only to generate color; any gray component is removed prior to the color generation and added back later. For example, it is possible to specify that a certain shade of purple is printed using .2 red ink, .6 magenta ink, and .5 blue ink (hypothetically). ---------------- M) SPECIALIZED OUTPUT CONTROLS These controls are used to modify the output in very printer-specific ways. These options are all new to Gutenprint 5.0. Gloss Level Value This control is provided on printers such as the Epson Stylus Photo R800 and R1800 that offer a special gloss enhancer to produce an even degree of gloss on glossy papers regardless of the amount of ink used. On certain glossy papers, areas with high ink coverage are a lot glossier than areas with little ink coverage (highlights); the gloss enhancer is basically a transparent ink that increases the gloss of these areas. This control specifies the desired total amount of ink to be printed, including both the normal color and black inks and the gloss enhancer. If the amount of normal inks is less than this amount, gloss enhancer is used to increase the total amount of ink used. ---------------- N) TRANSITION CONTROLS These controls adjust the level at which light inks (such as the light cyan and magenta inks used on many "photo printers") are used in place of the dark inks. The light inks are used to produce a smoother texture (less speckling); the light cyan droplets, for example, are individually much less visible than the normal dark cyan droplets. The ink substitution works by replacing a certain amount of ink by a mixture of the light and dark inks. For example, the dark cyan ink may be about 3 times as dark as the light cyan ink, so in light areas the cyan may be replaced by 3 times as much light cyan. However, this only works up to a certain point; beyond that point, adding more light ink does not significantly increase the darkness of the ink. These transition values adjust the limits at which the ink substitution is done; the lower these limits are set, the lighter the output at which dark ink is introduced. Setting these values lower will generally yield more accurate midtone colors at the expense of more speckling in the light midtones and highlights. Generally these values need to be lower on low-quality paper than on high quality glossy paper. These options are all new to Gutenprint 5.0. Dark Yellow Transition Value Light Gray Transition Value Mid Gray Transition Value Dark Gray Transition Value Gray Transition Value Light Cyan Transition Value Light Magenta Transition Value Light Yellow Transition Value ---------------- O) FOOMATIC-ONLY OPTIONS This control is available only when using the Foomatic interface. It provides a collection of presets appropriate for various printing tasks. It is similar in concept to (and provided the inspiration for) the Print Quality and Image Type options provided in Gutenprint. Printout Mode