   Copyright (C) 1990, 1995, 1996 Aladdin Enterprises.  All rights reserved.
  
  This file is part of Aladdin Ghostscript.
  
  Aladdin Ghostscript is distributed with NO WARRANTY OF ANY KIND.  No author
  or distributor accepts any responsibility for the consequences of using it,
  or for whether it serves any particular purpose or works at all, unless he
  or she says so in writing.  Refer to the Aladdin Ghostscript Free Public
  License (the "License") for full details.
  
  Every copy of Aladdin Ghostscript must include a copy of the License,
  normally in a plain ASCII text file named PUBLIC.  The License grants you
  the right to copy, modify and redistribute Aladdin Ghostscript, but only
  under certain conditions described in the License.  Among other things, the
  License requires that the copyright notice and this notice be preserved on
  all copies.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

This file, current.txt, describes problems and new features in the current
release of Ghostscript.  This file describes version 4.0 of Ghostscript.

For an overview of Ghostscript and a list of the documentation files, see
README.

New features (since release 3.53)
============

This is not a complete list of new features: see NEWS for details.

New scripts and utilities:
	pdf2ps input.pdf output.ps
		Converts PDF to PostScript, similar to Adobe's Acrobat
		Exchange.
	ps2pdf input.ps output.pdf
		Converts PostScript to PDF, similar to Adobe's Acrobat
		Distiller.  (It doesn't do a very good job just yet.)

setpagedevice is (finally) implemented.

AccurateScreens is now implemented.

The poor-quality free fonts have been replaced by good ones.

Anti-aliased text and graphics are available for PBM output and for display
output on MS Windows.

PostScript Type 42 (embedded TrueType) fonts are fully supported (but the
output quality is not very good, because the current TrueType rasterizer
ignores hints).  Real TrueType fonts (.TTF) are also supported if
Ghostscript is compiled with the ttfont feature included (which is the
default on MS Windows platforms).

The driver interface has been expanded so that drivers can capture graphical
"objects" at a high level rather than as rasters.  See drivers.txt and
gxdevice.h for details.

Changes
=======

Usage
-----

Fontmap and [GS_]FONTPATH now work differently, and more sensibly.  See NEWS
for details.

Building
--------

Building gs386 with the Watcom compiler now requires using the wmakebat
script rather than simply calling wmake[l].

Internal
--------

The MS Windows implementation is now fully DLL-based.

Known problems
==============

Usage
-----

On a MS-DOS system, interrupting the interpreter by typing ^C doesn't
restore the display mode.

Limitations
-----------

serialnumber returns the same value in all copies.

User names (a Display PostScript facility) are not implemented.

Some floating point exceptions terminate the interpreter, rather than
producing a limitcheck error.

The DCTEncode filter disregards the Blend parameter, and uses different
QuantTables and HuffTables from Adobe's.

The DCT filters do not support nonintegral sample ratios, and do not allow
Sum(HS*VS)>10, regardless of the value of the Relax parameter.

The size of the execution stack cannot be changed dynamically.  (However,
the sizes of the operand and dictionary stacks can be changed.)

Separation color spaces are implemented, but devices that actually produce
color separations are not supported.  The special color separations All and
None, and the primary separations (Red, Green, etc.), are not supported.

execform and ucache are implemented, but they do not actually do any
caching; setucacheparams and ucachestatus are dummies.  (This only impacts
performance, not functionality.)

The image operator only honors the Interpolate flag in the image
dictionary if the combined transformation (ImageMatrix + CTM) doesn't
involve rotation, skewing, or X-reflection.

Any path building operation (moveto, lineto, curveto) that would generate a
device coordinate larger than +/-2^19 will cause a limitcheck.

Graphics bugs
-------------

The implementation only looks at the PaintType of the font when doing
show, not when doing charpath.  Because of this, stroked fonts don't work
correctly with charpath.

arcto gives an error for negative radii.

Opening more than one window device at the same time doesn't work.
This is the case for both X Windows and Microsoft Windows.

cshow doesn't work with composite fonts.

Non-graphics bugs
-----------------

The %statementedit pseudo-file is equivalent to %lineedit.  As a
consequence, the interactive interpreter requires that every statement fit
on a line, i.e., you can't have an unpaired (, {, or <.

The following operators that expect arrays won't accept packed arrays:
	definefont (Subrs (type 1 fonts))

Syntax errors occurring within a binary token do not produce the error
message specified by the Adobe documentation.

restore doesn't restore the user parameters.

1 vmreclaim is equivalent to 2 vmreclaim -- there is no separate GC for
local VM.
