Copyright (C) 1990, 1995, 1996 Aladdin Enterprises. All rights reserved. This file is part of GNU Ghostscript. GNU Ghostscript is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License for full details. Everyone is granted permission to copy, modify and redistribute GNU Ghostscript, but only under the conditions described in the GNU General Public License. A copy of this license is supposed to have been given to you along with GNU Ghostscript so you can know your rights and responsibilities. It should be in a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. Aladdin Enterprises is not affiliated with the Free Software Foundation or the GNU Project. GNU Ghostscript, as distributed by Aladdin Enterprises, does not depend on any other GNU software. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - This file, current.txt, describes problems and new features in the current release of Ghostscript. This file describes version 4.03 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. On Unix systems, if your system has libpng and/or libgz installed, switches in the Ghostscript makefiles allow you to use the installed libraries instead of having to compile your own copies. 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.