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/. |