GPL Ghostscript Changelog

What's new in GPL Ghostscript 9.20

Oct 30, 2016
  • The usual round of bug fixes, compatibility changes, and incremental improvements.
  • Incompatible changes:
  • The planned device API tidy did not happen for this release, due to time pressures, but we still intend to undertake the following: We plan to somewhat tidy up the device API. We intend to remove deprecated device procs (methods/function pointers) and change the device API so every device proc takes a graphics state parameter (rather than the current scheme where only a very few procs take an imager state parameter). This should serve as notice to anyone maintaining a Ghostscript device outside the canonical source tree that you may (probably will) need to update your device(s) when these changes happen. Devices using only the non-deprecated procs should be trivial to update

New in GPL Ghostscript 9.19 (Jun 6, 2016)

  • Highlights:
  • New custom PJL (near) equivalents for pdfmark and setdistillerparams. These were primarily added to allow pdfwrite to be configured correctly for PDF/A output from GhostPCL. See: pdfwrite with PCL input for more details.
  • Ghostscript users should continue to use the existing pdfmark and setdistillerparams capabilities.
  • Metadata pdfmark is now implemented. This allows the user to specify an XMP stream which will be written to the Catalog of the PDF file. A new pdfmark 'Ext_Metadata' has been defined. This takes a string parameter which contains XML to be added to the XMP normally created by pdfwrite. See pdfwrite pdfmark extensions for more information.
  • An experimental, rudimentary raster trapping implementation implementation has been added to the Ghostscript graphics library. See Trapping for details.
  • The halftone threshold array generation tools (part of toolbin/halftone) have been improved with thresh_remap which allows folding the transfer function (AKA toner response curve (TRC)) into the threshold array so that highlights are improved. Further, gen_stochastic has improved support for minimum dot size and shape.
  • Plus the usual round of bug fixes, compatibility changes, and incremental improvements.

New in GPL Ghostscript 9.16 (Jun 17, 2015)

  • Highlights:
  • "LockColorants" command line option for tiffsep and psdcmyk devices. Specifying -dLockColorants will restrict those devices to only the colorants list on the command line (thus: -c "> setpagedevice"), rather than allowing the devices to add new colorants as encountered in the input. This is, obviously, preferable for real printers, where only a certain of inks will be available.
  • Improved high level devices handling of Forms. Whilst High level devices (eg pdfwrite) already checked Forms to see if they are duplicates, and if so use the initial definition. However, this does not improve performance, since the Form PaintProc still needs to be executed for each instance of the Form, and the matching algorithm could, in very odd circumstances, be defeated. The new implementation benefits both causes, meaning the second and subsequent invocation of the form need not re-run the PaintProc, and removes the heurisic aspect of the reuse detection.
  • New URW+ fonts in which the families NimbusMono, NimbusRoman and NimbusSans have been augmented with production quality Greek and Cyrillic glyphs. These correspond to our substitutes for the PDF base 14 fonts.
  • Plus the usual round of bug fixes, compatibility changes, and incremental improvements.