📄 history3.htm
字号:
Fixes bugs:
- gettimeofday takes 2 arguments on SVR4 systems more recent than
SVR4.0. (make.doc, ansihead.mak, cc-head.mak, gcc-head.mak, time_.h)
Changes the default Unix data installation directory from /usr/local/lib to
/usr/local/share, which seems to be favored by more recent Unix systems
(except for some Linux versions, which still use /usr/local/lib, and BSD/OS,
which puts Ghostscript in /usr/contrib/lib.) (ansihead.mak, cc-head.mak,
gcc-head.mak, ugcclib.mak)
Changes the unset commands in the Unix script to assignments, because a few
older Unix shells don't provide unset. (unixtail.mak)
<h2><a name="V3.68p2_Drivers"></a>Drivers</h2>
Fixes bugs:
- An #include incorrectly referred directly to a system header.
(gdevpdft.c)
- CMYK devices took an excessive amount of time clearing the page to
white. (gdevm32.c)
Adds a compile-time option to the 'bit' drivers to remove top and bottom
whitespace. This change was required in order to track down a customer bug.
(gdevbit.c)
<h2><a name="V3.68p2_Interpreter"></a>Interpreter</h2>
Updates the interpreter for the split in the gstate API. (igstate.h)
<h2><a name="V3.68p2_Streams"></a>Streams</h2>
Fixes bugs:
- Some compilers don't define NULL widely enough. (spngp.c)
<h2><a name="V3.68p2_Library"></a>Library</h2>
Fixes bugs:
- There was a minor typo (& for &&) that didn't affect execution.
(gxccman.c)
- There was a trailing comma in an enumeration. (gsiparam.h)
- Internal and public interfaces weren't separated properly. THIS
IS A NON-BACKWARD-COMPATIBLE CHANGE for clients using certain undocumented
interfaces to the graphics state. (gsstate.h, gxstate.h, gzstate.h,
gsstate.c)
- A 'private' declaration was missing (yet again). (gxclimag.c)
<h1><a name="Version3.68p1"></a>Version 3.68 patch 1 (5/10/96)</h1>
This is the first bug fix (patch) incremental release for the next general
release.
<h2><a name="V3.68p1_Procedures"></a>Procedures</h2>
Fixes bugs:
- Many Windows-specific files were omitted from the previous
fileset: dw*.rc, dw*.cpp.
<h1><a name="Version3.68"></a>Version 3.68 (limited) (5/9/96)</h1>
This release cleans up the new Windows files, mostly implements the
high-level driver API for bitmap images, and adds practical strip
(AccurateScreens) halftoning. This is the first "serious beta" fileset for
the next general release. It still has more problems than I would have
liked.
<h2><a name="V3.68_Documentation"></a>Documentation</h2>
Fixes bugs:
- The names of the executable files for MS Windows were out of date.
(make.doc)
- gxcindex.h still referred to "drawing color". (gxcindex.h)
- The name of the default font directory for Unix systems was
incorrect. (make.doc)
Moves the list of files required for installation, and some other
installation instructions, from make.doc to install.doc. (install.doc,
make.doc)
Adds a description of the PNGPredictor filters. (language.doc)
Updates the documentation of the higher-level driver procedures to match the
specification changes. (drivers.doc)
Documents the change in the Watcom build procedure. (make.doc)
Improves the documentation of bitmap IDs. (gxbitmap.h)
Adds documentation for the new strip_tile_rectangle and strip_copy_rop
driver procedures. (drivers.doc)
Changes the few remaining direct FTP addresses in README to URLs. (README)
Notes that zlib does not compile correctly on IRIX 6.n with optimization.
(make.doc)
Adds references to PDF and TrueType fonts to language.doc. (language.doc)
Updates fonts.doc to remove references to fonts.mak. (fonts.doc)
Describes how to substitute an LZW compressor for the LZW-compatible
compressor provided in the standard release. (make.doc)
<h2><a name="V3.68_Procedures"></a>Procedures</h2>
Fixes bugs:
- Some lines had exceeded the 120-character limit of the
MS-DOS shell. (int.mak)
- The configuration files weren't generated correctly when CONFIG
wasn't an empty string. (unixhead.mak)
Factors out shared DLL makefile rules into a new file. (bcwin.mak,
bcwin32.mak, dwcommon.mak)
Makes the cp and rm commands into makefile parameters, allowing automatic
generation of build scripts even in the MS-DOS and MS Windows environments
where the shell requires the CALL command for sub-scripts. (*.mak,
genconf.c)
Adds the PDF writer to the default Unix configurations. (ansihead.mak,
cc-head.mak, gcc-head.mak)
Adds TrueType support to all Level 2 configurations. (int.mak)
Removes fonts.mak, which is no longer relevant. (fonts.mak)
Brings the font compilation procedures up to date. (cfonts.mak, int.mak)
<h2><a name="V3.68_Utilities"></a>Utilities</h2>
Fixes bugs:
- There was an extra 'show' in one file. (align.ps)
<h2><a name="V3.68_Drivers"></a>Drivers</h2>
Fixes bugs:
- The bit devices were missing the map_color_rgb procedure.
(gdevbit.c)
- The MS Windows driver sent a redundant message. (gdevmswn.c)
Adds a device that keeps track of the page bounding box. This device is not
included in any standard configuration. (drivers.doc, gdevbbox.h,
gsmatrix.h, gsstruct.h, gxdevice.h, gdevbbox.c, gdevnfwd.c, gsmatrix.c)
Updates the PDF writer to track the changes in the high-level driver API,
and to write out images in a reasonable way. NOTE: the current
implementation doesn't write out CIE color space parameters, so CIE-color
images won't be colored accurately. (gdevpdf.c, gdevpdfi.c)
Adds a forwarding procedure for tile_rectangle. (gxdevice.h, gdevnfwd.c)
Changes the copyright notices on the PDF writer to be the same as on the
rest of Ghostscript. (gdevpdf*.[ch])
Updates Gunther Hess's Epson Stylus Color driver from 1.21 to 1.90. (Aladdin
Enterprises takes no responsibility for this driver: if you have questions,
contact the author.) (devices.doc, devs.mak, gdevstc*.c, gdevstc.h)
<h2><a name="V3.68_Platforms"></a>Platforms</h2>
Removes some obsolete MS Windows files and #defines. (gp_mswtx.h,
gp_mswtx.c, gp_mswin.h)
Works around a memory limitation in the Watcom make utility. (wmakebat.bat)
<h2><a name="V3.68_Fonts"></a>Fonts</h2>
Changes the standard Fontmap from using the low-quality fonts converted from
bitmaps to using high-quality fonts recently contributed by URW++.
(Fontmap, Fontmap.GS)
<h2><a name="V3.68_Interpreter"></a>Interpreter</h2>
Fixes bugs:
- A macro containing an if-else, and a macro generating a compound
statement, could cause incorrect grouping of 'if' statements. (files.h,
ostack.h)
- .setrasterop didn't pop its operand. (zrop.c)
- A rounding inaccuracy could cause bounding box rangecheck errors.
(gsdps1.c)
- CIE-based images in PDF files didn't work. (gs_pdf.ps)
- The page parameter .MediaSize didn't get updated when PageSize was
set. (This is just the most recent manifestation of the setpagedevice
morass.) (gs_setpd.ps)
- %lineedit and %statementedit were limited to 160 characters.
(zfileio.c, ziodev.c)
- Compiled initialization files didn't work properly. (geninit.c,
gs_l2img.ps)
- Attempting to parse a command line with argc = 0 caused a crash.
(imainarg.c)
Renames some files to allow separating the non-DLL 'main' procedure into a
separate file, and to make the file naming more consistent:
gs.c (except for 'main') => imainarg.c
gsmain.c => imain.c
gs.c now consists only of 'main'. The name gs.c is still inconsistent (it
should be i- something), but at least it's consistent with the name of the
executable. (*.mak, imain.h, iminst.h, imainarg.h, gs.c, gsmain.c, imain.c,
imainarg.c)
Adds PNGPredictorEncode/Decode filters, and increases the size of filterdict
slightly to make room for them. (iinit.c, zfpngp.c)
Makes zwrite external, per a customer request. (opextern.h, zfileio.c)
Updates clients to work with the new API-based bitmap imaging calls.
(iimage.h, zcolor1.c, zimage2.c, zpaint.c)
Updates clients for the split in gscspace.h. (zcie.c, zcolor1.c, zcolor2.c,
zcsindex.c, zcssepr.c, zimage2.c, zpaint.c, zpcolor.c)
Updates clients for strip-based halftones. (zpcolor.c)
Updates the initialization code to pass the correct (system) allocator to
the library initialization. (imain.c)
<h2><a name="V3.68_Streams"></a>Streams</h2>
Fixes bugs:
- If a filter reached EOD exactly at the end of reading data for
certain operations, it didn't get closed automatically. (stream.c)
- The LZW-compatible encoding filter reset procedure had an
incorrect return type. (slzwce.c)
Changes the ASCIIHexEncode filter to insert \ns in fewer places, to be
somewhat more compatible with the Adobe implementation. (sstring.c)
Adds PNGPredictorEncode/Decode filters that implement the pixel prediction
algorithms in the PNG specification. (We'd like to use the code in the PNG
library, but it's too deeply embedded in the rest of the PNG machinery, and
it also doesn't provide for suspendable I/O.) (spngpx.h, spngp.c)
<h2><a name="V3.68_Library"></a>Library</h2>
Fixes bugs:
- A test for pure color was backwards, causing garbage output or
possible address or floating point exceptions. (gxclpath.c)
- A macro containing an if-else could cause incorrect grouping of
'if' statements. (gsrefct.h)
- The default implementation of RasterOp didn't handle the device
depth correctly. (gdevmrop.c)
- The memory device implementation of RasterOp truncated 24-bit
constant source or texture values to 8 bits. (gdevmrop.c)
- A typo caused the garbage collector to miss an internal buffer
used when rendering images. (gximage.h)
- gs_debug_out was only defined if DEBUG was set. (gdebug.h)
- The raster of horizontally replicated tiles was incorrect.
(gxht.c)
- A data type might not be declared, causing a compilation error.
(gscoord.h)
- Empty TrueType glyphs weren't handled properly. (gstype42.c)
- Fonts with a build procedure written in C could cause an invalid
memory access. (gschar.c)
- The initial point of a band list path sometimes didn't get
written, causing excess or missing filled regions. (gxclpath.c)
- Characters between 49 and 56 bits wide were rendered incorrectly
when banding. (gxclbits.c)
Renames gsimage*.c as gximage*.c, to reflect more accurately the position of
these files in the architecture. (gsimage*.c, gximage*.c)
Fully implements the high-level bitmap image calls in the driver API. This
includes some driver API changes; however, this part of the API was clearly
documented as not stable enough to rely on. (gxdevice.h, gximage.h,
gdevbbox.c, gdevddrw.c, gdevnfwd.c, gsimage.c, gximage*.c)
Splits the color space header into client and implementation, as with many
others. (gscspace.h, gxcspace.h, gximage.h, gscie.c, gscolor.c, gscolor1.c,
gscolor2.c, gscsepr.c, gsimage.c, gspcolor.c, gsstate.c, gxcmap.c,
gxpcmap.c)
Extends band lists to handle high-level images. NOTE: This facility is
patched out because there is not yet a way to pass the necessary color
rendering information through the band list. (gxcldev.h, gxclist.h,
gxclpath.h, gxclimag.c, gxclist.c, gxclpath.c, gxclread.c)
Implements fixed2float and float2fixed more efficiently on machines with
slow floating point. (gxfixed.h, gscoord.c, gsmisc.c)
Makes one further NON-BACKWARD-COMPATIBLE change in the existing
higher-level driver procedures (fill_path, stroke_path, fill_mask): we make
the imager state pointer an explicit argument, rather than a member of the
gx_fill/stroke_params structure. We now consider the specification of these
procedures stable, and have removed the "subject to change" notice from the
documentation. (gxdevice.h, gxpaint.h, gdevbbox.c, gdevnfwd.c, gxacpath.c,
gxclpath.c, gxclread.c, gxfill.c, gxpaint.c, gxstroke.c)
Extends halftone bitmaps to include "strip" and "shift" information,
allowing halftone cells with arbitrary angles to be stored in space
proportional to the number of bits in the cell rather than the square of the
number of bits. This requires adding new (optional) strip_tile_rectangle
and strip_copy_rop driver procedures that are like tile_rectangle and
copy_rop respectively but accept a strip bitmap rather than an ordinary
tile; these procedures supersede tile_rectangle and copy_rop (although these
also remain, defined in terms of the new ones). This also requires making
small but NON-BACKWARD-COMPATIBLE changes in several internal interfaces.
(gdevmem.h, gdevprn.h, gsdcolor.h, gxbcache.h, gxbitmap.h, gxcldev.h,
gxclip2.h, gxclist.h, gxdevice.h, gxdevrop.h, gxdht.h, gxfcache.h,
gxhttile.h, gxpcolor.h, gzht.h; gdevabuf.c, gdevbbox.c, gdevdflt.c,
gdevm*.c, gdevmpla.c, gdevmrop.c, gdevnfwd.c, gsht.c, gsht1.c, gshtscr.c,
gspcolor.c, gsstate.c, gxcht.c, gxclbits.c, gxclip2.c, gxclist.c,
gxclpath.c, gxclread.c, gxcpath.c, gxdcolor.c, gxdither.c, gxht.c,
gximage2.c, gxpcmap.c, ...)
Adds "no join" as a line join type. NOTE: this is not actually implemented
yet. (gslparam.h)
Changes the initialization code so that it passes the system allocator as an
argument to module initialization procedures. While this is theoretically a
NON-BACKWARD-COMPATIBLE change, module initialization procedures are not
documented and presumably are not used by any code outside the
implementation. (gscdefs.h, gconf.c, gdevmrop.c, gsinit.c, gxclimag.c,
gxclpath.c)
Splits u
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -