📄 changes
字号:
CHANGES BETWEEN 2.3.5 and 2.3.4 I. IMPORTANT BUG FIXES - Some subglyphs in TrueType fonts were handled incorrectly due to a missing graphics state reinitialization. - Large .Z files (as distributed with some X11 packages) weren't handled correctly, making FreeType increase the heap stack in an endless loop. - A large number of bugs have been fixed to avoid crashes and endless loops with invalid fonts. II. IMPORTANT CHANGES - The two new cache functions `FTC_ImageCache_LookupScaler' and `FTC_SBit_Cache_LookupScaler' have been added to allow lookup of glyphs using an `FTC_Scaler' object; this makes it possible to use fractional pixel sizes in the cache. The demo programs have been updated accordingly to use this feature. - A new API `FT_Get_CMap_Format' has been added to get the cmap format of a TrueType font. This is useful in handling PDF files. The code has been contributed by Derek Clegg. - The auto-hinter now produces better output by default for non-Latin scripts like Indic. This was done by using the CJK hinting module as the default instead of the Latin one. Thanks to Rahul Bhalerao for this suggestion. - A new API `FT_Face_CheckTrueTypePatents' has been added to find out whether a given TrueType font uses patented bytecode instructions. The `ft2demos' bundle contains a new program called `ftpatchk' which demonstrates its usage. - A new API `FT_Face_SetUnpatentedHinting' has been added to enable or disable the unpatented hinter. - Support for Windows FON files in PE format has been contributed by Dmitry Timoshkov. III. MISCELLANEOUS - Vincent Richomme contributed Visual C++ project files for Pocket PCs.======================================================================CHANGES BETWEEN 2.3.4 and 2.3.3 I. IMPORTANT BUG FIXES - A serious bug in the handling of bitmap fonts (and bitmap strikes of outline fonts) has been introduced in 2.3.3.======================================================================CHANGES BETWEEN 2.3.3 and 2.3.2 I. IMPORTANT BUG FIXES - Remove a serious regression in the TrueType bytecode interpreter that was introduced in version 2.3.2. Note that this does not disable the improvements introduced to the interpreter in version 2.3.2, only some ill cases that occurred with certain fonts (though a few popular ones). - The auto-hinter now ignores single-point contours for computing blue zones. This bug created `wavy' baselines when rendering text with various fonts that use these contours to model mark-attach points (these are points that are never rasterized and are placed outside of the glyph's real outline). - The `rsb_delta' and `lsb_delta' glyph slot fields are now set to zero for mono-spaced fonts. Otherwise code that uses them would essentially ruin the fixed-advance property. - Fix CVE-2007-1351 which can cause an integer overflow while parsing BDF fonts, leading to a potentially exploitable heap overflow condition. II. MISCELLANEOUS - Fixed compilation issues on some 64-bit platforms (see ChangeLog for details). - A new demo program `ftdiff' has been added to compare TrueType hinting, FreeType's auto hinting, and rendering without hinting in three columns.======================================================================CHANGES BETWEEN 2.3.2 and 2.3.1 I. IMPORTANT BUG FIXES - FreeType returned incorrect kerning information from TrueType fonts when the bytecode interpreter was enabled. This happened due to a typo introduced in version 2.3.0. - Negative kerning values from PFM files are now reported correctly (they were read as 16-bit unsigned values from the file). - Fixed a small memory leak when `FT_Init_FreeType' failed for some reason. - The Postscript hinter placed and sized very thin and ghost stems incorrectly. - The TrueType bytecode interpreter has been fixed to get rid of most of the rare differences seen in comparison to the Windows font loader. II. IMPORTANT CHANGES - The auto-hinter now better deals with serifs and corner cases (e.g., glyph '9' in Arial at 9pt, 96dpi). It also improves spacing adjustments and doesn't change widths for non-spacing glyphs. - Many Mac-specific functions are deprecated (but still available); modern replacements have been provided for them. See the documentation in file `ftmac.h'.======================================================================CHANGES BETWEEN 2.3.1 and 2.3.0 I. IMPORTANT BUG FIXES - The TrueType interpreter sometimes returned incorrect horizontal metrics due to a bug in the handling of the SHZ instruction. - A typo in a security check introduced after version 2.2.1 prevented FreeType to render some glyphs in CFF fonts.======================================================================CHANGES BETWEEN 2.3.0 and 2.2.1 I. IMPORTANT BUG FIXES - The PCF font loader is now much more robust while loading malformed font files. - Various memory leaks have been found and fixed. - The TrueType name loader now deals properly with some fonts that encode their names in UTF-16 (the specification was vague, and the code incorrectly assumed UCS-4). - Fixed the TrueType bytecode loader to deal properly with subtle monochrome/gray issues when scaling the CVT. Some fonts exhibited bad rendering artifacts otherwise. - `FT_GlyphSlot_Embolden' now supports vertical layouts correctly (it mangled the vertical advance height). - Fixed byte endian issues of `ftmac.c' to support Mac OS X on i386. - The PFR font loader no longer erroneously tags font files without any outlines as FT_FACE_FLAG_SCALABLE. II. NEW API FUNCTIONS - `FT_Library_SetLcdFilter' allows you to select a special filter to be applied to the bitmaps generated by `FT_Render_Glyph' if one of the FT_RENDER_MODE_LCD and FT_RENDER_MODE_LCD_V modes has been selected. This filter is used to reduce color fringes; several settings are available through the FT_LCD_FILTER_XXX enumeration. Its declaration and documentation can be found in file `include/freetype/ftlcdfil.h' (to be accessed with macro FT_LCD_FILTER_H). *IMPORTANT*: This function returns an error (FT_Err_Unimplemented_Feature) in default builds of the library for patent reasons. See below. - `FT_Get_Gasp' allows you to query the flags of the TrueType `gasp' table for a given character pixel size. This is useful to duplicate the text rendering of MS Windows when the native bytecode interpreter is enabled (which isn't the default for other patent reasons). Its declaration and documentation can be found in file `include/freetype/ftgasp.h' (to be accessed with macro FT_GASP_H). III. IMPORTANT CHANGES - The auto-hinter has been tuned a lot to improve its results with serif fonts, resulting in much better font rendering of many web pages. - The unpatented hinter is now part of the default build of the library; we have added code to automatically support `tricky' fonts that need it. This means that FreeType should `just work' with certain Asian fonts, like MingLiU, which cannot properly be loaded without a bytecode interpreter, but which fortunately do not use any of the patented bytecode opcodes. We detect these fonts by name, so please report any font file that doesn't seem to work with FreeType, and we shall do what we can to support it in a next release. Note that the API hasn't changed, so you can still force unpatented hinting with a special parameter to `FT_Open_Face' as well. This might be useful in same cases; for example, a PDF reader might present a user option to activate it to deal with certain `tricky' embedded fonts which cannot be clearly identified. If you are a developer for embedded systems, you might want to *disable* the feature to save code space by undefining TT_CONFIG_OPTION_UNPATENTED_HINTING in file `ftoption.h'. - LCD-optimized rendering is now *disabled* in all default builds of the library, mainly due to patent issues. For more information see: http://lists.gnu.org/archive/html/freetype/2006-09/msg00064.html A new configuration macro FT_CONFIG_OPTION_SUBPIXEL_RENDERING has been introduced in `ftoption.h'; manually define it in this file if you want to re-enable the feature. The change only affects the implementation, not the FreeType API. This means that clients don't need to be modified, because the library still generates LCD decimated bitmaps, but with the added constraint that R=G=B on each triplet. The displayed result should be equal to normal anti-aliased rendering. Additionally, if FT_CONFIG_OPTION_SUBPIXEL_RENDERING is not defined, the new `FT_Library_SetLcdFilter' function returns the FT_Err_Unimplemented_Feature error code. - Some computation bugs in the TrueType bytecode interpreter were found, which allow us to get rid of very subtle and rare differences we had experienced with the Windows renderer. - It is now possible to cross-compile the library easily. See the file `docs/INSTALL.CROSS' for details. - The file `src/base/ftmac.c' now contains code for Mac OS X only; its deprecated function `FT_GetFile_From_Mac_Font_Name' always returns an error even if the QuickDraw framework is available. The previous version has been moved to `builds/mac/ftmac.c'. Selecting configure option `--with-quickdraw-carbon' makes the build process use the original `ftmac.c' file instead of the Mac OS X-only version. IV. MISCELLANEOUS - Various performance and memory footprint optimizations have been performed on the TrueType and CFF font loaders, sometimes with very drastic benefits (e.g., the TrueType loader is now about 25% faster; FreeType should use less heap memory under nearly all conditions). - The anti-aliased rasterizer has been optimized and is now 15% to 25% percent faster than in previous versions, depending on content. - The Type 1 loader has been improved; as an example, it now skips top-level dictionaries properly. - Better support for Mac fonts on POSIX systems, plus compilation fixes for Mac OS X on ppc64 where `ftmac.c' cannot be built. - Configuration without `--with-old-mac-fonts' does not include `ftmac.c' (this was the behaviour in FreeType version 2.1.10). - The TrueTypeGX validator (gxvalid) checks the order of glyph IDs in the kern table.======================================================================CHANGES BETWEEN 2.2.1 and 2.2 I. IMPORTANT BUG FIXES - Various integer overflows have been fixed. - PFB fonts with MacOS resource fork weren't handled correctly on non-MacOS platforms.======================================================================CHANGES BETWEEN 2.2 and 2.1.10(not released officially) I. IMPORTANT BUG FIXES - Vertical metrics for SFNT fonts were incorrect sometimes. - The FT_HAS_KERNING macro always returned 0. - CFF OpenType fonts didn't return correct vertical metrics for glyphs with outlines. - If FreeType was compiled without hinters, all font formats based on PS outlines weren't scaled correctly. II. IMPORTANT CHANGES - Version 2.2 no longer exposes its internals, this is, the header files located in the `include/freetype/internal' directory of the source package are not copied anymore by the `make install'
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -