📄 history2.htm
字号:
<!-- [1.0 end visible header] ---------------------------------------------- -->
<pre>
<h1><a name="Version2.9.10b"></a>Version 2.9.10-beta (7/28/94)</h1>
This is the last 2.9 beta, since 3.0 will be released on July 31.
<h2><a name="V2.9.10b_Documentation"></a>Documentation</h2>
Fixes bugs:
- A | in gs.1 had a \ in front of it instead of \\.
Adds a paragraph in gs.1 that tells how to select paper size.
Notes in devs.mak that the cdj550 driver is the best one for the H-P
DeskJet 520, and the pjxl300 driver is the right one for the H-P DeskJet
1200C.
Notes in make.doc that Watcom C++ 10.0 may require a change in a makefile.
<h2><a name="V2.9.10b_Procedures"></a>Procedures</h2>
Removes ICCINIT from MODULES.LIS for VMS systems.
Updates VMS.MAK to support Motif V1.2.
Updates jpeg.mak to work with version 5alpha4 of the IJG JPEG code.
<h2><a name="V2.9.10b_Utilities"></a>Utilities</h2>
Fixes bugs:
- font2c didn't leave extra room in Type 0 font dictionaries for
entries added by definefont.
- font2c left extra information on the stack.
- ansi2knr would remove newline characters within formal argument
lists.
- font2c got an Error: /undefined in makefontprocname.
Updates ansi2knr to work better with the GNU configure program.
Updates ansi2knr to handle procedure formal arguments automatically.
<h2><a name="V2.9.10b_Drivers"></a>Drivers</h2>
Fixes bugs:
- If a file contained color or gray-scale information followed by a
masked image, the X driver would sometimes invert the polarity of the
image.
<h2><a name="V2.9.10b_Platforms"></a>Platforms</h2>
Fixes bugs:
- Unix systems with a 2-argument gettimeofday returned garbage
values for the current time.
- The VMS build script for compiled fonts omitted the requirement
to load gs_ccfnt.ps.
- memory_.h didn't note that System V Unix platforms need memmove.
On Unix systems, changes the subdirectory of $datadir/ghostscript to just
be the version number (e.g., 2.9.10 rather than gs-2.9.9).
<h2><a name="V2.9.10b_Fonts"></a>Fonts</h2>
Adds support code for the Wadalab (University of Tokyo) free Kanji font.
Notes in the documentation in Fontmap that .pfa and .pfb fonts are
compatible with ATM, but .gsf fonts are not.
Changes the names of Thomas Wolff's expanded Hershey fonts, replacing .gsf
with .pfa.
<h2><a name="V2.9.10b_Interpreter"></a>Interpreter</h2>
Fixes bugs:
- The scanner became confused if the literal names /<< or />>
straddled an input buffer boundary.
- .setlanguagelevel gave an invalidaccess error when
switching from level 2 to level 1.
- currentgstate, setgstate, and copy for gstates didn't do
the necessary access checks.
- The Category resource category didn't define .ResourceFile, so
/Category resourcestatus gave an error.
- The garbage collector didn't trace the structures used by
filenameforall properly on most platforms.
- Automatically expanding systemdict didn't work, but didn't give
an error.
- Automatically expanding a dictionary usually expanded it by too
much.
- systemdict was created too small.
- The garbage collector didn't trace the structures referenced only
from allocator objects, leading to attempts to access freed storage.
- If a chunk was empty, the GC tried to free it even if it had
inner chunks.
* - The outer loop in dict_find_name_by_index() could cause an
addressing fault on segmented machines when looking up Level 2 operators,
because the offset could get decremented past 0.
- The heap_available procedure in gsmemory.c didn't convert
properly to non-ANSI syntax. (New bug in 2.9.9.)
- The ledgertray procedure wasn't implemented.
- The xxxtray procedures didn't set the page size.
- The settumble operator wasn't implemented, even as a dummy.
- glyphshow didn't work with Type 3 fonts.
- Supplying a RenderTable for a CIE color space caused an error.
- The DCT filter code had the jpeg/ subdirectory name "wired in" to
the source files.
Adds experimental filters for Burrows/Wheeler block sorting compression
(BWBlockSortEncode/Decode), described in DEC SRC Research Report #124,
move-to-front coding (MoveToFrontEncode/Decode), and a simple form of
Huffman coding (BoundedHuffmanEncode/Decode). These are experimental -- do
not rely on them remaining the same (or existing at all) in future
releases!
Adds all function prototypes needed to pacify strict compilers.
Removes all explicit references to userdict from the C code.
Changes the SAFER switch so that it disallows not only explicit writing,
deleting, or renaming of files, but also disallows specifying an explicit
OutputFile for any device (except for the initial device, by means of
-sOutputFile= on the command line).
<h2><a name="V2.9.10b_Streams"></a>Streams</h2>
Fixes bugs:
- Hex decoding (ASCIIHexDecode stream and <> literals) didn't treat
the data source as read-only (although it restored it to its original
contents).
Implements move-to-front coding, a simple form of Huffman coding, and
Burrows/Wheeler block sorting compression.
<h2><a name="V2.9.10b_Library"></a>Library</h2>
Fixes bugs:
* - (The following bug fix was actually implemented somewhere around
version 2.7.) restore didn't purge character cache entries whose keys were
names created more recently than the save.
- gstype1.h declared gs_type1_state_sizeof as an extern, but this
wasn't defined anywhere.
- gs_makeimagedevice didn't set the size of the palette correctly,
which confused the GC.
- gs_makeimagedevice didn't set num_components to 1 for
mapped-color devices with only gray values.
* - The two-color halftoning algorithms truncated when computing the
halftone level, rather than rounding it.
* - If a path being filled had line segments that fell entirely to
the right of the clipping region, part of the path might not be filled.
- The optimized code for 24-bit color didn't ensure properly that
32-bit accesses would be aligned appropriately.
- The miter join check had gotten reversed somewhere along the way.
* - Because x and y were interchanged in the miter check computation,
in some situations the check was inverted. (This is a very old bug!)
- It was believed that strokepath didn't work with dashed lines;
the problem appears to have been an incorrect testing program.
Adds all function prototypes needed to pacify strict compilers.
Changes fixed2float so it doesn't cast the result to float, and removes
fixed2double. This produces slightly more accurate results in many places,
and may even be faster (for FPUs that normally generate double rather than
single precision results).
<h1><a name="Version2.9.9b"></a>Version 2.9.9-beta (6/23/94)</h1>
<h2><a name="V2.9.9b_Documentation"></a>Documentation</h2>
Puts a pointer to devs.mak in the section of use.doc that talks about
MS-DOS displays.
<h2><a name="V2.9.9b_Platforms"></a>Platforms</h2>
Fixes bugs:
- The %pipe% IODevice was omitted on System V platforms.
- The AXP VMS build script needed /NESTED_INCLUDE=PRIMARY in
CC_QUAL to work around a bug in the DEC C compiler.
<h2><a name="V2.9.9b_Fonts"></a>Fonts</h2>
Fixes bugs:
- gs_lev2.ps redefined .loadFontmap incorrectly.
<h2><a name="V2.9.9b_Interpreter"></a>Interpreter</h2>
Fixes bugs:
- stream_compact used memcpy even though the source and destination
might overlap.
- filter applied to a closed file could cause a crash.
<h2><a name="V2.9.9b_Library"></a>Library</h2>
Fixes bugs:
- putdeviceparams to a printer didn't close and reopen the device
if only the page size or resolution was changed.
<h1><a name="Version2.9.8"></a>Version 2.9.8 (6/20/94)</h1>
This is the first version that claims to be a full Level 2 implementation.
It was distributed to satisfy a contractual requirement.
<h2><a name="V2.9.8_Documentation"></a>Documentation</h2>
In make.doc:
- Adds a reference to the generic System V section at the end of
the SCO section.
- Notes that DEC OSF/1 systems may require changing the name of the
install program to installbsd.
Updates drivers.doc to reflect the change from "properties" to
"parameters".
Updates the Aladdin Enterprises Free Public License to version 1.
In language.doc, notes that certain device parameters will be phased out.
<h2><a name="V2.9.8_Procedures"></a>Procedures</h2>
Fixes bugs:
- The file aa.ps was included in the distribution by mistake.
Notes in the Unix makefiles that X11R6 probably needs SM and ICE added to
XLIBS.
<h2><a name="V2.9.8_Utilities"></a>Utilities</h2>
Fixes bugs:
- viewjpeg.ps used a non-existent file as its example.
- A temporary string in wrfont.ps was allocated too small.
Upgrades font2c.ps so it will handle (simple) Type 0 fonts as well as Type
1.
<h2><a name="V2.9.8_Drivers"></a>Drivers</h2>
Fixes bugs:
- The TIFF drivers didn't byte-align each scan line.
- gdevtfax.c applied & to an array member of a structure.
Changes the param_list interface slightly: Implementations of the
put_params driver procedure should now use param_signal_error to report
errors, and should not give up at the first error. (Even though this is a
non-backward-compatible change, old implementations will continue to work;
they just won't deliver complete results to the setpagedevice Policies
machinery.)
<h2><a name="V2.9.8_Platforms"></a>Platforms</h2>
Fixes bugs:
- Removes the time zone adjustment from gp_get_clock in gp_unix.c,
since the value returned by all Unix systems is bogus.
- The DV/X makefile still included the dfaxhigh and dfaxlow drivers.
- gssetmod.com (VMS command file) didn't work properly if the
argument list was empty.
- vms.mak, vms-axp.mak, and modules.lis hadn't been updated to
reflect changes in 2.9.7.
- The MS Windows version wouldn't link (overflowed the 64K primary
data segment).
<h2><a name="V2.9.8_Fonts"></a>Fonts</h2>
Makes the font substitution algorithm somewhat more intelligent.
<h2><a name="V2.9.8_Interpreter"></a>Interpreter</h2>
Fixes bugs:
- Enumerating the pointers of a zero-length array of structures
caused a divide by zero.
- iref.h didn't protect itself against multiple inclusion.
- The CCITTFaxEncode filter didn't byte-align the final
end-of-block code if EndOfBlock and EncodedByteAlign were both true.
- make_initial_dict in iinit.c used `name' as a formal parameter
name, which some compilers believe conflicts with a typedef.
- Not all internal operators had registered names.
- The GC used memcpy, rather than bytes_copy, when compacting
objects, even though the source and destination might overlap.
- When debugging was enabled, gc_string_mark could give a spurious
error indication.
- vmstatus returned too small a value for the maximum VM.
- The scanner could get into a loop when reading a radix-85 string.
- The GC could get into a state where it was called after every
allocation (because of the patch setting global = true in ireclaim).
- The general path filling algorithm didn't skip regions that were
completely outside the clipping box.
- The gs_screen_enum structure contained a pointer (porder) that
pointed into the middle of a structure, confusing the GC.
Implements the BitmapWidths flag in fonts. The default of false means that
we use scalable widths even with xfonts.
Changes the Generic resource category so that ResourceFileName is optional.
Changes the .getdeviceparams operator so that it takes an optional
dictionary giving the set of keys whose values are wanted. Changes the
.putdeviceparams operator so that it takes an optional policy dictionary
specifying the action to be taken on errors, and returns a list of keys and
errors if it fails, rather than causing an error. These are
non-backward-compatible changes, but ordinary programs do not use these
operators.
Changes the names of some internal operators and procedures by adding
a . to the beginning:
currenttime
devicename
Implements currentpagedevice, and a small subset of setpagedevice. Only
the following keys in the page device dictionary are known to the current
implementation, and the ones marked with * are not actually processed:
PageSize
InputAttributes
MediaColor, MediaWeight, MediaType, InsertSheet
(for InputAttributes matching only)
*ImagingBBox
OutputAttributes
OutputType
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -