Home | Back
libLASi Release 1.1.2
~~~~~~~~~~~~~~~~~~~~~
This is a maintenance release of libLASi that reflect the ongoing
efforts of the libLASi developers to respond to bug reports for this
stable and convenient library for creating PostScript documents that
can contain characters from any of the script and symbol blocks
supported in Unicode and by the Pango layout engine.

If you encounter a problem with libLASi, then please send a bug report to
the libLASi developers via the lasi-devel mailing list described at
http://lists.sourceforge.net/lists/listinfo/lasi-devel.

Please see the license under which this software is distributed (LGPL), and
the disclaimer of all warranties, given in the COPYING.LIB file.

INDEX

1. Changes relative to our previous release (version 1.1.1).

2. Testing of this release.

1.1 Update of examples/MissingGlyphExample.cpp
1.2 #include FreeType headers in recommended (by FreeType) way.
1.3 Make all install locations configurable.
1.4 Fix FreetypeGlyphMgr::FreetypeGlyphMgr(FT_Glyph glyph) initialization bug.
1.5 Fix long-standing file repeatability issue.

1.1 Update of examples/MissingGlyphExample.cpp

The whole point of this example was to make sure that libLASi
responded well to missing glyphs, but the example had gotten seriously
outdated because for modern Linux systems with the normal system
fonts, the chosen unicode characters were no longer missing!  That
issue has now been addressed by using a larger variety of obscure
unicode glyphs in the examples based on some glyphs that gucharmap
says are missing for the particular Debian stable platform where this
release is being created.  At the same time, I took the opportunity to
improve the look of the PostScript results of this example by
indicating its purpose and keeping results for the various test
glyphs separate from each other.  The results are good (no build or
run-time errors, the PostScript results are now self-explanatory, and
the missing glyphs are indicated by empty boxes).

1.2 #include FreeType headers in recommended (by FreeType) way.

This fixes <https://sourceforge.net/p/lasi/bugs/2/>, does not disrupt
the previous success with building libLASi against FreeType version
2.4.9, and for the first time allows libLASi to build against FreeType
version 2.5.1 and later.  So this is a high-impact fix for use of
libLASi with the latest FreeType versions and is also the fundamental
motivation for this maintenance release.

1.3 Make all install locations configurable.

This fixes <https://sourceforge.net/p/lasi/bugs/3/> and makes it more
convenient to package libLASi.

1.4 Fix FreetypeGlyphMgr::FreetypeGlyphMgr(FT_Glyph glyph) initialization bug.

This fixes <https://sourceforge.net/p/lasi/bugs/4/>.  The particular
method being fixed here is not used in any of our examples, and was
only caught by compiler warning messages rather than a bug report
about actual use of this method so this is likely a low-impact
fix.

1.5 Fix long-standing file repeatability issue.

This bug <https://sourceforge.net/p/lasi/bugs/5/> was discovered while
testing a pre-release version of 1.1.2, but apparently also appeared
in all prior releases of libLASi.  The issue was glyphs without a name
available in the font data were assigned a unique name by libLASi
using rand, but those unique names were not repeatable from one run of
an application linked to libLASi to the next (presumably because
libraries that libLASi depends on were fiddling with the rand seed in
some threaded way that was not repeatable).  An initial fix that used
rand_r and a unique seed for libLASi solved the issue, but ultimately
it was decided to solve the issue by using the libLASi assigned names
LASi_glyph_1, LASi_glyph_2, etc., which should be unique until the
integer overflow limit is encountered, and which should not name clash
with glyph names that are included with font data.

2. Testing of this release.

This release has been successfully build and run tested on Linux using
(1) libpango-1.30.0, libcairo-1.12.2, and libfreetype-2.4.9 and (2)
libpango-1.35.0, libcairo-1.12.14, and libfreetype-2.5.3.

Thanks to the kind testing help of Arjen Markus, this release has also
been successfully build and run tested on Windows using the build
procedure for that platform given at <http://www.unifont.org/lasi/>
using the gtk+ all-in-one Windows bundle downloaded from
<http://www.gtk.org/download/win32.php> which includes
libpango-1.30.1, libcairo-1.10.2, and libfreetype-2.4.11.

Although there has been no specific testing of this release on Mac OS
X, we do not anticipate any difficulties for that platform since
previous releases of libLASi (patched for the above freetype header
issue) have worked fine on that platform according to reports at
https://sourceforge.net/p/lasi/bugs/2/.