From bd2e1cd68a340adbd2db71cbe278447afcfb117a Mon Sep 17 00:00:00 2001 From: Jamie Lemon Date: Tue, 30 Nov 2021 21:45:26 +0000 Subject: Documentation updates: includes SVG favicon, header prints version number, fixes HTML markup on some pages to address accessibility issues. --- doc/API.htm | 5 +- doc/C-style.htm | 53 ++--- doc/DLL.htm | 9 +- doc/Deprecated.htm | 65 +++--- doc/Develop.htm | 153 +++++++----- doc/Devices.htm | 75 +++--- doc/Drivers.htm | 122 ++++++---- doc/Fonts.htm | 4 +- doc/GPDL.htm | 4 +- doc/History9.htm | 6 +- doc/Install.htm | 25 +- doc/Internal.htm | 9 +- doc/Language.htm | 207 ++++++++--------- doc/Lib.htm | 4 +- doc/Make.htm | 70 +++--- doc/News.htm | 6 +- doc/Ps-style.htm | 4 +- doc/Ps2epsi.htm | 4 +- doc/Psfiles.htm | 9 +- doc/Readme.htm | 4 +- doc/Release.htm | 12 +- doc/SavedPages.htm | 4 +- doc/Search.htm | 4 +- doc/Source.htm | 10 +- doc/Unix-lpr.htm | 4 +- doc/Use.htm | 140 +++++++---- doc/VectorDevices.htm | 320 ++++++++++++++------------ doc/WhatIsGS.htm | 4 +- doc/default.css | 22 ++ doc/images/favicon.svg | 39 ++++ doc/language-bindings/c-sharp-ghost-api.html | 2 +- doc/language-bindings/c-sharp-ghost-mono.html | 2 +- doc/language-bindings/c-sharp-ghost-net.html | 2 +- doc/language-bindings/c-sharp-intro.html | 2 +- doc/language-bindings/demo-code.html | 2 +- doc/language-bindings/index.html | 2 +- doc/language-bindings/java-gsjavajar.html | 2 +- doc/language-bindings/java-intro.html | 2 +- doc/language-bindings/python-gsapi.html | 2 +- doc/language-bindings/python-intro.html | 2 +- doc/sample_downscale_device.htm | 4 +- doc/site.js | 2 +- doc/subclass.htm | 4 +- doc/thirdparty.htm | 4 +- 44 files changed, 823 insertions(+), 608 deletions(-) create mode 100644 doc/images/favicon.svg (limited to 'doc') diff --git a/doc/API.htm b/doc/API.htm index 34ab2d651..3e4c9e087 100644 --- a/doc/API.htm +++ b/doc/API.htm @@ -4,13 +4,14 @@ - + The Ghostscript Interpreter Application Programming Interface (API) -

Ghostscript documentation

+
+
diff --git a/doc/C-style.htm b/doc/C-style.htm index c79ccac9b..929dd9c61 100644 --- a/doc/C-style.htm +++ b/doc/C-style.htm @@ -4,13 +4,13 @@ - + Ghostscript C Coding Guidelines -

Ghostscript documentation

