libLASi Release 1.1.1
~~~~~~~~~~~~~~~~~~~~~ This is a stable release of libLASi. It represents the ongoing efforts of the libLASi developers to improve the libLASi 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 warrantees, given in the COPYING.LIB file. INDEX 1. Changes relative to our previous release (version 1.1.0). 1.1 Make declaration and definition of setFont arguments consistent. 1.2 Fix alignment of diacritical marks. 1.3 Build system improvements. 1.4 Reduction of symbol visibility for gcc. 1.1 Make declaration and definition of setFont arguments consistent. Thanks to John Ellson's bug report (link failure with Sun's CC - ID: 2797964) we found out that the arguments of setFont had inconsistent const attributes between the declaration in LASi.h and the definition in psDoc.cpp. We have now fixed that inconsistency by using John's patch to drop the const attribute from the appropriate definition arguments. 1.2 Fix alignment of diacritical marks. Thanks to Yotam Medini for supplying a patch which we have applied to correct the positioning of diacritical marks. This change means there must be an extra bool applyOffset = false argument to the PostscriptDocument::for_each_glyph_do method (see Lasi.h). This method is called internally by other libLASi routines with applyOffset both true and false depending on circumstances/needs to obtain correct offsets for diacritical marks. This method is also available for external use so this added argument is a backwards-incompatible API change requiring rebuilding of apps/libraries that use this method, and the soversion of the library has been bumped from 0 to 1 consistent with this API change. However, this external API change issue is not relevant for the libLASi examples that are part of this release and also to the psttf device driver for PLplot that depends on libLASi because those applications and device driver plug-ins do not call the for_each_glyph_do method. 1.3 Build system improvements. Our CMake-based build system has been updated to determine pkg-config results in a way that is much more useful for CMake. (We simply adopted PLplot's method of handling this). The result is that modern CMake (tested on CMake-2.6.4 and CMake-2.8.1) warnings about inconsistent library handling by Policy CMP0003 are no longer present. The minimum version of CMake has been updated from 2.4.5 (!) to 2.6.4. 1.4 Reduction of symbol visibility for gcc. The infrastructure in LASi.h for exporting symbols for the Windows version of this library has been generalized for the gcc-4.x case for Unix platforms following the well-tested implementation used for the PLplot libraries. The net effect of this change is that Windows visibility of symbols should be unchanged and similarly for Unix _except_ for the case of gcc on Unix where the user specifies the gcc -fvisibility=hidden option. For that case, the exported symbols are reduced to those exported in the Windows case. The difference in results between using default visibility and -fvisibility=hidden for gcc-4.x on Unix is the number of visible symbols in libLASi.so is reduced from 164 to the 128 actually needed by users of the library which should give a modest but still significant reduction in load times. |