Ghostscript Technical Information

Imaging Science

Color Management

Ghostscript uses an ICC-based workflow for color management. All color spaces are defined in terms of ICC profiles, and Ghostscript provides a simple API for interfacing with Color Management Modules (CMMs).

In addition, Ghostscript has a patented technique for optimizing output based upon the different graphic object types within a page. Output for vector graphics, images and text can be individually (and differently) tuned even when mixed on the same page. This enables extraordinary deep black for text, accurate colors for images, and saturated colors for vector graphics.

For more detailed information, please see these additional resources on color-handling in Ghostscript:

  • Graphic Color Dependent Management Object – A fundamental data sheet on Ghostscript color management.
  • Ghostscript Color Management– This white paper provides more detail regarding the patented color architecture in Ghostscript. The document is suitable for users who wish to obtain accurate color with their  output device as well as for developers who wish to customize Ghostscript to achieve a higher level of control and/or interface with a different color management module.

Screening

Artifex offers two high-performance screening technologies:  Even Toned Screening (ETS) and Threshold Array Screening.

Even Toned Screening

Even Toned Screening (ETS) is a variant of error diffusion.   It is well suited for use in inkjet printers and provides significant visual improvements over standard error diffusion methods.

Exceptional features of ETS include total freedom from moire, as well as unparalleled fidelity in reproducing fine detail. These features have helped ensure a dominant role for ETS in inkjet halftoning.   This high-quality technique adds output-dependent feedback to the conventional error diffusion halftone, improving these halftones significantly.

  • “Wormy” Textures in Highlights and Shadows

Standard error diffusion halftones are plagued by a “wormy” texture in highlights and shadows. This undesirable effect is caused by limitations in the logic used by error diffusion to place dots. With ETS, the visual texture of highlight and shadow tones are made more uniform, eliminating the wormy textures that can occur with conventional error diffusion halftones.   This screening technique is effectively identical to placing each halftone dot in the center of a circle and packing the circles tightly together. The resulting texture appears very homogeneous and is visually pleasing to the eye.

While ETS can be applied to both highlight and shadow dots, on inkjet printers only the highlights cause visually noticeable patterns, because of the ink spread. Thus, applying the output dependent feedback to only highlight textures one can speed processing.

  • ”Tearing” Adjacent to High-Contrast Areas

With the smooth highlight areas created with ETS, “tearing” is also avoided. Tearing refers to a screening artifact where the halftone dots drop out next to high-contrast areas, creating a hole or “tear” in the halftone image.   This “tearing” effect is particularly severe for mixed pages containing images and line art or colored text. The use of ETS ensures excellent results for all types of source objects.

  • Color and Multiple Dot Size Support

Many inkjet printers make use of multiple colorants beyond the standard CMYK color set.  In addition, many support multiple dot sizes.  ETS excels on these devices as it has the capability to optimally place dots based upon their size and luminance.   Standard error diffusion methods, when used with CMYK (or more) colorants, suffer from visual artifacts due to poor dot placement between the colorant channels.   ETS maintains information about dot placement for each color channel as it places additional dots.  Information about the colorant luminance and dot size can be encoded into the ETS algorithm.  This feature reduces artifacts in locations like smooth gradients where traditional error diffusion methods suffer from clear visual issues.

The final result is a halftone with exceptionally smooth highlight regions, free of “worming” and “tearing”, with modest computational cost. The speed of ETS is within a factor of two of simple error diffusion techniques such as basic Floyd-Steinberg.

Threshold Array Screening

Artifex offers two Threshold Array Screening options:

  • Ordered dither, using traditional parameters for lines per inch (screen resolution), angle, and spot shape.
  • Dispersed dot stochastic dither screen.

Both technologies allow for independent horizontal and vertical device resolution and the abilities to generate screens with at least 256 levels. In the ordered dither (conventional dot) screen, a supercell is used consisting of an array of multiple dots within the screen to provide enough gray levels, using stochastic dot growth to prevent moiré patterns. The threshold array dimensions will be those of the supercell.

The dispersed dot stochastic dither threshold array can be generated for any specified width and height, and the number of levels is 1+(width*height). This technology also allows for a ‘minimum dot’ setting when generating dispersed dots to allow the resultant screens to be practical on printing engines that cannot reliably image true ‘dispersed dot’ screens. This is sometimes referred to as a ‘green screen’ in that the peak spatial frequency at a particular level is lower than a blue noise distribution or that of error diffusion, but the perceived visual quality may be better than an ordered dither screen.

The dispersed dot approach relies on a seed or simple spatial rotation, rather than the screen angle in order to prevent correlation among individual screens for each color channel (e.g., CMYK). This prevents color shifts if the print engine registration among color channels changes within the page or page to page.

Awards

In partnership with RIPit, Even Toned Screening won the “PDF Shootout” at Seybold San Francisco for best quality PDF output, besting far more expensive solutions.

Interpreters

High Level Output API

The Ghostscript family of interpreters offers native rendering of all major page description languages. In addition to rendering to raster, Ghostscript offers the capability of high-level conversion through our High-level Output API.

This includes the most comprehensive conversion capabilities available on the market. The diagram below highlights current format handling and current conversion paths (the list could be extended – let us know your needs and we can work with you to find a solution).