+
@@ -32,10 +32,10 @@
  • Preprocessor: Conditionals, Macros, - Other + Other
  • Lexical elements
  • Scoping
  • -
  • Data types:
  • +
  • Data types: Scalars, Arrays, Typedefs, @@ -184,7 +184,7 @@ some compilers do it the other way.)
  • compilers erroneously try to expand them.
  • Don't use macros to define shorthands for casted pointers. For -instance, avoid
  • +instance, avoid
    #define fdev ((gx_device_fubar *)dev) @@ -200,6 +200,7 @@ gx_device_fubar * const fdev = (gx_device_fubar *)dev;

    The use of const alerts the reader that this is effectively a synonym.

    +
  • If a macro generates anything larger than a single expression (that is, one or more statements), surround it with BEGIN and @@ -348,7 +349,7 @@ Restrictions:

      -
    • Don't use typedef for function types, such as
    • +
    • Don't use typedef for function types, such as:
      typedef int proc_xyz_t(double, int *); @@ -366,7 +367,7 @@ typedef PROC_XYZ((*proc_xyz_ptr_t)); /* define a type for procedure ptrs */

      proc_xyz_ptr_t pp; /* pointer to procedure */
      - +
    • Don't redefine typedef'ed names, even with the same definition. Some compilers complain about this, and the standard doesn't allow it.
    • @@ -383,14 +384,14 @@ Restrictions:

    • Don't use anonymous structures if you can possibly avoid it, except occasionally as components of other structures. Ideally, use the struct keyword only for declaring named structure types, -like this:
    • +like this:
      typedef struct xxx_s {
         ... members ...
      } xxx_t;
      - +
    • Use struct only when declaring structure types, never for referring to them (e.g., never declare a variable as type struct xxx_s *).
    • @@ -500,7 +501,7 @@ the same file; if the procedure is global, the prototype should be in a header file.
    • If a procedure parameter is itself a procedure, do list its parameter -types rather than just using (). For example,
    • +types rather than just using (). For example:
      int foo(int (*callback)(int, int)); @@ -512,7 +513,7 @@ rather than just

      int foo(int (*callback)());
      - +
    • Don't use the P* macros in new code. (See the Procedures section of Language extensions below for more information.)
    • @@ -602,12 +603,12 @@ language, such as Java, bool is an enumerated type requiring an explicit cast to or from int; however, because C's conditionals are defined as producing int values, we can't even define bool as a C enum without -provoking compiler warnings. - +provoking compiler warnings.

      Even though bool is a synonym for int, treat them as conceptually different types:

      +
      • Initialize or set bool variables to true or false, not 0 or 1.
      • @@ -618,18 +619,18 @@ and || only with Booleans. Don't use the idiom
      • Use an explicit (int) cast to convert a Boolean to an integer.
      - +
      byte, ushort, uint, ulong
      These types are simply shorthands for unsigned char, short, int, -long.
      +long
      .

      In addition, the use of byte * indicates a Ghostscript-style string, with explicit length given separately, as opposed to a null terminated C-style string, which is char *.

      - +
      bits8, bits16, bits32
      These are unsigned integer types of the given width. Use them wherever @@ -823,27 +824,27 @@ Parentheses are important in only a few places:

      • Around the inner subexpressions in expressions that mix && and ||, even if they are not -required by precedence, for example
      • +required by precedence, for example:
        (xx && yy) || zz
        - +
      • Similarly around inner subexpressions in expressions that mix &, |, or shifts, especially if mixing -these with other operators, for instance
      • +these with other operators, for instance:
        (x << 3) | (y >> 5)
        - +
      • In macro definitions around every use of an argument that logically -could be an expression, for example
      • +could be an expression, for example:
        ((x) * (x) + (y) * (y))
        - +

      @@ -854,7 +855,7 @@ For stylistic consistency with the existing Ghostscript code, put parentheses around conditional expressions even if they aren't syntactically required, unless you really dislike doing this. Note that the parentheses should go around the entire expression, not the condition. -For instance, instead of

      +For instance, instead of:

      hpgl_add_point_to_path(pgls, arccoord_x, arccoord_y,
      @@ -862,7 +863,7 @@ hpgl_add_point_to_path(pgls, arccoord_x, arccoord_y,

      -use

      +use:

      hpgl_add_point_to_path(pgls, arccoord_x, arccoord_y,
      @@ -1133,7 +1134,7 @@ Every code file should start with comments containing

      1. a copyright notice,
      2. -
      3. the name of the file in the form of an RCS Id:
      4. +
      5. the name of the file in the form of an RCS Id:
        /* $Id: filename.ext $*/ @@ -1141,7 +1142,7 @@ Every code file should start with comments containing

        (using the comment convention appropriate to the language of the file), and

        - +
      6. a summary, no more than one line, of what the file contains.
      diff --git a/doc/DLL.htm b/doc/DLL.htm index d9c34d369..e1d588e6e 100644 --- a/doc/DLL.htm +++ b/doc/DLL.htm @@ -4,13 +4,13 @@ - + How to Use the Ghostscript Dynamic Link Library (DLL) -

      Ghostscript documentation

      +
      @@ -127,7 +127,7 @@ The seven functions provided by the DLL are
    • int GSDLLAPI gsdll_execute_cont(const char *str, int len);
    • int GSDLLAPI gsdll_execute_end(void);
    • int GSDLLAPI gsdll_exit(void);
    • -
    • int GSDLLAPI gsdll_lock_device(unsigned char *device, int flag);
    • +
    • int GSDLLAPI gsdll_lock_device(unsigned char *device, int flag);

      where GSDLLAPI is defined under OS/2 as @@ -142,6 +142,7 @@ and under MS Windows as

      #define GSDLLAPI CALLBACK _export
      +

    gsdll_revision()

    @@ -425,7 +426,7 @@ char *p; Symbol - + Value Use diff --git a/doc/Deprecated.htm b/doc/Deprecated.htm index de60944a1..4b66b1239 100644 --- a/doc/Deprecated.htm +++ b/doc/Deprecated.htm @@ -4,13 +4,13 @@ - + Deprecated Ghostscript Features -

    Ghostscript documentation

    +
    @@ -1595,54 +1595,53 @@ valid BitsPerPixel values don't include the actual
    -
    ProcessColorModel (symbol) +
    ProcessColorModel (symbol)
    A symbol taken from /DeviceGray, /DeviceRGB or /DeviceCMYK which can be used to select 1, 3 or 4 colors respectively. Note that this parameter takes precedence over Colors, and that both affect the same variable of the driver. (See Colors above for values -combined with BitsPerPixel.) +combined with BitsPerPixel.)
    -
    HWResolution (floats array) +
    HWResolution (floats array)
    An array of two floats giving the horizontal and vertical resolution in dots per inch from among 90, 180 and 360 (the default). Both values must be the same. On the Ghostscript command line, the resolution may be changed with the -r -switch. +switch.
    -
    ManualFeed (bool) +
    ManualFeed (bool)
    Indicate that the sheets won't be fed automatically by the printer, -false by default. (Not meaningful on the BJC-600, I fear.) +false by default. (Not meaningful on the BJC-600, I fear.)
    -
    MediaType (string) +
    MediaType (string)
    The media to print on, chosen from among "PlainPaper", "CoatedPaper", "TransparencyFilm", "Envelope", "Card" and "Other". Default is "PlainPaper". For "Envelope", "Card" or "Other" the driver puts the printer into thick mode -automatically regardless of the actual media weight. +automatically regardless of the actual media weight.
    -
    MediaWeight (int or null) +
    MediaWeight (int or null)
    The weight of the media in grams per square meter. Null (the default) indicates that the weight is of no importance. If the specified media weight is greater than 105 (that is, the value of the compilation default BJC???_MEDIAWEIGHT_THICKLIMIT) then the -printer will be set to use thick paper. +printer will be set to use thick paper.
    -

    dt>PrintQuality (string) +

    PrintQuality (string)
    The quality of printing.

    - @@ -1675,6 +1674,8 @@ printer will be set to use thick paper.
    ValueMeans 200% black and 100% CMY; lights the "Bk+" light on a BJC-600
    +
    +
    @@ -4314,7 +4315,7 @@ while /FSCMYK32 is (almost) identical to /DeviceCMYKgenerate.
  • upOutputFormat selects the output method, supporting the values -/SunRaster, /Epson, /EscP2, /EscP2XY, and/Pcl.
  • +/SunRaster, /Epson, /EscP2, /EscP2XY, and/Pcl.
    @@ -4345,7 +4346,7 @@ while /FSCMYK32 is (almost) identical to
    - +
  • -r360x360 is Ghostscript's standard resolution switch.
  • @@ -4362,8 +4363,7 @@ Floyd-Steinberg algorithm (but still carrying out the time-consuming computation). The related parameter "upComponentShift" controls positioning the components within raster memory. Each of the numbers given corresponds to a component which depends on the selected -"upColorModel": - +"upColorModel":
    @@ -4464,6 +4464,7 @@ the stored component is White, which is the way PostScript defines these devices, but most printers require Black. Thus one has to provide a falling "upWhiteTransfer" for such printers.

    +
  • upWeaveYPasses is an integer that gives the number of print head passes required to achieve the requested Ydpi. This makes sense @@ -4493,7 +4494,7 @@ output file. (Intended for the HP PJL sequences).
  • upAdjustPageLengthCommand, upAdjustPageWidthCommand, upAdjustResolutionCommand, and -upAdjustTopMarginCommand +upAdjustTopMarginCommand

    Normally uniprint does not change the @@ -4501,6 +4502,7 @@ Normally uniprint does not change the However, if the above boolean values are set, the corresponding values are changed (provided that the code of the formatters supports this change and the commands to be adjusted are included in the BOP string).

    +
  • upEndPageCommand is the fixed termination sequence for each page, and of course there is an "upEndJobCommand" too.
  • @@ -5112,7 +5114,7 @@ Germany
    +49 203 376273 telephone (MET evening hours)
    <ghess@elmos.de> -

    +

    Uniprint weaving parameters howto

    This section was contributed by Glenn Ramsey.

    I wrote this because the documentation was very brief and I really struggled @@ -5122,7 +5124,7 @@ on.

    at the X parameters yet.

    1. -Determine the nozzle geometry (upOutputPins)
    2. +Determine the nozzle geometry (upOutputPins)

      You need to know how many nozzles the printer has and the spacing between them. Usually you can find this out from the printer manual, or the printer @@ -5136,10 +5138,10 @@ parameter.

      the purpose of demonstration I'll assume that we are using them all.

      * escp2ras is available from Gunther Hess' page at http://www-md.e-technik.uni-rostock.de/ma/gunther/gs/index.html

      - +
    3. Determine how many passes are required (upWeaveYPasses)
    4. The number of passes required is going to depend on the required resolution -and the nozzle spacing.
    5. +and the nozzle spacing.
      passes = resolution * nozzle spacing @@ -5149,9 +5151,10 @@ This will be the value assigned to the upWeaveYPasses parameter. spaced at 1/90in then 360 * 1/90 = 4 passes are required. For 720 dpi 8 passes would be required. The printer would, of course, have to be capable of moving the paper in increments of either 360 or 720 dpi too.

      -

      + +

    6. -Determine the normal Y feed increment (upWeaveYFeeds)
    7. +Determine the normal Y feed increment (upWeaveYFeeds)

      You need to work out how much to feed the paper so that when the paper has moved by one head length in however many passes you have then each @@ -5180,7 +5183,7 @@ must equal the physical distance between each nozzle.

    8. -Determine the beginning of page pins (upWeaveInitialPins)
    9. +Determine the beginning of page pins (upWeaveInitialPins)

      These values will be assigned to the upWeaveInitialPins parameter and are the numbers of nozzles to operate in each of the initial passes at the top @@ -5399,7 +5402,7 @@ The extension adds a format that I have called EscNozzleMap and adds some additional parameters to uniprint.


      • upOutputFormatselects the output method, and should be set to the value -/EscNozzleMap to select this format.
      • +/EscNozzleMap to select this format.
    @@ -5412,6 +5415,7 @@ The extension adds a format that I have called EscNozzleMap and adds some
    +
    @@ -5486,7 +5490,7 @@ The extension adds a format that I have called EscNozzleMap and adds some head and whether the nozzles will be used to print. The array index defines the row index for the nozzle in the output data and the value defines the colour of the nozzle. The mapping - of colours to values is defined in the table below. + of colours to values is defined in the table below.
    @@ -5531,13 +5535,14 @@ The extension adds a format that I have called EscNozzleMap and adds some A value of 0 means that the nozzle is not used and the row in the output data will be padded with zeros.
    +
  • upNozzleMapMaskScanOffset
    An array of integers that defines the physical position of the nozzles relative to the first nozzle in the repeated group. The relative distance is measured in printed line widths and will be different for different printing resolutions. This parameter is used because the physical spacing of the nozzles may not correspond to their mapping in the output data. For example the ESC300 has nozzles - physically arranged something like this:
  • + physically arranged something like this:

    @@ -5632,6 +5637,8 @@ The extension adds a format that I have called EscNozzleMap and adds some In the output data the data for the last nozzle in the group would be in row 5 (numbering starts at 0) but the nozzle is physically positioned at 6 spaces from the first nozzle.

    + +

    Example 1 - Epson Stylus Color 300 - 360 dpi colour

    diff --git a/doc/Develop.htm b/doc/Develop.htm
    index ca0c5db37..f6bbf8cd5 100644
    --- a/doc/Develop.htm
    +++ b/doc/Develop.htm
    @@ -4,13 +4,13 @@
         
         
         
    -    
    +    
         Information for Ghostscript Developers
         
     
     
     
    -    

    Ghostscript documentation

    +
    @@ -1673,60 +1673,73 @@ Shared support:
    -
    -Writing fonts: -
    -devices/vector/gdevpsf.h, -devices/vector/gdevpsf1.c, -devices/vector/gdevpsf2.c, -devices/vector/gdevpsfm.c, -devices/vector/gdevpsft.c, -devices/vector/gdevpsfu.c, -devices/vector/gdevpsfx.c, -base/gscedata.c, -base/gscedata.h, -base/gscencs.c, -base/gscencs.h. - -
    -Other: -
    -devices/vector/gdevpsdf.h, -devices/vector/gdevpsdi.c, -devices/vector/gdevpsdp.c, -devices/vector/gdevpsds.c, -devices/vector/gdevpsds.h, -devices/vector/gdevpsdu.c. +
    + Writing fonts:
    +
    + devices/vector/gdevpsf.h, + devices/vector/gdevpsf1.c, + devices/vector/gdevpsf2.c, + devices/vector/gdevpsfm.c, + devices/vector/gdevpsft.c, + devices/vector/gdevpsfu.c, + devices/vector/gdevpsfx.c, + base/gscedata.c, + base/gscedata.h, + base/gscencs.c, + base/gscencs.h. + +
    + Other:
    +
    + devices/vector/gdevpsdf.h, + devices/vector/gdevpsdi.c, + devices/vector/gdevpsdp.c, + devices/vector/gdevpsds.c, + devices/vector/gdevpsds.h, + devices/vector/gdevpsdu.c.
    +
    -Encapsulated PostScript output driver (epswrite): +Encapsulated PostScript output driver (epswrite):
    devices/vector/gdevpsu.c, devices/vector/gdevpsu.h. +
    +
    +
    -PDF output driver (pdfwrite): -
    +PDF output driver (pdfwrite): +
    +
    +
    -Substrate: +Substrate:
    devices/vector/gdevpdfo.c, devices/vector/gdevpdfo.h, devices/vector/gdevpdfr.c, devices/vector/gdevpdfu.c. +
    +
    +
    -Old text and fonts: +Old text and fonts:
    devices/vector/gdevpdfe.c, devices/vector/gdevpdft.c. +
    +
    + +
    -New text and fonts: +New text and fonts:
    devices/vector/gdevpdt.c, devices/vector/gdevpdt.h, @@ -1751,9 +1764,12 @@ New text and fonts: devices/vector/gdevpdtx.h. base/ConvertUTF.h, base/ConvertUTF.c, +
    +
    +
    -Graphics: +Graphics:
    devices/vector/gdevpdfc.c, devices/vector/gdevpdfc.h, @@ -1763,31 +1779,39 @@ Graphics: devices/vector/gdevpdfk.c, devices/vector/gdevpdft.c. devices/vector/gdevpdfv.c. +
    +
    +
    -Images: +Images:
    devices/vector/gdevpdfb.c, devices/vector/gdevpdfi.c, devices/vector/gdevpdfj.c. +
    +
    +
    -Other: +Other:
    devices/vector/gdevpdf.c, devices/vector/gdevpdfm.c, devices/vector/gdevpdfp.c, devices/vector/gdevpdfx.h. devices/vector/gdevpdfb.h. +
    - +

    Other high-level devices

    -

    -PCL XL output device (pxlmono, pxlcolor): +

    +
    +PCL XL output device (pxlmono, pxlcolor):
    devices/vector/gdevpx.c, base/gdevpxat.h, @@ -1795,19 +1819,26 @@ PCL XL output device (pxlmono, pxlcolor): base/gdevpxop.h, devices/gdevpxut.c, devices/gdevpxut.h. +
    +
    + +
    -Text extraction: +Text extraction:
    devices/vector/gdevtxtw.c. - +
    +
    +
    -Other high-level devices: +Other high-level devices:
    devices/gdevtrac.c. - +
    +

    Other maintained drivers

    @@ -1818,7 +1849,7 @@ sense as the Ghostscript core code.

    -Display drivers: +Display drivers:
    devices/gdev8bcm.c, devices/gdev8bcm.h, @@ -1833,15 +1864,19 @@ Display drivers: devices/gdevsvga.c, devices/gdevsvga.h, devices/gdevvglb.c. +
    +
    +
    -Window system drivers: -
    +Window system drivers: +
    +
    -X Windows: +X Windows:
    devices/gdevx.c, devices/gdevx.h, @@ -1850,33 +1885,38 @@ X Windows: devices/gdevxcmp.h, devices/gdevxini.c, devices/gdevxres.c. +
    +
    +
    -Microsoft Windows: +Microsoft Windows:
    devices/gdevmswn.c, devices/gdevmswn.h, devices/gdevmsxf.c, devices/gdevwddb.c, -devices/gdevwdib.c. +devices/gdevwdib.c.
    -OS/2 Presentation Manager: +OS/2 Presentation Manager:
    devices/gdevpm.h, base/gspmdrv.c, -base/gspmdrv.h. +base/gspmdrv.h.
    +
    -Raster file output drivers: -
    +Raster file output drivers: +
    +
    -Fax and TIFF: +Fax and TIFF:
    devices/gdevfax.c, devices/gdevfax.h, @@ -1887,6 +1927,8 @@ Fax and TIFF: devices/gdevtfnx.c. devices/gdevtsep.c. +
    +
    Example DeviceN devices:
    @@ -1896,6 +1938,8 @@ Example DeviceN devices: devices/gdevpsd.c, devices/gdevperm.c. +
    +
    Other raster file formats:
    @@ -1912,8 +1956,11 @@ Other raster file formats: devices/gdevpng.c, devices/gdevpsim.c. +
    +
    +
    Printer drivers:
    diff --git a/doc/Devices.htm b/doc/Devices.htm index 0c78a8658..2bc6cedab 100644 --- a/doc/Devices.htm +++ b/doc/Devices.htm @@ -4,13 +4,13 @@ - + Details of Ghostscript Output Devices -

    Ghostscript documentation

    +
    @@ -192,11 +192,12 @@ The default value if you don't specify this options is usually 72 dpi

    These options control the use of subsample antialiasing. Their use is highly recommended for producing high quality rasterizations of the input files. The size of the subsampling box n should be 4 for optimum output, but smaller values can be used for faster -rendering. Antialiasing is enabled separately for text and graphics content.

    +rendering. Antialiasing is enabled separately for text and graphics content.

    Because this feature relies upon rendering the input it is incompatible, and will generate an error on attempted use, with any of the vector output devices.

    - -
    + + +

    It is also conventional to call Ghostscript with the '-dSAFER -dBATCH -dNOPAUSE' trio @@ -237,14 +238,14 @@ anti-aliasing are enabled by default.

    -dDownScaleFactor=integer
    This causes the internal rendering to be scaled down by the given (integer <= 8) factor before being output. For example, the following will produce -a 200dpi output png from a 600dpi internal rendering:
    +a 200dpi output png from a 600dpi internal rendering:
      gs -sDEVICE=png16m -r600 -dDownScaleFactor=3 -o tiger.png\
           examples/tiger.eps
     
    - +
    @@ -409,14 +410,14 @@ drivers that produce uncompressed output:

    Produces 32-bit CMYK output (8 bits per component).
    tiff64nc
    Produces 64-bit CMYK output (16 bits per component).
    -
    tiffsep
    +
    tiffsep
    The tiffsep device creates multiple output files: a single 32 bit composite CMYK file and multiple tiffgray files, one for each separation (unless -dNoSeparationFiles is specified). If separation files are being produced and more than one page is being generated, the output file specification must include a format specifier (e.g -o outfile-%d.tif) -so that each page can have a uniquely named set of separation files.
    +so that each page can have a uniquely named set of separation files.

    The default compression is lzw but this may be overridden by the -sCompression= option.

    @@ -537,14 +538,15 @@ options, none of these are currently exposed. Any device author interested in trying these options should contact Artifex for more information. Currently ETS can be enabled using -dDownScaleETS=1.

    -
    tiffsep1
    + +
    tiffsep1
    The tiffsep1 device creates multiple output files, one for each component or separation color. The device creates multiple tiffg4 files (the compression can be set using -sCompression= described below). The 1 bit per component output is halftoned using the current screening set by 'setcolorscreen' or 'sethalftone' which allows for ordered dither or stochastic threshold - array dither to be used. This is faster than error diffusion.
    + array dither to be used. This is faster than error diffusion.

    The file specified via the OutputFile command line parameter will not be @@ -559,8 +561,9 @@ name in '(' and ').tif' to the filename. If the file name specified via the OutputFile parameter ends with the suffix '.tif', then the suffix is removed prior to adding the component name in '(' and ').tif'.

    + -
    tiffscaled
    +
    tiffscaled
    The tiffscaled device renders internally at the specified resolution to an 8 bit greyscale image. This is then scaled down by an integer scale factor @@ -569,7 +572,7 @@ The tiffscaled device renders internally at the specified resolutio below.
    -
    tiffscaled4
    +
    tiffscaled4
    The tiffscaled4 device renders internally at the specified resolution to an 8 bit cmyk image. This is then scaled down by an integer scale factor @@ -577,31 +580,31 @@ The tiffscaled4 device renders internally at the specified resoluti 4bpp cmyk output. The compression can be set using -sCompression= as described below.
    -
    tiffscaled8
    +
    tiffscaled8
    The tiffscaled8 device renders internally at the specified resolution to an 8 bit greyscale image. This is then scaled down by an integer scale factor (set by -dDownScaleFactor= described below). The compression can be set using -sCompression= as described below.
    -
    tiffscaled24
    +
    tiffscaled24
    The tiffscaled24 device renders internally at the specified resolution to a 24 bit rgb image. This is then scaled down by an integer scale factor (set by -dDownScaleFactor= described below). The compression can be set using --sCompression= as described below.
    +-sCompression= as described below.

    In commercial builds, the -dDeskew option can be used to automatically detect/correct skew when generating output bitmaps.

    - -
    tiffscaled32
    + +
    tiffscaled32
    The tiffscaled32 device renders internally at the specified resolution to a 32 bit cmyk image. This is then scaled down by an integer scale factor (set by -dDownScaleFactor= described below). The compression can be set using --sCompression= as described below.
    +-sCompression= as described below.

    In commercial builds, the -dDeskew option can be used to automatically detect/correct skew when generating output bitmaps.

    - + @@ -775,11 +778,12 @@ a 200dpi image.
    -sPostRenderProfile=path (path to an ICC profile)
    If this option set then the page will be color transformed using that -profile after downscaling.
    +profile after downscaling.

    This is useful when the file uses overprint to separately paint to some subset of the C, M, Y, and K colorants, but the final CMYK is to be color corrected for printing or display.

    +

    @@ -789,7 +793,7 @@ The tiffsep TIFF device also provide this parameter:

    -dPrintSpotCMYK=boolean defaults to false. When set to true the device will print (to stdout) the name of each ink used on the page, and the CMYK values which are equivalent to 100% of that ink. The values are 16-bits ranging from 0 -to 32760.
    +to 32760.
    @@ -1086,14 +1090,14 @@ to use the existing font Encoding. For English text this may give better results

    For these reasons the OCR functionality of pdfwrite can be controlled by using a new parameter -sUseOCR. This has three possible values;

    +
    -sUseOCR=string
    -
    -
    -
    Never
    Default - don't use OCR at all even if support is built-in. -
    AsNeeded
    If there is no existing ToUnicode information, use OCR. -
    Always
    Ignore any existing information and always use OCR. -
    -
    + +
    Never
    Default - don't use OCR at all even if support is built-in.
    +
    AsNeeded
    If there is no existing ToUnicode information, use OCR.
    +
    Always
    Ignore any existing information and always use OCR.
    + +


    @@ -1200,8 +1204,10 @@ OS/2 and the gtk+ versions of ghostscript.
    -dDisplayFormat=N (integer bit-field)
    Some common values are 16#30804 for Windows RGB, 16#804 for gtk+ RGB, 16#20101 for Windows monochrome, 16#102 for gtk+ monochrome, -16#20802 grayscale, 16#20808 for CMYK, 16#a0800 for separations.
    -The bit fields are +16#20802 grayscale, 16#20808 for CMYK, 16#a0800 for separations. +

    +The bit fields are: +

    • native (1), gray (2), RGB (4), CMYK (8), or separation (80000) color spaces.
    • @@ -1213,6 +1219,7 @@ color spaces.

    For more details, see the Ghostscript Interpreter API.

    +
    -dDisplayResolution=DPI
    Set the initial resolution resolution for the display device. This is used by the Windows clients to set the display device @@ -1329,7 +1336,7 @@ are summarized below:
    -rnumber
    -
    -rnumber1xnumber2 +
    -rnumber1xnumber2
    Sets the resolution, in dpi. If the resolution is not specified, Ghostscript queries the IJS server to determine the preferred resolution. When the resolution is specified, it overrides the value (if any) @@ -1713,7 +1720,7 @@ the Windows printer driver; this option can produce huge print jobs).
    Sets additional options, defined in a dictionary. The following properties can be set:
    -
    +
    /DocumentName string
    Defines the user friendly document name which will be displayed by the Windows spooler.
    @@ -1737,7 +1744,7 @@ resolution of 1200/4=300 dpi. This can be very useful to reduce the memory requirements when printing in True Color on some high resolution ink-jet color printers.
    - + diff --git a/doc/Drivers.htm b/doc/Drivers.htm index 8c10ee12e..217d80c46 100644 --- a/doc/Drivers.htm +++ b/doc/Drivers.htm @@ -4,13 +4,13 @@ - + The Interface between Ghostscript and Device Drivers -

    Ghostscript documentation

    +
    @@ -37,10 +37,12 @@ @@ -134,7 +136,7 @@ need do is edit contrib.mak in two places.

  • The list of devices, in the section headed "Catalog". Add smurf to the list.
  • -
  • The section headed "Device drivers".
  • +
  • The section headed "Device drivers".

    Suppose the files containing the smurf driver are called @@ -188,6 +190,7 @@ or

    Note that the space before the :, and the explicit compilation rules for the .c files, are required for portability,

    +

  • @@ -387,6 +390,7 @@ structure, or to add procedures, you must change the following places:

    (probably just adding NULL procedure entries if the new procedures don't produce output).
  • These devices that must have complete (non-defaulted) procedure vectors:
  • +
    • The null device in gdevnfwd.c.
    • The command list "device" in gxclist.c. @@ -394,6 +398,7 @@ structure, or to add procedures, you must change the following places:

    • The "memory" devices in gdevmem.h and gdevm*.c.
    +
  • The clip list accumulation "device" in gxacpath.c.
  • The clipping "devices" gxclip.c, @@ -779,7 +784,7 @@ gets gx_color_index values from the device's procedures. If the separable_and_linear field in the device's color_info structure is not set to GX_CINFO_SEP_LIN then Ghostscript does not do -any computations with gx_color_index values. +any computations with gx_color_index values.

    The special @@ -820,6 +825,9 @@ For Microsoft and the MSVC compiler, GX_COLOR_INDEX_TYPE will be set to unsigned _int64 if USE_LARGE_COLOR_INDEX is set to 1 either on the make command line or by editing the definition in msvc32.mak

    + + +
    @@ -841,7 +849,7 @@ filling a region (rectangle). gx_tile_bitmap is an older, deprecated type lacking shift and rep_shift; gx_strip_bitmap has superseded it, and should be -used in new code. Here is a copy of the relevant part of the file: +used in new code. Here is a copy of the relevant part of the file:
    @@ -914,6 +922,9 @@ typedef struct gx_strip_bitmap_s {
             int num_planes;
     } gx_strip_bitmap;
    + + +

    @@ -1356,12 +1367,13 @@ always call gs_opendevice instead. (nominally 1/72 inch per unit) to device coordinates. The default procedure computes this from width, height, and [xy]_pixels_per_inch on the assumption that -the origin is in the upper left corner, that is +the origin is in the upper left corner, that is
    xx = x_pixels_per_inch/72, xy = 0,
    yx = 0, yy = -y_pixels_per_inch/72,
    tx = 0, ty = height.
    +
    @@ -1471,7 +1483,7 @@ the specified name is not a colorant for the device. A value of 0 to of the given name. A value of GX_DEVICE_COLOR_MAX_COMPONENTS indicates that the given name is a valid colorant name for the device but the colorant is not currently being used. This is used for implementing names -which are in SeparationColorNames but not in SeparationOrder. +which are in SeparationColorNames but not in SeparationOrder.

    The default procedure returns results based upon process color model @@ -1479,6 +1491,7 @@ of DeviceGray, DeviceRGB, or DeviceCMYK selected by color_info.num_components. This procedure must be defined if another process color model is used by the device or spot colors are supported by the device.

    +
    @@ -1488,7 +1501,7 @@ gx_device * dev, const gx_device ** tdev) [OPTIONAL] +spaces since these already represent device colorants.

    In many cases, the device returned in tdev will be the same as dev, but the caller should not rely on this. For @@ -1507,6 +1520,7 @@ procedure must be defined if another process color model is used by the device or spot colors are to be supported. All these procedures take a gx_device pointer; these should be called with the value returned in tdev NOT the initial value of dev.

    +
    @@ -1517,11 +1531,12 @@ value. The range of legal values of the arguments is 0 to gx_max_color_value. The default procedure packs bits into a gx_color_index value based upon the values in color_info.depth and -color_info.num_components. +color_info.num_components.

    Note that the encode_color procedure must not return gx_no_color_index (all 1s).

    +
    @@ -1573,11 +1588,12 @@ the point (x,y) is included in the rectangle, as are not (x+w,y), (x,y+h), or (x+w,y+h). If width <= 0 or height <= 0, fill_rectangle should return 0 -without drawing anything. +without drawing anything.

    Note that fill_rectangle is the only non-optional procedure in the driver interface.

    +

    Bitmap imaging

    @@ -1608,13 +1624,14 @@ pixel is unaffected if the image bit is 0 or 1 respectively. If id is different from gx_no_bitmap_id, it identifies the bitmap contents unambiguously; a call with the same id will always have the same data, -raster, and data contents. +raster, and data contents.

    This operation, with color0 = gx_no_color_index, is the workhorse for text display in Ghostscript, so implementing it efficiently is very important.

    +
    @@ -1632,7 +1649,7 @@ the device coordinate system. (Note that this is backwards from the PostScript definition of halftone phase.) phase_x and phase_y are guaranteed to be in the range [0..tile->width) and -[0..tile->height) respectively. +[0..tile->height) respectively.

    If color0 and color1 are both @@ -1646,6 +1663,7 @@ implementing it efficiently for solid tiles (that is, where either gx_no_color_index, for colored halftones, or neither one is gx_no_color_index, for monochrome halftones) is very important.

    +

    Pixmap imaging

    @@ -1739,41 +1757,44 @@ Given a 2d source block of pixels (supplied as scanline data), this function transforms that data, maps it through the supplied colour lookup function, clips it, and plots it into the device. -

    In all calls to this function a negative return value indicates an error. +

    In all calls to this function a negative return value indicates an error.

    Called first with the transform_pixel_region_init reason code, this prepares for subsequent calls to scale a region as described in the data.u.init structure. A pointer to any state required for this should be written into data.state, and the caller must -pass that in to subsequent calls. +pass that in to subsequent calls.

    Subsequently this will be called with transform_pixel_region_data_needed. The function will then check to see if the next scanline of data will be trivially clipped away. If so, then it will return zero to indicate that it is not needed. This can help the caller to avoid unnecessary processing. A positive return value -indicates that the line is required. +indicates that the line is required.

    For every line where the data is required, the function will be called with transform_pixel_region_process_data. The function will then read and process the line from data.u.process_data. The data in the buffer is packed 8 bit values, which will be fed into the supplied cmapper to set the device color as required. This is then written -into the device. +into the device.

    Once all the scanlines have been fed through calls to transform_pixel_region_data_needed and transform_pixel_region_process_data, a final call with transform_pixel_region_end -is made that frees the state. +is made that frees the state.

    The default implementation of this device function will generally break the pixel data down into calls to fill_rectangle, though in some cases (notably the portrait 8 bit per component output case), a faster route through copy_color -can be used. +can be used.

    Memory devices offer a version of this device function that can accelerate direct -plotting to the memory array. +plotting to the memory array.

    NOTE: Currently the clipping rectangle is not honoured for skewed (not portrait or landscape) transformations. This is allowed for in the callers. +

    + +

    Compositing

    @@ -1791,7 +1812,7 @@ gx_bitmap_id id, int x, int y, int width, int height, gx_color_index color, int depth) [OPTIONAL]
    This procedure is somewhat misnamed: it was added to the interface -before we really understood alpha channel and compositing.
    +before we really understood alpha channel and compositing.

    Fill a given region with a given color modified by an individual alpha @@ -1807,6 +1828,7 @@ rule.

    with an 8 bit depth. In addition they should accept either 2 or 4 if the corresponding get_alpha_bits procedure returns either of those values.

    +
    @@ -1833,7 +1855,7 @@ it. Accordingly, the caller must watch the return values from this function to understand if a new device has been created to which future calls should be made.

    -Devices will normally implement this in one of the following standard ways: +Devices will normally implement this in one of the following standard ways:

    • Devices that don't do any imaging and don't forward any imaging @@ -1894,6 +1916,7 @@ Closing a compositor frees all of its storage, including the compositor itself. However, since the composite call may return the same device, clients must check for this case, and only call the close procedure if a separate device was created.

      +

    Polygon-level drawing

    @@ -1954,7 +1977,9 @@ fixed fx0, fixed fy0, fixed fx1, fixed fy1, const gx_drawing_color *pdcolor, gs_logical_operation_t lop) [OPTIONAL]
    Draw a one-pixel-wide line from (fx0,fy0) to -(fx1,fy1).
    +(fx1,fy1). + +

    Linear color drawing

    @@ -1970,8 +1995,9 @@ or uses a non-separable or a non-linear color model.

    const gs_fixed_point *p0, const gs_fixed_point *p1, const gs_fixed_point *p2, const frac31 *c0, const frac31 *c1, const frac31 *c2) - -[OPTIONAL] + +[OPTIONAL] +
    This function is the highest level one within the linear color function group. It fills a triangle with a linearly varying color. Arguments specify 3 points in the device space - vertices of a triangle, and their colors. @@ -2031,8 +2057,8 @@ in gdevddrw.c for sample code.
    const gs_fixed_point *p2, const gs_fixed_point *p3, const frac31 *c0, const frac31 *c1, const frac31 *c2, const frac31 *c2) - -[OPTIONAL] +[OPTIONAL] +
    This function is a lower level one within the linear color function group. The default implementation of fill_linear_color_triangle calls this function 1-2 times per triangle. Besides that, @@ -2052,7 +2078,7 @@ All those important notes are applicable here.
    Sample code may be found in in gxdtfill.h; be aware it's rather complicated. A linear color function is generated from it as gx_fill_trapezoid_ns_lc -with the following template parameters :
    +with the following template parameters :
     #define LINEAR_COLOR 1
    @@ -2067,7 +2093,7 @@ with the following template parameters :
     

    See check_gradient_overflow (defined in in gdevddrw.c), as an example of an area that can't be painted in a single action due to 64-bits fixed overflows.

    - +
    @@ -2519,7 +2545,7 @@ gx_image_enum_common_t **pinfo) [OPTIONAL] image_plane_data function supplied in the returned image enumerator will follow, and then a call of end_image. The parameters of begin_typed_image -are as follows: +are as follows:
  • @@ -2580,6 +2606,7 @@ is called.

    begin_typed_image returns 0 normally, or 1 if the image does not need any data. In the latter case, begin_typed_image does not allocate an enumeration structure.

    +

    @@ -2598,7 +2625,7 @@ gx_image_enum_common_t *info, const gx_image_plane_t *planes, int height)

    This call provides more of the image source data: specifically, height rows, with Width pixels supplied for -each row.
    +each row.

    The data for each row are packed big-endian within each byte, as for @@ -2652,7 +2679,7 @@ arguments, does not require the data to be aligned in any way.

    Note that for some image types, different planes may have different numbers of bits per pixel, as defined in the plane_depths array.

    - +
    @@ -2698,7 +2725,7 @@ gs_font *font, const gx_clip_path *pcpath, gs_text_enum_t **ppte) [OPTIONAL] -

    +

    Begin processing text, by creating a state structure and storing it in *ppte. The parameters of text_begin are as follows:
    @@ -2774,9 +2801,9 @@ procedures, which in turn call the procedures in the text enumerator.

    int gs_text_process(gs_text_enum_t *pte)
    -

    Continue processing text. This procedure may return 0 or a negative +

    Continue processing text. This procedure may return 0 or a negative error code as usual, or one of the following values (see -gstext.h for details).

    +gstext.h for details).
    pis
    @@ -2787,14 +2814,15 @@ error code as usual, or one of the following values (see
    TEXT_PROCESS_RENDERThe client has asked to intervene between characters. This is used for cshow and kshow.
    +
    int gs_text_release(gs_gstate * pgs, gs_text_enum_t *pte, -client_name_t cname)

    Finish processing text and release +client_name_t cname)

    Finish processing text and release all associated structures. Clients must call this procedure after gs_text_process returns 0 or an error, and may call it at -any time.

    +any time.

    @@ -2840,9 +2868,9 @@ if the glyph can't be translated to Unicode.

    int (*get_bits_rectangle)(gx_device *dev, const gs_int_rect *prect, gs_get_bits_params_t *params) [OPTIONAL]
    -

    +
    Read a rectangle of bits back from the device. The params -structure consists of:

    +structure consists of:

    @@ -2865,7 +2893,11 @@ willing to accept. (If the client has more flexibility, the implementation may be able to return the data more efficiently, by avoiding representation conversions.) The options are divided into groups.

    -
    + +
    + +
    +
    alignment
    Specifies whether the returned data must be aligned in the normal manner for bitmaps, or whether unaligned data are acceptable.
    @@ -2910,7 +2942,9 @@ the standard color space. (Native device pixels use
    Specifies whether alpha channel information should be returned as the first component, the last component, or not at all. Note that for devices that have no alpha capability, the returned alpha values will be all 1s. -
    + + +

    The client may set more than one option in each of the above groups; the diff --git a/doc/Fonts.htm b/doc/Fonts.htm index cca8bc990..5e0680855 100644 --- a/doc/Fonts.htm +++ b/doc/Fonts.htm @@ -4,13 +4,13 @@ - + Fonts and Font Facilities Supplied with Ghostscript -

    Ghostscript documentation

    +
    diff --git a/doc/GPDL.htm b/doc/GPDL.htm index 78af95e93..3b127150e 100644 --- a/doc/GPDL.htm +++ b/doc/GPDL.htm @@ -4,13 +4,13 @@ - + The GhostPDL Interpreter Framework -

    Ghostscript documentation

    +
    diff --git a/doc/History9.htm b/doc/History9.htm index 6cbab63d8..a3887c07d 100644 --- a/doc/History9.htm +++ b/doc/History9.htm @@ -4,13 +4,13 @@ - + History of Ghostscript versions 9.n -

    Ghostscript documentation

    +
    @@ -85,7 +85,7 @@ This document is a record of changes in Ghostscript releases numbered 9.xx.

    Version 9.55.0 (2021-09-27)

    Highlights in this release include:

      -

      This release includes the fix for the %pipe% security issue (CVE-2021-3781). +

    • This release includes the fix for the %pipe% security issue (CVE-2021-3781).
    • New PDF Interpreter: This is an entirely new implementation written in C (rather than diff --git a/doc/Install.htm b/doc/Install.htm index 6e2f88c1c..685dec030 100644 --- a/doc/Install.htm +++ b/doc/Install.htm @@ -4,13 +4,13 @@ - + How to Install Ghostscript -

      Ghostscript documentation

      +
      @@ -62,6 +62,8 @@ platform-specific. See below for details.
    • Initialization files that Ghostscript reads in when it starts up; these are the same on all platforms.
    • + +
      • gs_*.ps unless Ghostscript was compiled using the "compiled initialization files" option. See the documentation of @@ -77,6 +79,7 @@ appropriate Fontmap.xxx for your platform), unless you plan always to invoke Ghostscript with the -dNOFONTMAP switch.
      +
    • Fonts, for rendering text. These are platform-independent, but if you already have fonts of the right kind on your platform, @@ -183,24 +186,24 @@ no responsibility for RPMs created by others.

      We usually distribute Ghostscript releases for Windows as a binary installer, for the convenience of most users.

      -

      Windows 3.1 (16-bit)

      +

      Windows 3.1 (16-bit)

      The last version to run on 16-bit Windows 3.1 was Ghostscript 4.03.

      -

      Windows 95, 98, Me

      +

      Windows 95, 98, Me

      The last version to be available as a binary for Windows 95/98/Me was 8.60. Although building from source with Visual Studio 2003 should produce a working binary for those versions.

      -

      Windows NT4, 2000, XP, 2003 or Vista (32-bit)

      +

      Windows NT4, 2000, XP, 2003 or Vista (32-bit)

      The installer is normally named gs###w32.exe, where ### is the release number (e.g., 871 for Ghostscript 8.71, 910 for Ghostscript 9.10).

      -

      Windows XP x64 edition, 2003 or Vista (64-bit)

      +

      Windows XP x64 edition, 2003 or Vista (64-bit)

      The x64 installer is normally named gs###w64.exe @@ -351,28 +354,30 @@ a different location so adjust the following commands accordingly.

    • Download the fonts and unpack them into DISK1:[DIR.GHOSTSCRIPT.LIB].
    • -
    • Enable access to the program and support files for all users with:
    • +
    • Enable access to the program and support files for all users with:
       $ set file/prot=w:re DISK1:[DIR]GHOSTSCRIPT.dir
       $ set file/prot=w:re DISK1:[DIR.GHOSTSCRIPT...]*.*
       
      - +
    • Optionally, add the Ghostscript help instructions to your system wide -help file:
    • +help file:
       $ lib/help sys$help:HELPLIB.HLB DISK1:[DIR.GHOSTSCRIPT.DOC]GS-VMS.HLP
       
      +
    • Lastly, add the following lines to the appropriate system wide or user -specific login script.
    • +specific login script.
       $ define gs_exe DISK1:[DIR.GHOSTSCRIPT.BIN]
       $ define gs_lib DISK1:[DIR.GHOSTSCRIPT.EXE]
       $ gs :== $gs_exe:gs.exe
       
      +
    diff --git a/doc/Internal.htm b/doc/Internal.htm index d40b454e7..3b26fe289 100644 --- a/doc/Internal.htm +++ b/doc/Internal.htm @@ -4,13 +4,13 @@ - + Ghostscript Internal Operators -

    Ghostscript documentation

    +
    @@ -49,7 +49,7 @@
    <name> <array> .makeoperator <operator>
    Constructs and returns a new operator that is actually the given procedure in disguise. The name is only used for printing. The operator -has the executable attribute.
    +has the executable attribute.

    Operators defined in this way do one other thing besides running the @@ -57,6 +57,9 @@ procedure: if an error occurs during the execution of the procedure, and there has been no net reduction in operand or dictionary stack depth, the operand or dictionary stack pointer respectively is reset to its position at the beginning of the procedure.

    + + + diff --git a/doc/Language.htm b/doc/Language.htm index df8984a5e..7691101df 100644 --- a/doc/Language.htm +++ b/doc/Language.htm @@ -4,13 +4,13 @@ - + Ghostscript and the PostScript Language -

    Ghostscript documentation

    +
    @@ -588,12 +588,12 @@ current when beginning the layer. THIS AREA IS SUBJECT TO CHANGE.

    Begins a new transparency group. The ll/ur coordinates are the bounding box of the group in the current user coordinate system. paramdict has the following keys:
    -
    +
    /Isolated
    (optional) Boolean; default value = false.
    /Knockout
    (optional) Boolean; default value = false.
    -
    +
    @@ -609,7 +609,7 @@ onto the group that now becomes current. The ll/ur coordinates are the bounding box of the mask in the current user coordinate system. paramdict has the following keys: -
    +
    /Subtype
    (required) Name, either /Alpha or /Luminosity.
    @@ -617,16 +617,18 @@ are the bounding box of the mask in the current user coordinate system.
    (optional) Array of number.
    /TransferFunction
    (optional) Function object (produced by applying -.buildfunction to a Function dictionary).
    -
    +.buildfunction to a Function dictionary). +

    The cs_set parameter is a boolean indicating whether the color space for the mask group is the current color space in the graphics state, or whether mask group color space should be inherited from the previous group in the transparency group stack. In general, for the most consistent results, it is recommended that this be set to true, and the intended color space set in the graphics state prior to the .begintransparencymaskgroup -call. +call.

    +
    +
    <mask#> .endtransparencymask -
    Ends the current transparency mask group, compositing the mask group being ended @@ -778,7 +780,7 @@ pushes false on the stack and returns, rather than causing an error.
    <string> <file>
    Creates and opens a temporary file like the file operator, also returning the file name. There -are three cases for the <prefix_string|null> operand:
    +are three cases for the <prefix_string|null> operand:
    • null: create the file in the same directory and with the @@ -795,46 +797,48 @@ temporary file might be named /tmp/xxa1234.
    • <prefix_string> as the first part of the file name. E.g., if <prefix_string> is /my/tmpdir/zz, the temporary file might be named -/my/tmpdir/zza1234. +/my/tmpdir/zza1234.

      + When running in SAFER mode, the absolute path must be one of the strings on the permit file writing list -(see -dSAFER) .

      +(see -dSAFER) .

    - +

    Ghostscript also supports the following IODevice in addition to a subset of those defined in the Adobe documentation:

      -
    • -%pipe%command, which opens a pipe on the given command. -This is supported only on operating systems that provide -popen (primarily Unix systems, and not all of those).
    • -
    • -%disk#%, which emulates the %disk0 -through %disk9 devices on some Adobe PostScript printers. This pseudo -device provides a flat filenaming system with a user definable location -for the files (/Root). These devices will only be present if the -diskn.dev feature is specified during the build.
    • - -

      This feature is intended to allow compatibility with font downloaders -that expect to store fonts on the %disk device of the printer.

      -

      -Use of the %disk#% devices requires that the location of files be given -by the user setting the /Root device parameter. The syntax for setting -the /Root parameter is:

      -    mark /Root (directory_specification) (%disk#) .putdevparams
      -
      -For example, to store the files of the %disk0 device on the directory -/tmp/disk0, use:
      -    mark /Root (/tmp/disk0/) (%disk0) .putdevparams
      -

      -

      The files will be stored in the specified directory with arbitrary names. -A mapping file is used to store the association between the file -names given for the file operations on the %diskn# device and the file -that resides in the /Root directory.

      +
    • + %pipe%command, which opens a pipe on the given command. + This is supported only on operating systems that provide + popen (primarily Unix systems, and not all of those).
    • +
    • + %disk#%, which emulates the %disk0 + through %disk9 devices on some Adobe PostScript printers. This pseudo + device provides a flat filenaming system with a user definable location + for the files (/Root). These devices will only be present if the + diskn.dev feature is specified during the build. + +

      This feature is intended to allow compatibility with font downloaders + that expect to store fonts on the %disk device of the printer.

      +

      + Use of the %disk#% devices requires that the location of files be given + by the user setting the /Root device parameter. The syntax for setting + the /Root parameter is:

      +        mark /Root (directory_specification) (%disk#) .putdevparams
      +    
      + For example, to store the files of the %disk0 device on the directory + /tmp/disk0, use:
      +        mark /Root (/tmp/disk0/) (%disk0) .putdevparams
      +    

      +

      The files will be stored in the specified directory with arbitrary names. + A mapping file is used to store the association between the file + names given for the file operations on the %diskn# device and the file + that resides in the /Root directory.

      +

    Miscellaneous operators

    @@ -917,7 +921,7 @@ is useful even with release builds.

    - .setsafe -
    If Ghostscript is started with -dNOSAFER or -dDELAYSAFER, this operator can be used to enter SAFER -mode (see -dSAFER)
    +mode (see -dSAFER)

    The following is deprecated, see -dSAFER

    @@ -930,6 +934,7 @@ SAFER was not in operation.

    Note: This uses setpagedevice to change .LockSafetyParams, so the page will be erased as a side effect of this operator

    +
    @@ -1021,8 +1026,7 @@ activated, false if not.
    <dict> .genordered <string> (/OutputType /ThreshString).
    <dict> .genordered <array> (/OutputType /TOSArray).
    This operator creates an ordered dither screening pattern with the parameters from the dictionary, returning (by default) a PostScript HalftoneType 3 (threshold array based) dictionary suitable for use with sethalftone or as a component Halftone of a HalftoneType 5 Halftone dictionary. The /OutputType parameter can also select other than Halftone Type 3 as the return paramter, -<dict> has the following keys (all are optional): -
    +<dict> has the following keys (all are optional):
    /Frequency
    Integer; default value = 75
    /Angle
    @@ -1051,10 +1055,6 @@ threshold array bytes (same as /Thresholds of the Type3 dictionary).
    First element is the width, next is the height, followed by pairs X, then Y, of the turn-on-sequence of the threshold array. This information can be used to construct a threshold array with a transfer function "pickled into" the threshold array, which is useful if the turn-on-sequence has more than 256 pairs. Refer to toolbin/halftone/thresh_remap for more information.
    -
    -
    -
    -
    @@ -1278,7 +1278,7 @@ bytes. Type 1 Font Format documentation. The seed_integer must be 55665 or 4330 as described just above. PDF interpreters don't skip space characters after operator eexec. Use keep_spaces = true for -decoding embedded PDF fonts. Recognized dictionary keys are: +decoding embedded PDF fonts. Recognized dictionary keys are:
    seed <16-bit integer> (required)
    @@ -1286,6 +1286,7 @@ decoding embedded PDF fonts. Recognized dictionary keys are: eexec <bool> (default=false)
    keep_spaces <bool> (default=false)
    +
    @@ -1306,7 +1307,7 @@ are converted to hex; if false, binary packets are not converted.
    <target> <dict> /PixelDifferenceEncode filter <file>
    <source> <dict> /PixelDifferenceDecode filter <file>
    Implements the Predictor=2 pixel-differencing option of the LZW -filters. Recognized keys are:
    +filters. Recognized keys are:
    Colors <integer> (1 to 4, default=1)
    @@ -1316,12 +1317,13 @@ filters. Recognized keys are:

    See the Adobe PDF Reference Manual for details.

    +
    <target> <dict> /PNGPredictorEncode filter <file>
    <source> <dict> /PNGPredictorDecode filter <file>
    -

    Implements the "filter" algorithms of the +

    Implements the "filter" algorithms of the Portable Network Graphics (PNG) graphics format. Recognized keys are:

    @@ -1373,7 +1375,7 @@ specification

    <source> /TBCPDecode filter <file>
    Create filters that implement the Adobe Tagged Binary Communications Protocol. See Adobe documentation for details.
    -
    +
    <target> /zlibEncode filter <file>
    @@ -1411,7 +1413,7 @@ is the inverse mapping of the string for the
    These filters encode and decode data using Huffman codes. Since these filters aren't used anywhere, we don't document them further, except to note the recognized dictionary keys, which must be set identically for encoding -and decoding:
    +and decoding:
    FirstBitLowOrder <bool> (default=false)
    @@ -1420,6 +1422,7 @@ and decoding: EncodeZeroRuns <int> (default=256)
    Tables <int_array>
    +
    @@ -1428,11 +1431,12 @@ and decoding: method, which we've heard is also used in the popular bzip2 compression application. See http://sources.redhat.com/bzip2/ -for more information. The only recognized dictionary key is: +for more information. The only recognized dictionary key is:
    BlockSize <integer> (default=16384)
    +

    @@ -1451,11 +1455,12 @@ devices:
    This parameter allows for improved system security by preventing PostScript programs from being able to change potentially dangerous device paramters such as OutputFile. This parameter cannot be set false -if it is already true.
    +if it is already true.

    If this parameter is true for the current device, attempt to set a new device that has .LockSafetyParams false will signal an invalidaccess error.

    +
    @@ -2054,60 +2059,51 @@ document these officially, so that in future the functionality would be availabl

    The following functions existed in the original PDF interpreter and have been replicated for the new interpreter. It should be possible to use these for the forseeable future.

    - +
    <file> runpdf -
    Called from the modified PostScript run operator (which copies stdin to a temp file if required). Checks for PDF collections, processes all requested pages.
    -

    <file> runpdfbegin -
    +
    <file> runpdfbegin -
    This must be called before performing any further operations. Its exact action depends on which -interpreter is being used, but it essentially sets up the environment to process the file as a PDF

    - -

    <int> pdfgetpage <pagedict> | <null>
    +interpreter is being used, but it essentially sets up the environment to process the file as a PDF +
    <int> pdfgetpage <pagedict> | <null>
    int is a number from 1 to N indicating the desired page number from the PDF file. Returns the a dictionary containing various informational key/value pairs. - If this fails, returns a null object.

    - -

    - pdfshowpage_init -
    + If this fails, returns a null object. +
    - pdfshowpage_init -
    In the PostScript PDF interpreter this simply adds 1 to the /DSCPageCount value in a dictionary. -It has no effect in the new PDF interpreter but is maintained for backwards compatibility.

    +It has no effect in the new PDF interpreter but is maintained for backwards compatibility. -

    <pagedict> pdfshowpage_setpage <pagedict>
    +
    <pagedict> pdfshowpage_setpage <pagedict>
    Takes a dictionary as returned from pdfgetpage, extracts various parameters from it, and sets the media size for the page, taking into - account the boxes, and requested Box, Rotate value and PDFFitPage.

    - -

    <pagedict> pdfshowpage_finish -
    + account the boxes, and requested Box, Rotate value and PDFFitPage. +
    <pagedict> pdfshowpage_finish -
    Takes a dictionary as returned from pdfgetpage, renders the page content - executes showpage to transfer the rendered content to the device.

    - -

    - runpdfend -
    -
    Terminates the PDF processing, executes restore and various cleanup activities.

    - -

    <file> pdfopen <dict>
    + executes showpage to transfer the rendered content to the device. +
    - runpdfend -
    +
    Terminates the PDF processing, executes restore and various cleanup activities.
    +
    <file> pdfopen <dict>
    Open a PDF file and read the header, trailer - and cross-reference.

    - -

    <dict> pdfclose -
    + and cross-reference. +
    <dict> pdfclose -
    Terminates processing the original PDF file object. The dictionary parameter - should be the one returned from pdfopen

    - -

    <pagedict> pdfshowpage -
    + should be the one returned from pdfopen +
    <pagedict> pdfshowpage -
    Takes a dictionary returned from pdfgetpage and calls the pdfshowpage_init pdfshowpage_setpage, pdfshowpage_finish trio to start the page, set up the - media and render the page.

    - -

    <int> <int> dopdfpages -
    + media and render the page. +
    <int> <int> dopdfpages -
    The integers are the first and last pages to be run from the file. Runs a loop from the fist integer to the last. NOTE! If the current dictionary contains a PDFPageList array then we 'get' the entry from the array corresponding to the current loop index, and use that to determine whether we should draw the page. Otherwise we - simply draw the page. Uses pdfshowpage to actually render the page.

    - -

    - runpdfpagerange <int> <int>
    + simply draw the page. Uses pdfshowpage to actually render the page. +
    - runpdfpagerange <int> <int>
    Processes the PostScript /FirstPage, /LastPage and /PageList parameters. These are used together to build an internal array of page numbers to run, which is used by dopdfpages to actually process the pages if PageList is present, - and a FirstPage and LastPage value. Despite the name this function does not actually 'run' any pages at all.

    + and a FirstPage and LastPage value. Despite the name this function does not actually 'run' any pages at all.

    Normal operation simply calls runpdf with an opened-for-read PostScript file object. The table below shows the normal calling sequence

    @@ -2192,28 +2188,22 @@ would be necessary to set /PageHasTransparency before drawing the first PDF page using a small number of custom PostScript operators. These operators do not exist in standard PostScript; they are specific to the Ghostscript implementation. These operators are documented here for the benefit of any developers wishing to use them directly.

    + -

    dict .PDFInit <PDFContext>
    +
    dict .PDFInit <PDFContext>
    Initialises an instance of the PDF interpreter. dict is an optional dictionary that contains any interpreter-level switches, such as PDFDEBUG, this is used to set the initial state of the PDF interpreter. -The return value is a PDFcontext object which is an opaque object to be used with the other PDF operators.

    - -

    filename PDFcontext .PDFFile -
    +The return value is a PDFcontext object which is an opaque object to be used with the other PDF operators. +
    filename PDFcontext .PDFFile -
    Opens a named file and associates it with the instance of the PDF interpreter. Filename is a string containing a fully qualified path to the PDF file to open, this file must have been made accesible by setting --permit-file-read. -

    - -

    file PDFcontext .PDFStream -
    +
    file PDFcontext .PDFStream -
    Takes an already open (disk-based) file and associates it with the instance of the PDF interpreter. -

    - -

    PDFcontext .PDFClose -
    +
    PDFcontext .PDFClose -
    If the context contains an open PDF file which was opened via the .PDFfile operator, this closes the file. Files associated with the context by the .PDFStream operator are unaffected. Regardless of the source it then shuts down the PDF interpreter and frees the associated memory. -

    - -

    PDFcontext .PDFInfo dict
    +
    PDFcontext .PDFInfo dict
    PDFcontext is a PDFcontext object returned from a previous call to .PDFInit. The returned dictionary contains various key/value pairs with useful file level information:
    @@ -2222,17 +2212,13 @@ The returned dictionary contains various key/value pairs with useful file level /Producer string
    /IsEncrypted boolean
    -

    - -

    PDFcontext .PDFMetadata -
    +
    PDFcontext .PDFMetadata -
    PDFcontext is a PDFcontext object returned from a previous call to .PDFInit. For the benefit of high level devices, this is a replacement for 'process_trailer_attrs' which is a seriously misnamed function now. This function needs to write any required output intents, load and send Outlines to the device, copy the Author, Creator, Title, Subject and Keywords from the Info dict to the output device, copy Optional Content Properties (OCProperties) to the output device. If an AcroForm is present send all its fields and link widget annotations to fields, and finally copy the PageLabels. If we add support for anything else, it will be here too.. -

    - -

    PDFcontext int .PDFPageInfo -
    +
    PDFcontext int .PDFPageInfo -
    The integer argument is the page number to retrieve information for. Returns a dictionary with the following key/value pairs:
    @@ -2250,27 +2236,28 @@ May also contain (if they are present in the Page dictionary) /TrimBox [llx lly urx ury]
    /UserUnit int
    -

    - -

    PDFcontext int .PDFDrawPage -
    + +
    PDFcontext int .PDFDrawPage -
    PDFcontext is a PDFcontext object returned from a previous call to .PDFInit. The integer argument is the page number to be processed. Interprets the page content stream(s) of the specified page using the current graphics state. -

    + -

    PDFcontext int .PDFDrawAnnots -
    +
    PDFcontext int .PDFDrawAnnots -
    PDFcontext is a PDFcontext object returned from a previous call to .PDFInit. The integer argument is the page number to be processed. Renders the Annotations (if any) of the specified page using the current graphics state For correct results, the graphics state when this operator is run should be the same as when PDFDrawPage is executed. -

    +

    Note: The PDFcontext object created by PDFInit must (clearly) have a PDF file associated with it before you can usefully use it. Attempting to use a PDFcontext with any of the processing operators (eg .PDFDrawPage) before using either .PDFStream of .PDFFile to associate a file with the context will result in an error.

    + +
    diff --git a/doc/Lib.htm b/doc/Lib.htm index 4f787cbc7..0424837ad 100644 --- a/doc/Lib.htm +++ b/doc/Lib.htm @@ -4,13 +4,13 @@ - + The Ghostscript Library -

    Ghostscript documentation

    +
    diff --git a/doc/Make.htm b/doc/Make.htm index 6548eee60..62dac5080 100644 --- a/doc/Make.htm +++ b/doc/Make.htm @@ -4,13 +4,13 @@ - + How to Build Ghostscript from Source Code -

    Ghostscript documentation

    +
    @@ -713,7 +713,7 @@ time with the -DDEBUG or
    Deletes all the files created by the build process (relocatables, executables, and miscellaneous temporary files). If you've built an executable and want to save it, move it first to another place, because - "make clean" deletes it.
    ? + "make clean" deletes it.
    @@ -1118,7 +1118,7 @@ on your particular platform and compiler. In fact, that is the first place to check if you build Ghostscript and it crashes or produces obviously incorrect results.

    -

    make tools

    +

    make tools

    You require a make tool which supports separate directories for @@ -1142,11 +1142,11 @@ Ghostscript.

    H-P RISC workstations

    -
      +

      (see Autoconf-based method above)

      - +
      • HP-UX versions before 11.0 do not support POSIX threads. Set SYNC=nosync in the makefile before building.
      • @@ -1160,6 +1160,8 @@ work. If cc on your system doesn't accept the
      • If you use H-P's compiler, be sure you have upgraded to a recent release. Many bizarre symptoms have been reported trying to build Ghostscript with older, buggier compilers, for example:
      • + +
        • The link step fails with a message about "max" not being defined.
        • The build succeeds, but the resulting executable fails to start up, @@ -1168,6 +1170,7 @@ in .registerencoding".
        • The build succeeds, but the resulting executable produces a black background on the first page of output.
        +
      • It is reported that On HPUX 9.* you need at least compiler patch PHSS_5723 and dld.sl patch PHSS_5734 to build Ghostscript. (As of late @@ -1223,7 +1226,7 @@ please read the following carefully.

        • - To make the optimizer allocate enough table space, set
        • + To make the optimizer allocate enough table space, set

          CFLAGS="-Olimit 2500" (for older compilers)
          CFLAGS="-OPT:Olimit=2500" (for newer compilers)

          @@ -1231,7 +1234,7 @@ please read the following carefully.

          MIPSpro compiler version 3.19 is "older", and 7.1 is "newer"; we aren't sure at what point in between the latter syntax was introduced.

          - +
        • With the compiler shipped with Irix 5.2, use the -ansi option.
        • @@ -1252,30 +1255,32 @@ incorrect output and binaries that cause segmentation faults.  Various solutions have been suggested and you may want to try them in this order, until you get a working binary: -
          • -Compile idict.c and isave.c separately -without optimization after doing a normal compile; then relink.e.g.:
          • - -

            -cc -OPT:Olimit=2500 -I. -I./obj -o ./obj/idict.o -c ./idict.c
            - cc -OPT:Olimit=2500 -I. -I./obj -o ./obj/isave.o -c ./isave.c

            - -
          • -Set CFLAGS= (no optimization).
          • - -
          • -Use only -O2.   Compiler produces incorrect output -with -O3 or "-Ofast=ip32 -show".
          • - -
          • -Irix 6.5.1m with MIPSpro compiler 7.2.1.1m, Irix 6.5.3m with MIPSpro -compiler 7.2.1, and probably other 6.5x / 7.2x combinations require -compiling with the -o32 option. Compiling with the (default) --n32 option produces non-working executables. --O2 is OK (possibly except for idict.c), but -not -O3.
          • -
          +
            +
          • + Compile idict.c and isave.c separately + without optimization after doing a normal compile; then relink.e.g.: + +

            + cc -OPT:Olimit=2500 -I. -I./obj -o ./obj/idict.o -c ./idict.c
            + cc -OPT:Olimit=2500 -I. -I./obj -o ./obj/isave.o -c ./isave.c

            +
          • +
          • + Set CFLAGS= (no optimization).
          • + +
          • + Use only -O2.   Compiler produces incorrect output + with -O3 or "-Ofast=ip32 -show".
          • + +
          • + Irix 6.5.1m with MIPSpro compiler 7.2.1.1m, Irix 6.5.3m with MIPSpro + compiler 7.2.1, and probably other 6.5x / 7.2x combinations require + compiling with the -o32 option. Compiling with the (default) + -n32 option produces non-working executables. + -O2 is OK (possibly except for idict.c), but + not -O3.
          • +
          +

        Oracle/Sun

        @@ -1307,13 +1312,14 @@ Solaris 2.3 and later seem to require "EXTRALIBS=-lnsl -lsocket 
      • For Solaris 2.6 (and possibly some other versions), if you set SHARE_LIBPNG=1, SHARE_ZLIB=1, or -SHARE_JPEG=1, you may need to set
      • +SHARE_JPEG=1, you may need to set

        XLDFLAGS=-R /usr/local/xxx/lib:/usr/local/lib

        using the full path names of the relevant directories.

        +
      • Solaris 2.n uses /usr/openwin/share/include for the X11 libraries rather than /usr/local/X/include.
      • diff --git a/doc/News.htm b/doc/News.htm index 40820804f..2753150d5 100644 --- a/doc/News.htm +++ b/doc/News.htm @@ -4,13 +4,13 @@ - + Recent Changes in Ghostscript -

        Ghostscript documentation

        +
        @@ -40,7 +40,7 @@ overview.

        Version 9.55.0 (2021-09-27)

        Highlights in this release include:

          -

          This release includes the fix for the %pipe% security issue (CVE-2021-3781). +

        • This release includes the fix for the %pipe% security issue (CVE-2021-3781).
        • New PDF Interpreter: This is an entirely new implementation written in C (rather than diff --git a/doc/Ps-style.htm b/doc/Ps-style.htm index 4820f6cc8..206effe1d 100644 --- a/doc/Ps-style.htm +++ b/doc/Ps-style.htm @@ -4,13 +4,13 @@ - + Ghostscript PostScript Coding Guidelines -

          Ghostscript documentation

          +
          diff --git a/doc/Ps2epsi.htm b/doc/Ps2epsi.htm index 2c449a704..dbdfe7578 100644 --- a/doc/Ps2epsi.htm +++ b/doc/Ps2epsi.htm @@ -4,13 +4,13 @@ - + Convert PostScript to Encapsulated PostScript Interchange Format -

          Ghostscript documentation

          +
          diff --git a/doc/Psfiles.htm b/doc/Psfiles.htm index 95c72eb7c..a916bb1cb 100644 --- a/doc/Psfiles.htm +++ b/doc/Psfiles.htm @@ -4,13 +4,13 @@ - + PostScript Files Distributed with Ghostscript -

          Ghostscript documentation

          +
          @@ -56,7 +56,6 @@ These files define the Encodings known to Ghostscript. All of them except gs_std_e.ps and gs_il1_e.ps are loaded only if referred to. However some are additionally built into gscencs.c. -
          PostScript Encodings:
          @@ -78,7 +77,7 @@ the Ghostscript source distribution.
          -
          PDF Encodings: +PDF Encodings:
          These files are found in the Resource/Init subdirectory of the Ghostscript source distribution.
          @@ -132,7 +131,7 @@ the Ghostscript source distribution.
          -
    +

    These files are found in the Resource/Init subdirectory of the Ghostscript source distribution.

    diff --git a/doc/Readme.htm b/doc/Readme.htm index fdff86899..718220485 100644 --- a/doc/Readme.htm +++ b/doc/Readme.htm @@ -4,13 +4,13 @@ - + Overview of Ghostscript -

    Ghostscript documentation

    +
    diff --git a/doc/Release.htm b/doc/Release.htm index c857ce950..135bef9d4 100644 --- a/doc/Release.htm +++ b/doc/Release.htm @@ -4,13 +4,13 @@ - + How to Prepare a Ghostscript Release -

    Ghostscript documentation

    +
    @@ -716,13 +716,13 @@ class="offsite">http://ghostscript.com/download/ Do the steps for distributions in general.
      -
    • MS Windows source and executables:
    • +
    • MS Windows source and executables:
       gs###w32.exe
       gs###w64.exe
       
      - +
    • Third-party libraries, as links (upload these if not installed), where $$$ et al. refer to the version number of the library, which should be the latest compatible release of the library and should be @@ -743,13 +743,13 @@ the original name of the upstream file.

      • Fonts, where $.$$ refers to the most recent version -number of the fonts:
      • +number of the fonts:
         ghostscript-fonts-other-$.$.tar.gz -> ../fonts/ghostscript-fonts-other-$.$.tar.gz
         ghostscript-fonts-std-$.$.tar.gz -> ../fonts/ghostscript-fonts-std-$.$.tar.gz
         
        - +

      diff --git a/doc/SavedPages.htm b/doc/SavedPages.htm index 11c277aa8..5ba4e2d4f 100644 --- a/doc/SavedPages.htm +++ b/doc/SavedPages.htm @@ -4,13 +4,13 @@ - + Using Saved Pages ( --saved-pages=... ) -

      Ghostscript documentation

      +
      diff --git a/doc/Search.htm b/doc/Search.htm index 1fef94948..e84925303 100644 --- a/doc/Search.htm +++ b/doc/Search.htm @@ -4,7 +4,7 @@ - + Search Ghostscript.com + + + + + + + + + + + diff --git a/doc/language-bindings/c-sharp-ghost-api.html b/doc/language-bindings/c-sharp-ghost-api.html index b98732afb..b67442d42 100644 --- a/doc/language-bindings/c-sharp-ghost-api.html +++ b/doc/language-bindings/c-sharp-ghost-api.html @@ -4,7 +4,7 @@ - + diff --git a/doc/language-bindings/c-sharp-ghost-mono.html b/doc/language-bindings/c-sharp-ghost-mono.html index 33c2ef83b..0d4380d2e 100644 --- a/doc/language-bindings/c-sharp-ghost-mono.html +++ b/doc/language-bindings/c-sharp-ghost-mono.html @@ -4,7 +4,7 @@ - + diff --git a/doc/language-bindings/c-sharp-ghost-net.html b/doc/language-bindings/c-sharp-ghost-net.html index 1308abf62..69af73169 100644 --- a/doc/language-bindings/c-sharp-ghost-net.html +++ b/doc/language-bindings/c-sharp-ghost-net.html @@ -4,7 +4,7 @@ - + diff --git a/doc/language-bindings/c-sharp-intro.html b/doc/language-bindings/c-sharp-intro.html index bfcbeeade..a9f6e5adf 100644 --- a/doc/language-bindings/c-sharp-intro.html +++ b/doc/language-bindings/c-sharp-intro.html @@ -4,7 +4,7 @@ - + diff --git a/doc/language-bindings/demo-code.html b/doc/language-bindings/demo-code.html index 876e3cb78..7b71c2db1 100644 --- a/doc/language-bindings/demo-code.html +++ b/doc/language-bindings/demo-code.html @@ -4,7 +4,7 @@ - + diff --git a/doc/language-bindings/index.html b/doc/language-bindings/index.html index 7758abd72..3a793b1e6 100644 --- a/doc/language-bindings/index.html +++ b/doc/language-bindings/index.html @@ -4,7 +4,7 @@ - + diff --git a/doc/language-bindings/java-gsjavajar.html b/doc/language-bindings/java-gsjavajar.html index e11337fce..68877f484 100644 --- a/doc/language-bindings/java-gsjavajar.html +++ b/doc/language-bindings/java-gsjavajar.html @@ -4,7 +4,7 @@ - + diff --git a/doc/language-bindings/java-intro.html b/doc/language-bindings/java-intro.html index 210985211..cb6258332 100644 --- a/doc/language-bindings/java-intro.html +++ b/doc/language-bindings/java-intro.html @@ -4,7 +4,7 @@ - + diff --git a/doc/language-bindings/python-gsapi.html b/doc/language-bindings/python-gsapi.html index d6d97ec3e..0638ba56e 100644 --- a/doc/language-bindings/python-gsapi.html +++ b/doc/language-bindings/python-gsapi.html @@ -4,7 +4,7 @@ - + diff --git a/doc/language-bindings/python-intro.html b/doc/language-bindings/python-intro.html index 6236219b3..338ff1e44 100644 --- a/doc/language-bindings/python-intro.html +++ b/doc/language-bindings/python-intro.html @@ -4,7 +4,7 @@ - + diff --git a/doc/sample_downscale_device.htm b/doc/sample_downscale_device.htm index 4ba2741c1..65b1d36f6 100644 --- a/doc/sample_downscale_device.htm +++ b/doc/sample_downscale_device.htm @@ -4,13 +4,13 @@ - + Ghostscript: Sample CMYK 32-bit Device that Supports Post Rendering Processing -

      Ghostscript documentation

      +
      diff --git a/doc/site.js b/doc/site.js index f7cb7435a..e805969f0 100644 --- a/doc/site.js +++ b/doc/site.js @@ -11,4 +11,4 @@ switch(window.location.protocol) { default: break; -} \ No newline at end of file +} diff --git a/doc/subclass.htm b/doc/subclass.htm index c031cfb56..278011649 100644 --- a/doc/subclass.htm +++ b/doc/subclass.htm @@ -4,13 +4,13 @@ - + Ghostscript: Device Subclassing -

      Ghostscript documentation

      +
      diff --git a/doc/thirdparty.htm b/doc/thirdparty.htm index 3c4d74df5..06429da52 100644 --- a/doc/thirdparty.htm +++ b/doc/thirdparty.htm @@ -4,13 +4,13 @@ - + Third Party Libraries Used by Ghostscript and GhostPDL -

      Ghostscript documentation

      +
      -- cgit v1.2.1
    options