The Ghostscript high-level output API provides pathways to retain the object-level information. Converting from one format to another, in order to keep the file small and to have searchable/linkable text, Ghostscript retains these objects whenever possible. For example, when PostScript is converted to PDF, fonts and text are retained and are searchable in the resulting PDF file. In addition, vector graphics are retained as well, resulting in a small PDF file with searchable and linkable text.

PDF Interpreter

Ghostscript feature advantages include:

  • Fully compatible with the Adobe Portable Document Format for PDF 1.7, including PDF 1.4 transparency support
  • Alpha channel transparency
  • Device”N” color support (6+ colors at 8 bits)
  • One-step rendering for viewing or printing without the need for intermediate PostScript conversion
  • Portable to almost any computing environment
  • Tested for conformance using the appropriate Quality Logic (formerly Genoa) test suite(s)
  • Full source code availability

Postscript Language Level 3 Interpreter

Ghostscript feature advantages include:

  • “Distiller” capability for PostScript to PDF conversion
  • Anti-aliased text and graphics on continuous-tone devices
  • Alpha value for displays
  • ICC-based color support
  • Device”N” color support (64 colors)
  • Band-at-a-time rendering for hi-resolution printers (This has been available in our products since 1991)
  • Additional data compression and decompression filters
  • High-quality Type 1 scalable fonts
  • Portable to almost any computing environment
  • Tested for conformance using the appropriate Quality Logic (formerly Genoa) test suite(s)
  • Full source code availability

PCL Interpreter

Ghostscript feature advantages include:

  • Supports all variants of PCL: PCL5e, PCL5c, PCLXL 3.0
  • Compatible with AGFA font solutions
  • Unlimited resolution capability
  • Optimized for embedded applications
  • Streamlined, simplified command language.
  • Fully resolution‑ and orientation‑independent text, graphics, and images.
  • Band‑at‑a‑time rendering (display list)
  • Compatible with e (enhanced) PCL5 extensions (LaserJet 5/6 compatible)
  • Compatible with c (color) PCL5 extensions (Color LaserJet 4700)
  • Support for HP-GL2 and HP/RTL
  • Consistent handling of color, gray, and black‑and‑white data across monochrome and color printers.
  • Ability to use complex paths (polygons and beziers) for filling, stroking, and clipping.
  • Bezier curve processing
  • Portable to almost any computing environment
  • Tested for conformance using the appropriate Quality Logic (formerly Genoa) test suite(s)
  • Full source code availability

XPS Interpreter

Ghostscript feature advantages include:

  • Common graphics library with all of Ghostscript
  • Converts XPS to PDF at a high level
  • Support for transparency
  • Support for HTML
  • Unlimited resolution capability
  • Optimized for embedded applications
  • Band-at-a-time rendering (display list)
  • Portable to almost any computing environment
  • Tested for conformance using the appropriate Quality Logic (formerly Genoa) test suite(s)
  • Full source code availability

Fonts and Scalers Ghostscript has a broad range of commercial quality font solutions available for your use.

PostScript fonts

  • Type 1 Format: Ghostscript offers a quality set of fully hinted typefaces that closely match the Adobe base 35 fonts in their glyph outlines, glyph coverage, and metrics required for Level 1 and 2 PostScript-generating applications, with the full set of traditional Adobe symbols and with compatible metrics available in these fonts.
  • Extended PSLL3 character set: Along with the traditional 35 PS base fonts, Artifex Ghostscript offers (as an option) the additional 101 fonts typically present in Adobe printers to ensure support of the extended PSLL3 font set.
  • Monotype Imaging USFT: We offer an API to the UFST (Universal Font Scaling Technology) library, allowing the use of Monotype’s extremely compact MicroType font sets.

PCL fonts

GhostPCL has a full complement of fonts that cover the 80 font types found in HP printers. In addition, we can (as an option) supply extra fonts to match the typeface set found in the Monotype Imaging solution.

Asian fonts

Ghostscript’s PDF, PostScript, and PCL interpreters can handle Asian CIDFonts, which may be licensed from third parties. Ghostscript is compatible with several font downloaders and has been tested with the DynaFont installer and the Ryobi installer. Ghostscript can work with Asian fonts in a variety of formats, such as:

  • CIDFont format (the most popular today) including those embedded in PDF or PostScript
  • Type 0 OCF (Original Composite Font)
  • TrueType format (used with the PCL interpreter)
  • Any of the above Asian fonts embedded in PostScript or PDF documents

Ghostscript can load the Adobe CSL (not provided). Portions of this are expected/required by some older Asian CIDFonts that have non-standard instructions.

Font Scalers

Ghostscript PostScript and PCL interpreters feature commercial quality font scaling technology utilizing the Free Type 2 library for Postscript Type 1, Type 2 and Truetype outlines, and a non-hinted Intellifont rasterizer (for compatibility with older PCL files that download Intellifont data).

  • Ghostscript also provides an interface for communication with third party font scalers, such as Monotype Imaging’s UFST, which may be licensed directly from other vendors. These font rasterizers allow users to view and print fonts embedded in documents and downloaded fonts beyond resident font sets.

Benchmark Tests

Ghostscript and MuPDF Embedded Performance

All data is pages per minute (PPM); Running on a RaspBerry Pi Model B single core ARM at 700MHz PLRM-100.pdf is the first 100 pages of the Postscript Language Reference Manual.

  • Monochrome (1-bit) / Gray (8-bit)

table-1

  • CMYK (1-bit per component) / Contone (8-bit per component)

table-2

  • RGB 24-bit Contone (8-bit per component)

table-3