1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/modules/freetype2/ChangeLog.21 Wed Dec 31 06:09:35 2014 +0100 1.3 @@ -0,0 +1,9439 @@ 1.4 +2005-06-08 Werner Lemberg <wl@gnu.org> 1.5 + 1.6 + 1.7 + * Version 2.1.10 released. 1.8 + ========================== 1.9 + 1.10 + 1.11 + * src/pcf/readme: Renamed to... 1.12 + * src/pcf/README: This. 1.13 + 1.14 +2005-06-07 Detlef Würkner <TetiSoft@apg.lahn.de> 1.15 + 1.16 + * builds/amiga/*: Added copyright notes, reworked some comments. 1.17 + 1.18 +2005-06-05 Werner Lemberg <wl@gnu.org> 1.19 + 1.20 + * Add copyright notices to all files which don't have one. 1.21 + 1.22 + * docs/license.txt: Renamed to... 1.23 + * docs/LICENSE.TXT: This. 1.24 + * docs/FTL.txt: Renamed to... 1.25 + * docs/FTL.TXT: This. 1.26 + * docs/GPL.txt: Renamed to... 1.27 + * docs/GPL.TXT: This. 1.28 + 1.29 + * docs/PATENTS: Slightly reworded. Suggested by Sylvain Beucler 1.30 + <beuc@gnu.org>. 1.31 + 1.32 +2005-06-04 Werner Lemberg <wl@gnu.org> 1.33 + 1.34 + * include/freetype/ftimage.h (FT_Outline_MoveToFunc, 1.35 + FT_Outline_LineToFunc, FT_Outline_ConicToFunc, 1.36 + FT_Outline_CubicToFunc, FT_Raster_RenderFunc), 1.37 + include/freetype/ftrender.h (FT_Glyph_TransformFunc, 1.38 + FT_Renderer_RenderFunc, FT_Renderer_TransformFunc): Don't use 1.39 + `const' to stay compatible with FreeType 2.1.9. 1.40 + 1.41 +2005-06-01 Adam D. Moss <adam@gimp.org> 1.42 + 1.43 + * src/base/ftstroke.c (ft_stroker_inside): Revert `sigma' patch from 1.44 + 2004-07-11; this gives much better results under normal 1.45 + circumstances. 1.46 + 1.47 +2005-05-30 Chia I Wu <b90201047@ntu.edu.tw> 1.48 + 1.49 + * include/freetype/ftbitmap.h (FT_Bitmap_Embolden): Minor 1.50 + documentation improvements. 1.51 + 1.52 + * include/freetype/ftoutln.h (FT_Outline_Embolden): Fix typos. 1.53 + 1.54 + * src/base/ftbitmap.c (FT_Bitmap_Embolden): Add support for bitmap 1.55 + of pixel_mode FT_PIXEL_MODE_GRAY2 or FT_PIXEL_MODE_GRAY4. 1.56 + If xstr is larger than 8 and bitmap is of pixel_mode 1.57 + FT_PIXEL_MODE_MONO, set xstr to 8 instead of returning error. 1.58 + 1.59 +2005-05-29 Chia I Wu <b90201047@ntu.edu.tw> 1.60 + 1.61 + * src/base/ftbitmap.c (FT_Bitmap_Embolden): Fix emboldening bitmap 1.62 + of mode FT_PIXEL_MODE_GRAY. Also add support for mode 1.63 + FT_PIXEL_MODE_LCD and FT_PIXEL_MODE_LCD_V. 1.64 + (ft_bitmap_assure_buffer): FT_PIXEL_MODE_LCD and FT_PIXEL_MODE_LCD_V 1.65 + should have ppb (pixel per byte) 1. 1.66 + Zero the padding when there's no need to allocate memory. 1.67 + 1.68 + * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Handle slot->advance 1.69 + too. 1.70 + More suited emboldening strength. 1.71 + 1.72 +2005-05-28 Chia I Wu <b90201047@ntu.edu.tw> 1.73 + 1.74 + * src/base/ftbitmap.c (FT_Bitmap_Embolden): Handle negative pitch. 1.75 + Handle FT_PIXEL_MODE_GRAY with num_gray != 256. 1.76 + Improve speed for FT_PIXEL_MODE_GRAY. 1.77 + (ft_bitmap_assure_buffer): Accept FT_PIXEL_MODE_LCD and 1.78 + FT_PIXEL_MODE_LCD_V. 1.79 + 1.80 +2005-05-27 Chia I Wu <b90201047@ntu.edu.tw> 1.81 + 1.82 + * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Initialize `error'. 1.83 + 1.84 + * src/base/ftobjs.c (ft_cmap_done_internal): New function. 1.85 + (FT_CMap_Done): Remove cmap from cmap list. 1.86 + (destroy_charmaps, FT_CMap_New): Don't call FT_CMap_Done but 1.87 + ft_cmap_done_internal. 1.88 + 1.89 +2005-05-26 Werner Lemberg <wl@gnu.org> 1.90 + 1.91 + * docs/GPL.txt: Update postal address of FSF. 1.92 + 1.93 +2005-05-26 Chia I Wu <b90201047@ntu.edu.tw> 1.94 + 1.95 + * include/freetype/ftbitmap.h (FT_Bitmap_Embolden): Improve 1.96 + documentation. 1.97 + 1.98 + * src/base/ftsynth.c (FT_BOLD_THRESHOLD): Removed. 1.99 + (FT_GlyphSlot_Embolden): Check whether slot is bitmap owner. 1.100 + Always modify the metrics. 1.101 + 1.102 +2005-05-24 Werner Lemberg <wl@gnu.org> 1.103 + 1.104 + * docs/CHANGES: Updated. 1.105 + 1.106 +2005-05-24 Chia I Wu <b90201047@ntu.edu.tw> 1.107 + 1.108 + * include/freetype/ftbitmap.h (FT_Bitmap_Embolden): New declaration. 1.109 + 1.110 + * include/freetype/ftoutln.h (FT_Outline_Embolden): New declaration. 1.111 + 1.112 + * src/base/ftbitmap.c (ft_bitmap_assure_buffer): New auxiliary 1.113 + function. 1.114 + (FT_Bitmap_Embolden): New function. 1.115 + 1.116 + * src/base/ftoutln.c (FT_Outline_Embolden): New function. 1.117 + 1.118 + * src/base/ftsynth.c: Don't include FT_INTERNAL_CALC_H and 1.119 + FT_TRIGONOMETRY_H but FT_BITMAP_H. 1.120 + (FT_GlyphSlot_Embolden): Use FT_Outline_Embolden or 1.121 + FT_Bitmap_Embolden. 1.122 + 1.123 +2005-05-24 Werner Lemberg <wl@gnu.org> 1.124 + 1.125 + * configure: Always remove config.mk, builds/unix/unix-def.mk, and 1.126 + builds/unix/unix-cc.mk. This fixes repeated calls of the script. 1.127 + Reported by Nelson Beebe and Behdad Esfahbod. 1.128 + 1.129 + * README.CVS: Mention file permissions. 1.130 + 1.131 +2005-05-23 Werner Lemberg <wl@gnu.org> 1.132 + 1.133 + * builds/amiga/makefile.os4 (WARNINGS), builds/compiler/gcc-dev.mk 1.134 + (CFLAGS), builds/compiler/gcc.mk (CFLAGS): Remove 1.135 + -fno-strict-aliasing. 1.136 + 1.137 + * src/sfnt/rules.mk (SFNT_DRV_SRC): Don't include ttsbit0.c -- 1.138 + it is currently loaded from ttsbit.c. 1.139 + 1.140 +2005-05-23 Behdad Esfahbod <behdad@cs.toronto.edu> 1.141 + 1.142 + Say you have `(Foo*)x' and want to assign, pass, or return it as 1.143 + `(Bar*)'. If you simply say `x' or `(Bar*)x', then the C compiler 1.144 + would warn you that type casting incompatible pointer types breaks 1.145 + strict-aliasing. The solution is to cast to `(void*)' instead which 1.146 + is the generic pointer type, so the compiler knows that it should 1.147 + make no strict-aliasing assumption on `x'. But the problem with 1.148 + `(void*)x' is that seems like in C++, unlike C, `void*' is not a 1.149 + generic pointer type and assigning `void*' to `Bar*' without a cast 1.150 + causes an error. The solution is to cast to `Bar*' too, with 1.151 + `(Bar*)(void*)x' as the result -- this is what the patch does. 1.152 + 1.153 + * include/freetype/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP), 1.154 + include/freetype/cache/ftcmru.h (FTC_MRULIST_LOOKUP_CMP): Remove 1.155 + cast on lvalue, use a temporary pointer instead. 1.156 + Cast temporarily to (void*) to not break strict aliasing. 1.157 + 1.158 + * include/freetype/internal/ftmemory.h (FT_MEM_ALLOC, 1.159 + FT_MEM_REALLOC, FT_MEM_QALLOC, FT_MEM_QREALLOC, FT_MEM_FREE), 1.160 + src/base/ftglyph.c (FT_Glyph_To_Bitmap): Cast temporarily to (void*) 1.161 + to not break strict aliasing. 1.162 + 1.163 + * src/base/ftinit.c (FT_USE_MODULE): Fix wrong type information. 1.164 + 1.165 + * builds/unix/configure.ac (XX_CFLAGS): Remove -fno-strict-aliasing. 1.166 + 1.167 +2005-05-23 David Turner <dturner@freetype.org> 1.168 + 1.169 + Fix Savannah bug #12213 (incorrect behaviour of the cache sub-system 1.170 + in low-memory conditions). 1.171 + 1.172 + * include/freetype/cache/ftccache.h (FTC_CACHE_TRYLOOP, 1.173 + FTC_CACHE_TRYLOOP_END): New macros. 1.174 + 1.175 + * src/cache/ftccache.c (FTC_Cache_NewNode), src/cache/ftcsbits.c 1.176 + (ftc_snode_compare): Use FT_CACHE_TRYLOOP and FTC_CACE_TRYLOOP_END. 1.177 + 1.178 +2005-05-23 Werner Lemberg <wl@gnu.org> 1.179 + 1.180 + * src/base/rules.mk (BASE_SRC): Don't add ftsynth.c here but... 1.181 + (BASE_EXT_SRC): Here. 1.182 + 1.183 +2005-05-22 Werner Lemberg <wl@gnu.org> 1.184 + 1.185 + * src/base/ftrfork.c (raccess_guess_apple_generic): Mark 1.186 + `version_number' and `entry_length' as unused. 1.187 + (raccess_guess_linux_double_from_file_name): Remove `memory'. 1.188 + (raccess_make_file_name): Mark `error' as unused. 1.189 + 1.190 + * src/bdf/bdflib.c (_bdf_parse_properties): Remove `memory'. 1.191 + 1.192 + * src/cid/cidobjs.c (cid_face_init): Remove `psnames'. 1.193 + 1.194 + * src/sfnt/sfobjs.c (sfnt_load_face): Remove `memory'. 1.195 + 1.196 + * src/truetype/ttgxvar.c (ft_var_readpackedpoints, 1.197 + ft_var_readpackeddeltas, ft_var_load_avar): Mark `error' as unused. 1.198 + 1.199 + * src/base/rules.mk (BASE_SRC): Add ftsynth.c. 1.200 + 1.201 +2005-05-21 David Turner <david@freetype.org> 1.202 + 1.203 + * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Fix a bug that 1.204 + produced unpleasant artefacts when trying to embolden very sharp 1.205 + corners. 1.206 + 1.207 +2005-05-20 Werner Lemberg <wl@gnu.org> 1.208 + 1.209 + * docs/CHANGES: Updated. 1.210 + 1.211 +2005-05-20 Chia I Wu <b90201047@ntu.edu.tw> 1.212 + 1.213 + * src/base/ftbitmap.c: Don't include FT_FREETYPE_H and FT_IMAGE_H 1.214 + but FT_BITMAP_H. 1.215 + (FT_Bitmap_Copy): New function (from ftglyph.c). 1.216 + 1.217 + * include/freetype/ftbitmap.h (FT_Bitmap_Copy): New public 1.218 + definition. 1.219 + 1.220 + * src/base/ftglyph.c: Include FT_BITMAP_H. 1.221 + (ft_bitmap_copy): Move to ftbitmap.c. 1.222 + (ft_bitmap_glyph_init): Remove `memory' variable. 1.223 + Create new bitmap object if FT_GLYPH_OWN_BITMAP isn't set. 1.224 + (ft_bitmap_glyph_copy): Use FT_Bitmap_Copy. 1.225 + (ft_bitmap_glyph_done): Use FT_Bitmap_Done. 1.226 + (ft_outline_glyph_init): Use FT_Outline_Copy. 1.227 + 1.228 + * src/base/ftoutln.c (FT_Outline_Copy): Handle source == target. 1.229 + (FT_Outline_Done_Internal): Check for valid `memory' pointer. 1.230 + (FT_Outline_Translate, FT_Outline_Reverse, FT_Outline_Render, 1.231 + FT_Outline_Transform): Check for valid `outline' pointer. 1.232 + 1.233 + * src/base/ftobjs.c (FT_New_GlyphSlot): Prepend glyph slot to 1.234 + face->glyph, otherwise a new second glyph slot cannot be created. 1.235 + (FT_Done_GlyphSlot): Fix memory leak. 1.236 + (FT_Open_Face): Updated -- face->glyph is already managed by 1.237 + FT_New_GlyphSlot. 1.238 + 1.239 + * src/type42/t42objs.c (T42_GlyphSlot_Done): Updated. 1.240 + 1.241 +2005-05-20 Kirill Smelkov <kirr@mns.spb.ru> 1.242 + 1.243 + * include/freetype/ftimage.h (FT_Raster_Params), 1.244 + include/freetype/ftoutln.h (FT_Outline_Translate, 1.245 + FT_Outline_Transform), src/base/ftoutln.c (FT_Outline_Translate, 1.246 + FT_Outline_Transform): Decorate parameters with `const' where 1.247 + appropriate. 1.248 + Update all callers. 1.249 + 1.250 + * src/raster/ftraster.c (ft_black_reset), src/smooth/ftgrays.c 1.251 + (gray_raster_reset): Remove `const' from `pool_base' argument. 1.252 + 1.253 +2005-05-18 Kirill Smelkov <kirr@mns.spb.ru> 1.254 + 1.255 + * src/raster/ftmisc.h: New file. Only needed if ftraster.c is 1.256 + compiled as stand-alone. 1.257 + 1.258 + * src/raster/ftraster.c: Add comment how to compile as stand-alone. 1.259 + s/FT_CONFIG_OPTION_STATIC_RASTER/FT_STATIC_RASTER/. 1.260 + s/TT_STATIC_RASTER/FT_STATIC_RASTER/. 1.261 + [_STANDALONE_]: Include ftimage.h and ftmisc.h. 1.262 + (FT_TRACE1, FT_TRACE6, ft_memset, FT_MEM_ZERO): Define 1.263 + conditionally. 1.264 + (Render_Glyph, Render_Gray_Glyph): Return Raster_Err_None (or 1.265 + Raster_Err_Unsupported). 1.266 + (ft_black_new) [_STANDALONE_]: Fix type of `the_raster'. 1.267 + (ft_black_init, ft_black_reset, ft_black_set_mode, ft_black_render): 1.268 + Use `ras', not `raster'. 1.269 + (ft_black_done): Use FT_UNUSED_RASTER. 1.270 + (Horizontal_Sweep_Init, Horizontal_Sweep_Step, 1.271 + Horizontal_Gray_Sweep_Span): Use FT_UNUSED_RASTER. 1.272 + 1.273 +2005-05-18 Werner Lemberg <wl@gnu.org> 1.274 + 1.275 + * docs/announce: Start updating. 1.276 + 1.277 + * docs/CHANGES: Updated. 1.278 + 1.279 +2005-05-16 Vitaliy Pasternak <v_a_pasternak@mail.ru> 1.280 + 1.281 + * builds/win32/visualc/freetype.vcproj: Updated. 1.282 + Exclude debug info for `Release' versions to reduce library size. 1.283 + 1.284 +2005-05-16 Werner Lemberg <wl@gnu.org> 1.285 + 1.286 + * src/base/ftobjs.c (FT_Open_Face): Make it work as documented, this 1.287 + is, ignore `aface' completely if face_index < 0. Reported by David 1.288 + Osborn <spam@habitualhiatus.com>. 1.289 + 1.290 +2005-05-16 Kirill Smelkov <kirr@mns.spb.ru> 1.291 + 1.292 + * include/freetype/ftimage.h (FT_Outline_MoveToFunc, 1.293 + FT_Outline_LineTo_Func, FT_Outline_ConicToFunc, 1.294 + FT_Outline_CubicToFunc), src/smooth/ftgrays.c (gray_render_conic, 1.295 + gray_render_cubic, gray_move_to, gray_line_to, gray_conic_to, 1.296 + gray_cubic_to, gray_render_span, gray_sweep): Decorate parameters 1.297 + with `const' where appropriate. 1.298 + 1.299 +2005-05-11 Kirill Smelkov <kirr@mns.spb.ru> 1.300 + 1.301 + * include/freetype/ftimage.h (FT_Raster_RenderFunc), 1.302 + include/freetype/ftrender.h (FT_Glyph_TransformFunc, 1.303 + FT_Renderer_Render_Func, FT_Renderer_TransformFunc), 1.304 + src/base/ftglyph.c (ft_outline_glyph_transform), 1.305 + src/raster/ftrend1.c (ft_raster1_transform, ft_raster1_render), 1.306 + src/smooth/ftgrays.c (FT_Outline_Decompose, gray_raster_render), 1.307 + src/smooth/ftsmooth.c (ft_smooth_transform, 1.308 + ft_smooth_render_generic, ft_smooth_render, ft_smooth_render_lcd, 1.309 + ft_smooth_render_lcd_v): Decorate parameters with `const' where 1.310 + appropriate. 1.311 + 1.312 + * src/raster/ftraster.c (RASTER_RENDER_POOL): Removed. Obsolete. 1.313 + (ft_black_render): Decorate parameters with `const' where 1.314 + appropriate. 1.315 + 1.316 +2005-05-11 Werner Lemberg <wl@gnu.org> 1.317 + 1.318 + * src/sfnt/ttcmap.c (tt_cmap4_set_range): Fix typo (FT_PEEK_SHORT -> 1.319 + FT_PEEK_USHORT) which caused crashes. Reported by Ismail Donmez 1.320 + <ismail@kde.org.tr>. 1.321 + 1.322 +2005-05-08 Werner Lemberg <wl@gnu.org> 1.323 + 1.324 + * include/freetype/internal/ftserv.h (FT_FACE_FIND_GLOBAL_SERVICE) 1.325 + [__cplusplus]: Fix typo. 1.326 + 1.327 +2005-05-07 Werner Lemberg <wl@gnu.org> 1.328 + 1.329 + Handle unsorted SFNT type 4 cmaps correctly (reported by Dirck 1.330 + Blaskey <listtarget@danbala.com>). 1.331 + 1.332 + * src/sfnt/ttcmap.h (TT_CMap): Add member `unsorted'. 1.333 + * src/sfnt/ttcmac.c: Use SFNT_Err_Ok where appropriate. 1.334 + 1.335 + (tt_cmap0_validate, tt_cmap2_validate, tt_cmap6_validate, 1.336 + tt_cmap8_validate, tt_cmap10_validate, tt_cmap12_validate): Use 1.337 + `FT_Error' as return type. 1.338 + (tt_cmap4_validate): Use `FT_Error' as return type. 1.339 + Return error code for unsorted cmap. 1.340 + (tt_cmap4_char_index, tt_cmap4_char_next): Use old code for unsorted 1.341 + cmaps. 1.342 + (tt_face_build_cmaps): Set `unsorted' variable in cmap. 1.343 + 1.344 +2005-05-07 Werner Lemberg <wl@gnu.org> 1.345 + 1.346 + * src/truetype/ttpload.c (tt_face_get_location): Fix typo. 1.347 + 1.348 +2005-05-06 Werner Lemberg <wl@gnu.org> 1.349 + 1.350 + * src/cff/cffobjs.c (cff_face_init): Set ppem value in top 1.351 + dictionary for SFNT-based CFF. 1.352 + 1.353 +2005-05-05 Werner Lemberg <wl@gnu.org> 1.354 + 1.355 + Handle malformed `loca' table entries. 1.356 + 1.357 + * docs/TODO: Add some bugs which should be fixed. 1.358 + 1.359 + * include/freetype/internal/tttypes.h (TT_FaceRec): Add `glyf_len' 1.360 + element. 1.361 + 1.362 + * src/truetype/ttpload.c (tt_face_load_loca): Get length of `glyf' 1.363 + table. 1.364 + (tt_face_get_location): Fix computation of `asize' for malformed 1.365 + `loca' entries. 1.366 + 1.367 +2005-05-01 David Turner <david@freetype.org> 1.368 + 1.369 + * Jamfile: Remove `otvalid' from the list of compiled modules. 1.370 + 1.371 + * include/freetype/internal/ftserv.h: Add compiler pragmas to get 1.372 + rid of annoying warnings with Visual C++ compiler in maximum warning 1.373 + mode. 1.374 + 1.375 + * src/autofit/afhints.c, src/autofit/aflatin.c, src/base/ftstroke.c, 1.376 + src/bdf/bdfdrivr.c, src/cache/ftcbasic.c, src/cache/ftccmap.c, 1.377 + src/cache/ftcmanag.c, src/cff/cffload.c, src/cid/cidload.c, 1.378 + src/lzw/zopen.c, src/otvalid/otvgdef.c, src/pcf/pcfread.c, 1.379 + src/sfnt/sfobjs.c, src/truetype/ttgxvar.c: Remove compiler warnings. 1.380 + 1.381 +2005-04-28 Werner Lemberg <wl@gnu.org> 1.382 + 1.383 + * docs/TODO: Updated. 1.384 + 1.385 +2005-04-24 Werner Lemberg <wl@gnu.org> 1.386 + 1.387 + * src/otvalid/otvcommn.c 1.388 + (otv_GSUBGPOS_have_MarkAttachmentType_flag): Handle table == 0. 1.389 + 1.390 +2005-04-16 Werner Lemberg <wl@gnu.org> 1.391 + 1.392 + * src/cff/cffobjs.c (cff_face_init): Set default upem value in top 1.393 + font dict also. 1.394 + Handle font matrix settings in subfonts. 1.395 + 1.396 + * src/cff/cffgload.c (cff_slot_load): Use the correct font matrix 1.397 + for CID-keyed fonts with subfonts. 1.398 + 1.399 + * docs/formats.txt: Updated. 1.400 + 1.401 +2005-04-14 Kirill Smelkov <kirr@mns.spb.ru> 1.402 + 1.403 + * include/freetype/freetype.h (FT_Vector_Transform), 1.404 + include/freetype/ftimage.h (FT_Raster_Params), 1.405 + include/freetype/ftoutln.h, src/base/ftoutln.c (FT_Outline_Get_CBox, 1.406 + FT_Outline_Copy, FT_Outline_Transform, FT_Vector_Transform, 1.407 + FT_Outline_Get_Bitmap), src/raster/ftraster.c (ft_black_render), 1.408 + src/smooth/ftgrays.c (gray_raster_render): Decorate parameters with 1.409 + `const' where appropriate. 1.410 + 1.411 +2005-04-14 Werner Lemberg <wl@gnu.org> 1.412 + 1.413 + * src/type1/t1load.c (parse_charstrings): Catch this non-standard 1.414 + beginning of the /CharStrings dictionary: 1.415 + 1.416 + /CharStrings 118 dict def 1.417 + Private begin 1.418 + CharStrings begin 1.419 + 1.420 + * src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Fix arguments 1.421 + to call of tt_sbit_decoder_load_bitmap. 1.422 + 1.423 +2005-04-13 Werner Lemberg <wl@gnu.org> 1.424 + 1.425 + * docs/TODO: Updated. 1.426 + 1.427 + * autogen.sh: Use `--force' for all commands. 1.428 + 1.429 +2005-04-09 Werner Lemberg <wl@gnu.org> 1.430 + 1.431 + * src/pshinter/pshalgo.c (ps_hints_apply): Change scaling values 1.432 + only if `fitted' is not zero. 1.433 + 1.434 +2005-04-06 Werner Lemberg <wl@gnu.org> 1.435 + 1.436 + * src/truetype/ttgload.c (tt_face_get_metrics) [FT_OPTIMIZE_MEMORY]: 1.437 + Fix typo which sometimes causes wrong metrics for the last glyph. 1.438 + 1.439 +2005-04-04 David Turner <david@freetype.org> 1.440 + 1.441 + * devel/ftoption.h, include/freetype/config/ftoption.h 1.442 + (FT_OPTIMIZE_MEMORY): Comment out this macro for the upcoming 2.1.10 1.443 + release. 1.444 + (*_CHESTER_*): Removed. No longer used. 1.445 + 1.446 + * src/autofit/afhints.c (af_axis_hints_new_segment, 1.447 + af_axis_hints_new_edge): Small tweak to use less heap memory. 1.448 + 1.449 +2005-04-03 Werner Lemberg <wl@gnu.org> 1.450 + 1.451 + * src/type1/t1parse.c (T1_New_Parser): Relax the check for a valid 1.452 + first line in the font. 1.453 + 1.454 +2005-04-03 Werner Lemberg <wl@gnu.org> 1.455 + 1.456 + * docs/CHANGES, include/freetype/freetype.h: Improve documentation 1.457 + of FT_Set_Pixel_Sizes and FT_Set_Char_Size. 1.458 + 1.459 +2005-03-26 Detlef Würkner <TetiSoft@apg.lahn.de> 1.460 + 1.461 + * builds/amiga/src/base/ftsystem.c (ft_amiga_stream_io): Fix buffer 1.462 + offsets after a large read. 1.463 + 1.464 +2005-03-26 Werner Lemberg <wl@gnu.org> 1.465 + 1.466 + * src/autofit/afglobal.c (af_face_globals_get_metrics): 1.467 + s/index/gidx/. 1.468 + 1.469 + * src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Fix compiler 1.470 + warnings. 1.471 + 1.472 + * src/sfnt/rules.mk (SFNT_DRV_SRC): Add ttsbit0.c. 1.473 + 1.474 + * src/sfnt/ttsbit0.h: Dummy file for build with `make'. 1.475 + 1.476 +2005-03-26 Detlef Würkner <TetiSoft@apg.lahn.de> 1.477 + 1.478 + Update of the Amiga port. 1.479 + 1.480 + * builds/amiga/makefile, builds/amiga/makefile.os4, 1.481 + builds/amiga/smakefile: Included the base extension files 1.482 + (ftbitmap.c, ftotval.c, ftpfr.c, ftstroke.c, ftxf86.c). 1.483 + 1.484 +2005-03-25 Detlef Würkner <TetiSoft@apg.lahn.de> 1.485 + 1.486 + Update of the Amiga port. 1.487 + 1.488 + * builds/amiga/makefile, builds/amiga/smakefile: Handle new modules. 1.489 + 1.490 + * builds/amiga/makefile.os4: Makefile for AmigaOS4 SDK. 1.491 + 1.492 + * builds/amiga/README: Updated. 1.493 + 1.494 + * builds/amiga/include/freetype/config/ftconfig.h: Handle gcc for 1.495 + AmigaOS4. 1.496 + 1.497 + * builds/amiga/include/freetype/config/ftmodule.h: Handle new 1.498 + modules. 1.499 + 1.500 + * builds/amiga/src/base/ftdebug.c: Updated to current version of 1.501 + default ftdebug.c. 1.502 + Add various include files and macros to have proper support for 1.503 + both AmigaOS4 and older AmigaOS versions. 1.504 + Don't declare KVPrintF explicitly. 1.505 + Replace getenv with GetVar. 1.506 + Actually enable debugging code. 1.507 + 1.508 + * builds/amiga/src/base/ftsystem.c: Major rewrite. 1.509 + 1.510 +2005-03-23 Werner Lemberg <wl@gnu.org> 1.511 + 1.512 + * tests/*: Removed. 1.513 + 1.514 +2005-03-23 Werner Lemberg <wl@gnu.org> 1.515 + 1.516 + * docs/CHANGES, docs/INSTALL.ANY: Updated. 1.517 + 1.518 + * include/freetype/ftmoderr.h: Replace `Autohint' with `Autofit'. 1.519 + Add `OTvalid'. 1.520 + 1.521 + * src/autofit/aferrors.h: New file. 1.522 + 1.523 + * src/autofit/afglobal.c, src/autofit/afhints.c, 1.524 + src/autofit/aflatin.c, src/autofit/afloader.c: s/FT_Err_/AF_Err_/. 1.525 + Include aferrors.h. 1.526 + 1.527 + * src/autofit/rules.mk (AUTOF_DRV_H): Include aferrors.h. 1.528 + 1.529 + * src/otvalid/otverror.h: s/FT_Mod_Err_OTV/FT_Mod_Err_OTvalid/. 1.530 + 1.531 +2005-03-22 David Turner <david@freetype.org> 1.532 + 1.533 + * src/autohint/*: Removed. 1.534 + * Jamfile: Updated. 1.535 + 1.536 +2005-03-15 David Turner <david@freetype.org> 1.537 + 1.538 + * src/bdf/bdflib.c: Remove compiler warnings. 1.539 + (hash_rehash, hash_init): Don't call FT_MEM_ZERO. 1.540 + (_bdf_list_t): Add `memory' field. 1.541 + (_bdf_list_init, _bdf_list_done, _bdf_list_ensure): New functions. 1.542 + (_bdf_shift, _bdf_join): Rename to... 1.543 + (_bdf_list_shift, _bdf_list_join): This. 1.544 + (_bdf_split): Renamed to... 1.545 + (_bdf_list_split): This. Use new functions. 1.546 + (bdf_internal_readstream): Removed. 1.547 + (NO_SKIP): New macro. 1.548 + (_bdf_readstream): Rewritten. 1.549 + (bdf_create_property, _bdf_add_comment): Improve allocation. 1.550 + (_bdf_set_default_spacing, _bdf_parse_glyphs): Updated. Improve 1.551 + allocation. 1.552 + (_bdf_parse_properties, _bdf_parse_start): Updated. 1.553 + (bdf_load_font): Updated to use new functions. 1.554 + 1.555 + * src/type1/t1parse.c (check_type1_format): New function. 1.556 + (T1_New_Parser): Use it to check font header before allocating 1.557 + anything on the heap. 1.558 + 1.559 + * src/type42/t42parse.c (t42_parser_init): Modify functions to check 1.560 + the font header before allocating anything on the heap. 1.561 + 1.562 + * include/freetype/internal/ftmemory.h (FT_ARRAY_MAX, 1.563 + FT_ARRAY_CHECK): New macros. 1.564 + 1.565 + * src/base/ftstream.c (FT_Stream_TryRead): New function. 1.566 + * include/freetype/internal/ftstream.h: Updated. 1.567 + 1.568 + * src/pcf/pcfread.c (pcf_read_TOC), src/pcf/pcfutil.c 1.569 + (BitOrderInvert, TwoByteSwap, FourByteSwap): Minor fixes and 1.570 + simplifications. Try to protect the PCF driver from doing stupid 1.571 + things with broken fonts. 1.572 + 1.573 + * src/lzw/ftlzw.c (FT_Stream_OpenLZW): Check the LZW header before 1.574 + doing anything else. This avoids unnecessary heap allocations 1.575 + (400KByte of heap memory for the LZW decoder). 1.576 + 1.577 + * src/gzip/ftgzip.c (FT_Stream_OpenGZip): Ditto for the gzip 1.578 + decoder, although the code savings are smaller. 1.579 + 1.580 + * docs/CHANGES: Updated. 1.581 + 1.582 +2005-03-10 David Turner <david@freetype.org> 1.583 + 1.584 + * src/tools/glnames.py: Add comment to explain the compression 1.585 + being used for the Adobe Glyph List. 1.586 + 1.587 +2005-03-10 Werner Lemberg <wl@gnu.org> 1.588 + 1.589 + * src/truetype/ttpload.c (tt_face_load_cvt, tt_face_load_fpgm): 1.590 + Fix serious typo which prevented correct TT rendering. 1.591 + 1.592 + * include/freetype/internal/ftmemory.h: Undo change from 2005-03-03. 1.593 + To suppress warnings it is sufficient to use `-fno-strict-aliasing'. 1.594 + 1.595 +2005-03-10 Werner Lemberg <wl@gnu.org> 1.596 + 1.597 + * src/tools/glnames.py: Formatted. 1.598 + Format output to be in sync with other FreeType code. 1.599 + Import `re' and `os.path'. 1.600 + (StringTable) <__init__>: Add parameter to initialize master table 1.601 + name. 1.602 + (StringTable) <dump>: Don't pass master table name. 1.603 + (StringTable) <dump_sublist>: Emit explanatory comment. 1.604 + Simplify and make output more human readable. 1.605 + (t1_bias, glyph_list, adobe_glyph_names): Removed. Unused. 1.606 + (main): Use `basename' for file name in header. 1.607 + 1.608 + * src/psnames/pstables.h: Regenerated. 1.609 + 1.610 +2005-03-09 David Turner <david@freetype.org> 1.611 + 1.612 + * src/tools/glnames.py: Rewrite the generator for the `pstables.h' 1.613 + header file which contains various constant tables related to glyph 1.614 + names. It now uses a different, more compact storage scheme that 1.615 + saves about 20KB. This also closes Savannah bug #12262. 1.616 + 1.617 + * src/psnames/pstables.h: Regenerated. 1.618 + 1.619 + * src/psnames/psmodule.c (ps_unicode_value): Use 1.620 + `ft_get_adobe_glyph_index', a new function defined in `pstables.h'. 1.621 + (ps_get_macintosh_name, ps_get_standard_strings): Updated. 1.622 + 1.623 + * src/base/ftobjs.c (FT_Set_Char_Sizes): Handle fractional sizes 1.624 + more carefully. This fixes Savannah bug #12263. 1.625 + 1.626 +2005-03-06 David Turner <david@freetype.org> 1.627 + 1.628 + * src/otvalid/otvgsub.c, src/otvalid/otvgpos.c: Make static tables 1.629 + constant. 1.630 + 1.631 + * src/autofit/aflatin.c (af_latin_metrics_init): Fix Savannah bug 1.632 + #12212 (auto-hinter refuses to work if no Unicode charmap in font). 1.633 + 1.634 +2005-03-05 Werner Lemberg <wl@gnu.org> 1.635 + 1.636 + * autogen.sh: New script for bootstrapping. 1.637 + 1.638 + * README.CVS: New file which documents bootstrapping. 1.639 + 1.640 + * builds/unix/aclocal.m4, builds/unix/config.guess, 1.641 + builds/unix/config.sub, builds/unix/configure, 1.642 + builds/unix/ltmain.sh: Removed. 1.643 + 1.644 +2005-03-04 Werner Lemberg <wl@gnu.org> 1.645 + 1.646 + * src/base/ftutil.c: Include FT_INTERNAL_OBJECTS_H. 1.647 + 1.648 +2005-03-03 Werner Lemberg <wl@gnu.org> 1.649 + 1.650 + Various fixes for C and C++ compiling. 1.651 + 1.652 + * src/autofit/*: Add copyright messages. 1.653 + 1.654 + * src/autofit/afhints.c (af_glyph_hints_done): Don't use 1.655 + `AF_Dimension' but `int' for loop counter. 1.656 + 1.657 + * src/autofit/aflatin.c (af_latin_metrics_init_widths): Don't use 1.658 + `AF_Dimension' but `int' for loop counter. 1.659 + Use proper enumeration value for `render_mode'. 1.660 + (af_latin_metrics_scale_dim): Don't shadow variables. 1.661 + (af_latin_hints_compute_segments): Use proper cast for `major_dir' 1.662 + and `segment_dir'. 1.663 + (af_latin_align_linked_edge, af_latin_hint_edges): Fix arguments of call to 1.664 + `af_latin_compute_stem_width'. 1.665 + (af_latin_hints_apply): Don't use `AF_Dimension' but `int' for loop 1.666 + counter. 1.667 + 1.668 + * src/base/ftdbgmem.c (ft_mem_table_get_source, FT_DumpMemory): Use 1.669 + proper cast for memory allocation. 1.670 + 1.671 + * src/cff/cffdrivr.c (cff_get_kerning): Use proper cast for 1.672 + initialization of `sfnt'. 1.673 + 1.674 + * src/sfnt/sfdriver.c: Include `ttkern.h'. 1.675 + 1.676 + * src/sfnt/ttkern.c (tt_face_get_kerning): Don't shadow variables. 1.677 + 1.678 + * src/truetype/ttgload.c: Include `ttpload.h'. 1.679 + 1.680 +2005-03-03 David Turner <david@freetype.org> 1.681 + 1.682 + * include/freetype/internal/ftmemory.h (FT_ALLOC, FT_REALLOC, 1.683 + FT_QALLOC, FT_QREALLOC) [gcc >= 3.3]: Provide macro versions which 1.684 + avoid compiler warnings. 1.685 + (FT_NEW, FT_NEW_ARRAY, FT_RENEW_ARRAY, FT_QNEW, FT_QNEW_ARRAY, 1.686 + FT_QRENEW_ARRAY, FT_ALLOC_ARRAY, FT_REALLOC_ARRAY): Updated. 1.687 + 1.688 + * include/freetype/internal/ftserv.h (FT_FACE_FIND_SERVICE, 1.689 + FT_FACE_FIND_GLOBAL_SERVICE, FT_FACE_LOOKUP_SERVICE) [__cplusplus]: 1.690 + Provide macro versions which avoid compiler warnings. 1.691 + 1.692 + * src/base/ftutil.c (ft_highpow2): New utility function. 1.693 + 1.694 + * include/freetype/internal/ftobjs.h: Updated. 1.695 + 1.696 + * src/pfr/pfrload.c (pfr_get_gindex, pfr_compare_kern_pairs, 1.697 + pfr_sort_kerning_pairs): Don't define if FT_OPTIMIZE_MEMORY is set. 1.698 + (pfr_phy_font_done): Don't handle `kern_pairs' if FT_OPTIMIZE_MEMORY 1.699 + is set. 1.700 + (pfr_phy_font_load): Don't call `pfr_sort_kerning_pairs' if 1.701 + FT_OPTIMIZE_MEMORY is set. 1.702 + 1.703 + * src/pfr/pfrobjs.c (pfr_slot_load): Comment out some code which 1.704 + doesn't work with broken fonts. 1.705 + (pfr_face_get_kerning) [FT_OPTIMIZE_MEMORY]: Implement. 1.706 + 1.707 + * src/pfr/pfrtypes.h (PFR_KernItemRec): Optimize member types. 1.708 + (PFR_NEXT_KPAIR): New macro. 1.709 + (PFR_PhyFontRec): Don't define `kern_pairs' if FT_OPTIMIZE_MEMORY is 1.710 + set. 1.711 + 1.712 + * src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Introduce 1.713 + temporary variable to avoid gcc warning. 1.714 + (tt_face_load_sbit_image): Mark unused variables with FT_UNUSED. 1.715 + 1.716 + * src/truetype/ttpload.c (tt_face_load_loca) [FT_OPTIMIZE_MEMORY]: 1.717 + Remove redundant variable. 1.718 + 1.719 + * include/freetype/config/ftmodule.h: Moving the order of drivers to 1.720 + speed up font loading. The PCF and BDF loaders are still slow and 1.721 + consume far too much memory. 1.722 + 1.723 +2005-03-03 Werner Lemberg <wl@gnu.org> 1.724 + 1.725 + * devel/ftoption.h: Updated to recent changes. 1.726 + 1.727 +2005-03-02 Werner Lemberg <wl@gnu.org> 1.728 + 1.729 + * src/autofit/afdummy.c, src/autofit/afdummy.h 1.730 + (af_dummy_script_class): Fix type. 1.731 + 1.732 + * src/autofit/aflatin.c, src/autofit/aflatin.h 1.733 + (af_latin_script_class): Fix type. 1.734 + 1.735 + * src/autofit/rules.mk (AUTOF_DRV_SRC): Fix typo. 1.736 + 1.737 +2005-03-01 David Turner <david@freetype.org> 1.738 + 1.739 + * src/sfnt/ttkern.c (tt_face_load_kern, tt_face_get_kerning), 1.740 + src/sfnt/ttsbit0.c (tt_face_load_sbit_strikes, 1.741 + tt_sbit_decoder_load_byte_aligned, tt_sbit_decoder_load_compound, 1.742 + tt_sbit_decoder_load_image), src/sfnt/ttload.c 1.743 + (tt_face_load_metrics): Remove compiler warnings 1.744 + -- redundant variables, missing initializations, etc. 1.745 + 1.746 + * src/sfnt/ttsbit.h: Handle FT_OPTIMIZE_MEMORY. 1.747 + 1.748 + * src/autofit/rules.mk, src/autofit/module.mk, 1.749 + src/autofit/afangles.h: New files. 1.750 + 1.751 + * src/autofit/afhints.c (af_axis_hints_new_segment, 1.752 + af_axis_hints_new_edge): New functions. 1.753 + (af_glyph_hints_done): Do proper deallocation. 1.754 + (af_glyph_hints_reload): Only reallocate points array. This 1.755 + drastically reduces heap usage. 1.756 + 1.757 + * src/autofit/afhints.h (AF_PointRec, AF_SegmentRec): Optimize 1.758 + member types and positions. 1.759 + (AF_AxisHintsRec): Add `max_segments' and `max_edges'. 1.760 + (af_axis_hints_new_segment, af_axis_hints_new_edge): New prototypes. 1.761 + 1.762 + * src/autofit/aflatin.c (af_latin_metricsc_scale): Don't call 1.763 + AF_SCALER_EQUAL_SCALES. 1.764 + (af_latin_hints_compute_segments): Change return type to FT_Error. 1.765 + Update all callers. 1.766 + Improve segment allocation. 1.767 + (af_latin_hints_compute_edges): Change return type to FT_Error. 1.768 + Update all callers. 1.769 + Improve edge allocation and link handling. 1.770 + (af_latin_hints_detect_features): Change return type to FT_Error. 1.771 + Update all callers. 1.772 + 1.773 + * src/autofit/aflatin.h: Updated. 1.774 + 1.775 + * src/autofit/afloader.c (af_loader_load_g) 1.776 + <FT_GLYPH_FORMAT_OUTLINE>: Assure axis->num_edges > 1. This fixes 1.777 + a bug with certain fonts. 1.778 + 1.779 + * include/freetype/config/ftmodule.h: The auto-fitter is now the 1.780 + only supported auto-hinting module. 1.781 + 1.782 + * include/freetype/config/ftstdlib.h (FT_INT_MAX): New macro. 1.783 + 1.784 +2005-02-28 Werner Lemberg <wl@gnu.org> 1.785 + 1.786 + * src/truetype/ttpload.c (tt_face_load_loca): Fix typo. 1.787 + 1.788 + * src/sfnt/ttkern.c: Include `ttkern.h'. 1.789 + (FT_COMPONENT): Updated. 1.790 + 1.791 + * include/freetype/internal/fttrace.h: Add entry for `ttkern'. 1.792 + 1.793 + * src/sfnt/ttsbit0.c: s/FT_Err_/SFNT_Err_/. 1.794 + Decorate constants with `U' and `L' where necessary. 1.795 + 1.796 + * src/sfnt/ttcmap.c (tt_cmap4_next): Remove unused variable. 1.797 + 1.798 +2005-02-28 David Turner <david@freetype.org> 1.799 + 1.800 + * src/base/ftdbgmem.c (FT_DumpMemory): Added sorting of memory 1.801 + sources according to decreasing maximum cumulative allocations. 1.802 + (ft_mem_source_compare): New auxiliary function. 1.803 + 1.804 + * src/sfnt/ttsbit0.c: New file, implementing a heap-optimized 1.805 + embedded bitmap loader. 1.806 + 1.807 + * src/sfnt/ttsbit.c: Include `ft2build.h', FT_INTERNAL_DEBUG_H, 1.808 + FT_INTERNAL_STREAM_H, FT_TRUETYPE_TAGS_H. 1.809 + Load `ttsbit0.c' if FT_OPTIMIZE_MEMORY is set, otherwise use 1.810 + file contents. 1.811 + (tt_face_load_sbit_strikes): Set up root fields to indicate the 1.812 + strikes. This fixes Savannah bug #12107. 1.813 + Use `static' keyword for `sbit_line_metrics_field', 1.814 + `strike_start_fields', `strike_end_fields'. 1.815 + 1.816 + * include/freetype/internal/tttypes.h (TT_FaceRec): Define 1.817 + `sbit_table', `sbit_table_size', `sbit_num_strikes' if 1.818 + FT_OPTIMIZE_MEMORY is set. 1.819 + Don't define `num_sbit_strikes' and `sbit_strikes' if 1.820 + FT_OPTIMIZE_MEMORY is set. 1.821 + 1.822 + * src/cff/cffobjs.c (sbit_size_reset): Handle FT_OPTIMIZE_MEMORY. 1.823 + 1.824 + * src/sfnt/sfobjs.c (sfnt_load_face): Fixed bug that prevented 1.825 + loading SFNT fonts without a `kern' table. 1.826 + Properly pass root->face_flags. 1.827 + Remove code for TT_CONFIG_OPTION_EMBEDDED_BITMAPS. 1.828 + 1.829 + * src/sfnt/sfdriver.c (sfnt_interface) 1.830 + [TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: Don't use `tt_find_sbit_image' 1.831 + and `tt_load_sbit_metrics'. 1.832 + 1.833 + * src/sfnt/ttcmap.c: Optimize linear charmap scanning for Format 4. 1.834 + (OPT_CMAP4): New macro. 1.835 + (TT_CMap4Rec) [OPT_CMAP4]: New structure. 1.836 + (tt_cmap4_init, tt_cmap4_set_range, tt_cmap4_next, tt_cmap4_reset) 1.837 + [OPT_CMAP4]: New functions. 1.838 + (tt_cmap4_char_next) [OPT_CMAP4]: Use `tt_cmap4_next' and 1.839 + `tt_cmap4_reset'. 1.840 + (tt_cmap4_class_rec) [OPT_CMAP4]: Use `TT_CMap4Rec' and 1.841 + `tt_cmap4_init'. 1.842 + 1.843 + * src/truetype/ttobjs.c (Reset_SBit_Size): Handle 1.844 + FT_OPTIMIZE_MEMORY. 1.845 + 1.846 + * src/autofit/afhints.h (AF_PointRec, AF_SegmentRec, AF_EdgeRec): 1.847 + Optimize member types. 1.848 + 1.849 + * src/autofit/afloader.c (af_loader_done): Call 1.850 + `af_glyph_hints_done'. 1.851 + 1.852 +2005-02-27 David Turner <david@freetype.org> 1.853 + 1.854 + * src/sfnt/ttkern.c (tt_face_load_kern): Fix a small bug which 1.855 + caused invalid (random) return values for the horizontal kerning. 1.856 + 1.857 +2005-02-25 David Turner <david@freetype.org> 1.858 + 1.859 + Implement several memory optimizations to drastically reduce the 1.860 + heap usage of FreeType, especially in the case of memory-mapped 1.861 + files. The idea is to avoid loading and decoding tables in the 1.862 + heap, and instead access the raw data whenever possible (i.e., when 1.863 + it doesn't compromise performance). 1.864 + 1.865 + This has several benefits: For example, opening vera.ttf now uses 1.866 + just a small amount of memory (even when the FT_Library footprint is 1.867 + accounted for), until you start loading glyphs. Even then, you save 1.868 + at least 20KB compared to the non-optimized case. Performance of 1.869 + various operations, including open and close, has also been 1.870 + dramatically improved. 1.871 + 1.872 + More optimizations to come, especially for the auto-hinter. 1.873 + 1.874 + * include/freetype/internal/sfnt.h (TT_Face_GetKerningFunc): New 1.875 + function type. 1.876 + (SFNT_Interface): Add it. 1.877 + 1.878 + * include/freetype/internal/tttypes.h (TT_HdmxEntryRec, TT_HdmxRec, 1.879 + TT_Kern0_PairRec): Don't define if FT_OPTIMIZE_MEMORY is set. 1.880 + (TT_FaceRec): Define `horz_metrics', `horz_metrics_size', 1.881 + `vert_metrics', `vert_metrics_size', `hdmx_table', 1.882 + `hdmx_table_size', `hdmx_record_count', `hdmx_record_size', 1.883 + `hdmx_record_sizes', `kern_table', `kern_table_size, 1.884 + `num_kern_tables', `kern_avail_bits', `kern_order_bits' if 1.885 + FT_OPTIMIZE_MEMORY is set. 1.886 + Don't define `hdmx', `num_kern_pairs', `kern_table_index', 1.887 + `kern_pairs' if FT_OPTIMIZE_MEMORY is set. 1.888 + 1.889 + * src/base/ftdbgmem.c (ft_mem_table_set): Don't shadow variable. 1.890 + Fix compiler warning. 1.891 + 1.892 + * src/cff/cffdrivr.c (Get_Kerning): Renamed to... 1.893 + (cff_get_kerning): This. Simplify. 1.894 + (cff_driver_class): Updated. 1.895 + 1.896 + * src/sfnt/Jamfile (_sources): Add `ttkern'. 1.897 + * src/sfnt/rules.mk (SFNT_DRV_SRC): Add `ttkern.c'. 1.898 + 1.899 + * src/sfnt/sfdriver.c (sfnt_interface): Add `tt_face_get_kerning'. 1.900 + 1.901 + * src/sfnt/sfnt.c: Include `ttkern.c'. 1.902 + 1.903 + * src/sfnt/sfobjs.c: Include `ttkern.h'. 1.904 + (sfnt_load_face): Consider the `kern' and `gasp' table as optional. 1.905 + (sfnt_done_face): Call `tt_face_done_kern'. 1.906 + Handle horizontal metrics for FT_OPTIMIZE_MEMORY. 1.907 + 1.908 + * src/sfnt/ttkern.c, src/sfnt/ttkern.h: New files. Code has been 1.909 + taken from `ttload.c' and `ttload.h'. 1.910 + Provide special versions of `tt_face_load_kern', 1.911 + `tt_face_get_kerning', and `tt_face_done_kern' for 1.912 + FT_OPTIMIZE_MEMORY. 1.913 + 1.914 + * src/sfnt/ttload.c (tt_face_load_metrics, tt_face_load_hdmx, 1.915 + tt_face_free_hdmx): Provide version for FT_OPTIMIZE_MEMORY. 1.916 + (tt_face_load_kern, tt_kern_pair_compare, TT_KERN_INDEX): Moved to 1.917 + `ttkern.c'. 1.918 + 1.919 + * src/sfnt/ttload.h: Updated. 1.920 + 1.921 + * src/sfnt/ttsbit.c (sbit_metrics_field): Add `static' keyword. 1.922 + 1.923 + * src/truetype/ttdriver.c (Get_Kerning): Renamed to... 1.924 + (tt_get_kerning): This. Simplify. 1.925 + (tt_driver_class): Updated. 1.926 + 1.927 + * src/truetype/ttgload.c (TT_Get_Metrics): Renamed to... 1.928 + (tt_face_get_metrics): This. Provide version for FT_OPTIMIZE_MEMORY. 1.929 + Update all callers. 1.930 + (Get_Advance_Widths): Replaced with... 1.931 + (Get_Advance_WidthPtr): This. Provide version for 1.932 + FT_OPTIMIZE_MEMORY. 1.933 + Update all callers. 1.934 + 1.935 + * src/truetype/ttgload.h: Updated. 1.936 + 1.937 +2005-02-22 David Turner <david@freetype.org> 1.938 + 1.939 + * src/base/ftdbgmem.c: Partly rewritten. Added the ability to list 1.940 + all allocation sites in the memory debugger. Also a new function 1.941 + FT_DumpMemory() was added. It is only available in builds with 1.942 + FT_DEBUG_MEMORY defined, and you must declare it in your own code to 1.943 + use it, i.e., with something like: 1.944 + 1.945 + extern void FT_DumpMemory( FT_Memory ); 1.946 + 1.947 + ... 1.948 + 1.949 + FT_DumpMemory( memory ); 1.950 + 1.951 + * include/freetype/config/ftoption.h 1.952 + (TT_CONFIG_OPTION_BYTECODE_INTERPRETER): Comment out definition -- 1.953 + again. 1.954 + (FT_OPTIMIZE_MEMORY): New configuration macro to control various 1.955 + optimizations for reducing the heap footprint of memory-mapped 1.956 + TrueType files. 1.957 + 1.958 + * include/freetype/internal/ftmemory.h (FT_ARRAY_ZERO): New 1.959 + convenience macro. 1.960 + 1.961 + * include/freetype/internal/tttypes.h (TT_FaceRec) 1.962 + [FT_OPTIMIZE_MEMORY]: Use optimized types for `num_locations' and 1.963 + `glyph_locations'. 1.964 + 1.965 + * src/truetype/ttgload.c (load_truetype_glyph): Call 1.966 + `tt_face_get_location'. 1.967 + 1.968 + * src/truetype/ttobjs.c (tt_face_init) 1.969 + [FT_CONFIG_OPTION_INCREMENTAL]: Improve error handling. 1.970 + (tt_face_done): Call `tt_face_done_loca'. 1.971 + 1.972 + * src/truetype/ttpload.c (tt_face_get_location, tt_face_done_loca): 1.973 + New functions. If FT_OPTIMIZE_MEMORY is set, the locations table is 1.974 + read directly from memory-mapped streams, instead of being decoded 1.975 + into the heap. 1.976 + (tt_face_load_loca) [FT_OPTIMIZE_MEMORY]: New implementation. 1.977 + (tt_face_load_cvt, tt_face_load_fpgm): Only load table if the 1.978 + bytecode interpreter is compiled in. 1.979 + 1.980 + * src/truetype/ttpload.h: Updated. 1.981 + 1.982 + * src/autohint/ahglyph.c (ah_outline_load): Improve allocation 1.983 + logic. 1.984 + 1.985 +2005-02-20 Werner Lemberg <wl@gnu.org> 1.986 + 1.987 + * builds/unix/ltmain.sh: Regenerated with `libtoolize --force 1.988 + --copy' from libtool 1.5.14. 1.989 + * builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from 1.990 + automake 1.9.4. 1.991 + 1.992 + * builds/unix/config.guess, builds/unix/config.sub: Updated from 1.993 + `config' CVS module at subversions.gnu.org. 1.994 + 1.995 + * builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from 1.996 + `texinfo' CVS module at subversions.gnu.org. 1.997 + 1.998 +2005-02-14 Werner Lemberg <wl@gnu.org> 1.999 + 1.1000 + * src/cff/cffcmap.c (cff_cmap_unicode_init): Don't try to build 1.1001 + a cmap for a CID-keyed font which doesn't have SIDs. 1.1002 + 1.1003 +2005-02-13 Werner Lemberg <wl@gnu.org> 1.1004 + 1.1005 + * src/type1/t1load.c (read_binary_data): Return more meaningful 1.1006 + value. 1.1007 + (parse_encoding, parse_subrs, parse_charstrings, parse_dict): Check 1.1008 + parser error value after call to T1_Skip_PS_Token (where necessary). 1.1009 + 1.1010 + * src/type1/t1parse.c (T1_Get_Private_Dict): Check parser error 1.1011 + value after call to T1_Skip_PS_Token. 1.1012 + 1.1013 + * src/cid/cidparse.c (cid_parser_new): Check parser error value 1.1014 + after call to cid_parser_skip_PS_token. 1.1015 + 1.1016 + * src/type42/t42parse.c (t42_parse_encoding, t42_parse_sfnts, 1.1017 + t42_parse_charstrings, t42_parse_dict): Check parser error value 1.1018 + after call to T1_Skip_PS_Token (where necessary). 1.1019 + 1.1020 + * src/psaux/psobjc.c (skip_string, ps_parser_skip_PS_token, 1.1021 + ps_tobytes): Add error messages. 1.1022 + 1.1023 +2005-02-12 Werner Lemberg <wl@gnu.org> 1.1024 + 1.1025 + * configure: Output more variables to the created Makefile so that 1.1026 + it can be used for ft2demos also (if the FT2DEMOS variable is 1.1027 + defined). 1.1028 + 1.1029 +2005-02-10 David Turner <david@freetype.org> 1.1030 + 1.1031 + * src/pfr/pfrgload.c (pfr_glyph_load): Fix an unbounded growing 1.1032 + dynamic array when loading a glyph from a PFR font (Savannah bug 1.1033 + #11921). 1.1034 + 1.1035 + * src/base/ftbitmap.c (FT_Bitmap_Convert): Small improvements to the 1.1036 + conversion function (mainly stupid optimization). 1.1037 + 1.1038 + * src/base/Jamfile: Adding ftbitmap.c to the list of compiled files. 1.1039 + 1.1040 +2005-02-10 Werner Lemberg <wl@gnu.org> 1.1041 + 1.1042 + * builds/unix/freetype-config.in: Add new flag `--ftversion' to 1.1043 + return the FreeType version. Suggested by George Williams 1.1044 + <gww@silcom.com>. 1.1045 + 1.1046 + * docs/CHANGES: Updated. 1.1047 + 1.1048 +2005-02-09 Werner Lemberg <wl@gnu.org> 1.1049 + 1.1050 + * src/otvalid/otvmod.c (otv_validate): Deallocate arrays in case 1.1051 + of error. Reported by YAMANO-UCHI Hidetoshi <mer@din.or.jp>. 1.1052 + 1.1053 +2005-02-08 Werner Lemberg <wl@gnu.org> 1.1054 + 1.1055 + * src/psaux/t1decode.c (t1_decoder_parse_charstrings) 1.1056 + <op_closepath>: Accept `T1_Parse_Have_Moveto' state also which can 1.1057 + happen in empty glyphs. Reported by Ian Brown 1.1058 + <ian.brown@printsoft.de> (Savannah bug #11856). 1.1059 + 1.1060 +2005-02-04 Werner Lemberg <wl@gnu.org> 1.1061 + 1.1062 + * src/otlayout/*: Removed. Obsolete. 1.1063 + 1.1064 +2004-12-28 Werner Lemberg <wl@gnu.org> 1.1065 + 1.1066 + * builds/unix/ltmain.sh: Regenerated with `libtoolize --force 1.1067 + --copy' from libtool 1.5.10. 1.1068 + * builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from 1.1069 + automake 1.9.4. 1.1070 + * builds/unix/configure: Regenerated with autoconf 2.59b. 1.1071 + 1.1072 + * builds/unix/config.guess, builds/unix/config.sub: Updated from 1.1073 + `config' CVS module at subversions.gnu.org. 1.1074 + 1.1075 + * builds/unix/install-sh: Updated from 1.1076 + `texinfo' CVS module at subversions.gnu.org. 1.1077 + 1.1078 + * builds/unix/ftsystem.c (FT_Stream_Open): Add proper cast for 1.1079 + ft_alloc. 1.1080 + Fix compiler warning. 1.1081 + 1.1082 +2004-12-27 Dirck Blaskey <listtarget@danbala.com> 1.1083 + 1.1084 + * src/cff/cffobjs.c (cff_face_init): Improve computation of 1.1085 + FT_STYLE_BOLD_FLAG. 1.1086 + 1.1087 +2004-12-27 Werner Lemberg <wl@gnu.org> 1.1088 + 1.1089 + * src/cff/cffobjs.c (cff_face_init): A CFF within an SFNT can have 1.1090 + only a single font. This is undocumented but has been verified on 1.1091 + the opentype list. 1.1092 + 1.1093 +2004-12-26 Werner Lemberg <wl@gnu.org> 1.1094 + 1.1095 + * Jamfile (FT2_COMPONENTS): Add `otvalid'. 1.1096 + 1.1097 +2004-12-25 Werner Lemberg <wl@gnu.org> 1.1098 + 1.1099 + * src/base/ftbitmap.c (FT_Bitmap_Convert): Fix compiler warning. 1.1100 + 1.1101 +2004-12-15 Werner Lemberg <wl@gnu.org> 1.1102 + 1.1103 + * vms_make.com: Add ftbitmap.obj. 1.1104 + 1.1105 +2004-12-14 Werner Lemberg <wl@gnu.org> 1.1106 + 1.1107 + * src/base/ftbitmap.c, include/freetype/ftbitmap.h: New files for 1.1108 + handling various bitmap formats. 1.1109 + 1.1110 + * include/freetype/config/ftheader.h (FT_BITMAP_H): New macro. 1.1111 + 1.1112 + * src/base/rules.mk (BASE_EXT_SRC): Add ftbitmap.c. 1.1113 + 1.1114 + * src/bdf/bdfdrivr.c (BDF_Glyph_Load): Don't convert bitmaps to 8bpp 1.1115 + but return them as-is. 1.1116 + 1.1117 + * docs/CHANGES: Mention new bitmap API. 1.1118 + * include/freetype/ftchapter.s: Updated. 1.1119 + 1.1120 +2004-12-11 Robert Clark <freetype@ratty.org.uk> 1.1121 + 1.1122 + * src/base/ftobjs.c (FT_Get_Kerning): Make kerning amount 1.1123 + dependent on ppem by scaling down for ppem < 25, then do normal 1.1124 + rounding. This gives slightly better results than rounding towards 1.1125 + zero. 1.1126 + 1.1127 +2004-12-09 Werner Lemberg <wl@gnu.org> 1.1128 + 1.1129 + * src/base/ftobjs.c (FT_Get_Kerning): Always round towards zero 1.1130 + for FT_KERNING_DEFAULT. This greatly enhances the kerning for 1.1131 + small ppem values. 1.1132 + 1.1133 +2004-12-08 Werner Lemberg <wl@gnu.org> 1.1134 + 1.1135 + * src/base/ftobjs.c (ft_glyphslot_clear): Reset `lsb_delta' and 1.1136 + `rsb_delta'. 1.1137 + 1.1138 +2004-12-05 Werner Lemberg <wl@gnu.org> 1.1139 + 1.1140 + * builds/unix/install.mk (install): Use $(OBJ_BUILD) for ftconfig.h. 1.1141 + 1.1142 +2004-12-03 Antoine Leca <Antoine-Freetype@Leca-Marti.org> 1.1143 + 1.1144 + * include/freetype/ttnameid.h: Updated to latest 1.1145 + specifications from Microsoft. 1.1146 + 1.1147 +2004-11-26 Jouk Jansen <joukj@hrem.stm.tudelft.nl> 1.1148 + 1.1149 + * vms_make.com: Include ftbbox.c. 1.1150 + Fix `ccopt'. 1.1151 + Handle `otvalid' module. 1.1152 + Update `vmslib.dat' default values. 1.1153 + Fixes to `libs.opt'. 1.1154 + 1.1155 +2004-11-23 Anders Kaseorg <anders@kaseorg.com> 1.1156 + 1.1157 + * src/base/ftoutln.c (FT_OrientationExtremumRec, 1.1158 + ft_orientation_extremum_compute): Removed. 1.1159 + (FT_Outline_Get_Orientation): Rewritten, simplified. 1.1160 + 1.1161 + * src/autohint/ahglyph.c: Include FT_OUTLINE_H. 1.1162 + (ah_test_extremum, ah_get_orientation): Removed. 1.1163 + (ah_outline_load): Use FT_Outline_Get_Orientation. 1.1164 + 1.1165 + * src/base/ftsynth.c (ft_test_extrama, ft_get_orientation): Removed. 1.1166 + (FT_GlyphSlot_Embolden): Use FT_Outline_Get_Orientation. 1.1167 + 1.1168 +2004-11-23 Fernando Papa <fpapa@netgate.com.uy> 1.1169 + 1.1170 + * src/truetype/ttinterp.h: Fix typo. 1.1171 + 1.1172 +2004-11-22 Antoine Leca <Antoine-Freetype@Leca-Marti.org> 1.1173 + 1.1174 + * builds/win32/detect.mk: Corrected logic that detects Windows NT to 1.1175 + use the previous change even if win32 is forced. Corrected 1.1176 + detection of win32 on Win9X. 1.1177 + 1.1178 + * builds/dos/detect.mk: Added same correction as for win32 about 1.1179 + COPY on Windows NT. Detection of plain DOS 7.x. 1.1180 + 1.1181 +2004-11-22 Werner Lemberg <wl@gnu.org> 1.1182 + 1.1183 + * builds/detect.mk: Undo change from 2004-11-20. 1.1184 + * builds/win32/detect.mk: If the `OS' environment variable contains 1.1185 + `Windows_NT', use `cmd.exe /c copy' for copying files. 1.1186 + 1.1187 +2004-11-20 Werner Lemberg <wl@gnu.org> 1.1188 + 1.1189 + * builds/detect.mk (dos_setup): Use `cmd.exe' for copying 1.1190 + $(CONFIG_MK) to force lowercase file name under Windows. 1.1191 + 1.1192 +2004-11-19 Werner Lemberg <wl@gnu.org> 1.1193 + 1.1194 + Fix a serious bug in the TT hinter. 1.1195 + 1.1196 + * src/truetype/ttgload.c (TT_Process_Simple_Glyph): Don't shift 1.1197 + points vertically before hinting. 1.1198 + 1.1199 + * docs/CHANGES: Updated. 1.1200 + 1.1201 + * src/cache/ftcglyph.c (FTC_GNode_UnselectFamily, 1.1202 + FTC_GCache_Lookup): A new try to fix comparison with zero. 1.1203 + 1.1204 +2004-11-16 Werner Lemberg <wl@gnu.org> 1.1205 + 1.1206 + * builds/unix/configure.ac: Add `-fno-strict-aliasing' if gcc is 1.1207 + used. 1.1208 + * builds/unix/configure: Regenerated. 1.1209 + * builds/unix/config.guess, builds/unix/config.sub: Updated from 1.1210 + `config' CVS module at subversions.gnu.org. 1.1211 + 1.1212 +2004-11-16 Dr. Martin P.J. Zinser <zinser@decus.de> 1.1213 + 1.1214 + * src/cache/ftcglyph.c (FTC_GNode_UnselectFamily, 1.1215 + FTC_GCache_Lookup): Fix comparison with zero. 1.1216 + 1.1217 + * docs/INSTALL.VMS: Updated. 1.1218 + 1.1219 + * vms_make.com: Updated. All `descrip.mms' files are now created 1.1220 + automatically. 1.1221 + 1.1222 + * src/*/descrip.mms: Removed. 1.1223 + 1.1224 +2004-11-16 Owen Taylor <otaylor@redhat.com> 1.1225 + 1.1226 + * builds/unix/freetype-config.in: Suppress -L$libdir for 1.1227 + /usr/lib64 as well as /usr/lib. (Reported by Dan Winship - 1.1228 + https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=139199) 1.1229 + 1.1230 +2004-11-11 Werner Lemberg <wl@gnu.org> 1.1231 + 1.1232 + * src/cff/cffdrivr.c (cff_service_ps_info): Updated. 1.1233 + * src/cid/cidriver.c (cid_service_ps_info): Updated. 1.1234 + * src/type42/t42drivr.c (t42_ps_get_font_private): New function. 1.1235 + (t42_service_ps_info): Updated. 1.1236 + 1.1237 + * src/type42/t42parse.c (t42_parse_dict): Remove compiler warning. 1.1238 + 1.1239 +2004-11-11 David Bevan <dbevan@emtex.com> 1.1240 + 1.1241 + Add new function FT_Get_PS_Font_Private(). 1.1242 + 1.1243 + * include/freetype/internal/services/svpsinfo.h 1.1244 + (PS_GetFontPrivateFunc): New service function. 1.1245 + 1.1246 + * include/freetype/t1tables.h, src/base/fttype1.c 1.1247 + (FT_Get_PS_Font_Private): New function. 1.1248 + 1.1249 + * src/type1/t1driver.c (t1_ps_get_font_private): New function. 1.1250 + (t1_service_ps_info): Updated. 1.1251 + 1.1252 +2004-10-13 Werner Lemberg <wl@gnu.org> 1.1253 + 1.1254 + * include/freetype/config/ftstdlib.h: Include `stddef.h'. 1.1255 + (ft_ptrdiff_t): Define. 1.1256 + 1.1257 + * include/freetype/fttypes.h (FT_PtrDist): Use `ft_ptrdiff_t'. 1.1258 + 1.1259 + * src/cid/cidload.c (cid_parse_dict), src/type1/t1load.c 1.1260 + (parse_dict): Fix compiler warning. 1.1261 + 1.1262 +2004-10-11 Joshua Neal <jneal@csdaily.com> 1.1263 + 1.1264 + * src/sfnt/ttcmap.c (tt_face_build_cmaps): Check for pointer 1.1265 + overflow. 1.1266 + 1.1267 + * src/sfnt/ttload.c (tt_face_load_hdmx): Protect against bad input. 1.1268 + Don't use FT_QNEW_ARRAY but FT_NEW_ARRAY to make deallocation work 1.1269 + in case of failure. 1.1270 + 1.1271 + * src/sfnt/ttsbit.c (Load_SBit_Range): Check range intervals. 1.1272 + (tt_face_load_sbit_strikes): Allocate `strike_sbit_ranges' after 1.1273 + frame test. 1.1274 + 1.1275 + * src/truetype/ttgload.c (TTLoad_Simple_Glyph): Add assertion for 1.1276 + `flag'. 1.1277 + 1.1278 +2004-10-09 Werner Lemberg <wl@gnu.org> 1.1279 + 1.1280 + * docs/CHANGES: Updated. 1.1281 + 1.1282 +2004-10-09 Boris Letocha <b.letocha@cz.gmc.net> 1.1283 + 1.1284 + Fix handling of NPUSHW if skipped in data stream. 1.1285 + 1.1286 + * src/truetype/ttinterp.c (opcode_length): Set value for NPUSHW 1.1287 + to -2. 1.1288 + (SkipCode, TT_RunIns): Use opcode_length value for computation of 1.1289 + bytes to be skipped. 1.1290 + 1.1291 +2004-09-10 Jouk Jansen <joukj@hrem.stm.tudelft.nl> 1.1292 + 1.1293 + * vms_make.com: Updated. 1.1294 + 1.1295 +2004-09-09 Werner Lemberg <wl@gnu.org> 1.1296 + 1.1297 + Adding OpenType validation module. The code is based on the 1.1298 + (unfinished) `otlayout' module but has been heavily modified to make 1.1299 + it much more compact. 1.1300 + 1.1301 + * src/otvalid/*: New module. 1.1302 + 1.1303 + * include/freetype/ftotval.h, src/base/ftotval.c, 1.1304 + include/freetype/internal/services/svotval.h: New files. 1.1305 + 1.1306 + * include/freetype/config/ftmodule.h: Add otv_module_class. 1.1307 + * include/freetype/config/ftheader.h (FT_OPENTYPE_VALIDATE_H): New 1.1308 + macro. 1.1309 + * include/freetype/internal/ftserv.h 1.1310 + (FT_SERVICE_OPENTYPE_VALIDATE_H): New macro. 1.1311 + * include/freetype/internal/fttrace.h (otvmodule, otvcommon, 1.1312 + otvbase, otvgdef, otvgpos, otvgsub, otvjstf): New trace components. 1.1313 + 1.1314 + * include/freetype/ftchapters.h: Updated. 1.1315 + 1.1316 + * src/base/Jamfile (Library), src/base/descrip.mms (OBJS), 1.1317 + src/base/rules.mk (BASE_EXT_SRC): Updated. 1.1318 + 1.1319 + * docs/CHANGES: Updated. 1.1320 + 1.1321 +2004-09-08 Werner Lemberg <wl@gnu.org> 1.1322 + 1.1323 + * src/tools/docmaker/sources.py (re_source_block_format2) <column>: 1.1324 + Use lookahead assertion to not match `*/'. This removes spurious 1.1325 + insertions of `/' in the HTML output. 1.1326 + 1.1327 +2004-09-07 Werner Lemberg <wl@gnu.org> 1.1328 + 1.1329 + * src/truetype/ttgxvar.c (TT_Vary_Get_Glyph_Deltas): Fix call to 1.1330 + FT_NEW_ARRAY. 1.1331 + 1.1332 +2004-09-04 Werner Lemberg <wl@gnu.org> 1.1333 + 1.1334 + * include/freetype/internal/ftobjs.h: Don't include 1.1335 + FT_CONFIG_STANDARD_LIBRARY_H. 1.1336 + (FT_Validator, FT_ValidationLevel, FT_ValidatorRec, FT_VALIDATOR, 1.1337 + ft_validator_init, ft_validator_run, ft_validator_error, FT_INVALID, 1.1338 + FT_INVALID_TOO_SHORT, FT_INVALID_OFFSET, FT_INVALID_FORMAT, 1.1339 + FT_INVALID_GLYPH_ID, FT_INVALID_DATA): Move to... 1.1340 + 1.1341 + * include/freetype/internal/ftvalid.h: New file. 1.1342 + Make FT_INVALID return module-specific error codes. 1.1343 + 1.1344 + * include/freetype/internal/internal.h (FT_INTERNAL_VALIDATE_H): New 1.1345 + macro. 1.1346 + 1.1347 + * include/freetype/fterrors.h: Undefine FT_ERR_PREFIX only if 1.1348 + FT_KEEP_ERR_PREFIX isn't defined. 1.1349 + 1.1350 + * src/base/ftobjs.c: Include FT_INTERNAL_VALIDATE_H. 1.1351 + 1.1352 + * src/sfnt/ttcmap.h: Don't include FT_INTERNAL_OBJECTS_H but 1.1353 + FT_INTERNAL_VALIDATE_H. 1.1354 + 1.1355 + * src/sfnt/ttcmap.c: Don't include FT_INTERNAL_OBJECTS_H but 1.1356 + FT_INTERNAL_VALIDATE_H. 1.1357 + Include sferrors.h before FT_INTERNAL_VALIDATE_H. 1.1358 + s/FT_Err_Ok/SFNT_Err_Ok/. 1.1359 + 1.1360 + * src/sfnt/sferrors.h: Define FT_KEEP_ERR_PREFIX. 1.1361 + 1.1362 + * src/type1/t1afm.c: Include t1errors.h. 1.1363 + 1.1364 +2004-09-03 Werner Lemberg <wl@gnu.org> 1.1365 + 1.1366 + * src/base/ftdebug.c (ft_debug_init): Highest debug level is 7, 1.1367 + not 6. 1.1368 + * docs/DEBUG: Updated. 1.1369 + 1.1370 +2004-08-30 Werner Lemberg <wl@gnu.org> 1.1371 + 1.1372 + * include/freetype/tttags.h (TTAG_BASE, TTAG_GDEF, TTAG_GPOS, 1.1373 + TTAG_JSTF): New tags. 1.1374 + 1.1375 + * include/freetype/fttypes.h (FT_Bytes, FT_Tag): New typedefs. 1.1376 + (FT_Int): Add `signed'. 1.1377 + 1.1378 +2004-08-29 Werner Lemberg <wl@gnu.org> 1.1379 + 1.1380 + * src/otlayout/otlgpos.c (otl_gpos_subtable_validate): Add argument 1.1381 + to pass number of lookups. 1.1382 + Update all callers. 1.1383 + Don't call otl_lookup_list_validate but otl_lookup_validate. 1.1384 + (otl_gpos_validate): Call otl_lookup_list_validate instead of 1.1385 + otl_gpos_subtable_validate. 1.1386 + 1.1387 + * src/otlayout/otlgpos.h: Updated. 1.1388 + 1.1389 + * src/otlayout/otljstf.c (otl_jstf_max_validate): Add argument to 1.1390 + pass number of lookups. 1.1391 + Update all callers. 1.1392 + 1.1393 + 1.1394 + * src/cff/cffparse.c (cff_parse_real): s/exp/exponent/ to avoid 1.1395 + compiler warning. 1.1396 + 1.1397 + 1.1398 + * src/sfnt/ttcmap0.c, src/sfnt/ttcmap0.h: Renamed to... 1.1399 + * src/sfnt/ttcmap.c, src/sfnt/ttcmap.h: This. 1.1400 + * src/sfnt/Jamfile, src/sfnt/rules.mk, src/sfnt/sfdriver.c, 1.1401 + src/sfnt/sfnt.c, src/sfnt/sfobjs.c: Updated. 1.1402 + 1.1403 + 1.1404 + * builds/compiler/gcc-dev.mk (CFLAGS): Don't add `-Wnested-externs' 1.1405 + if compiler is g++ (v3.3.3 emits a warning otherwise). 1.1406 + 1.1407 +2004-08-28 Werner Lemberg <wl@gnu.org> 1.1408 + 1.1409 + * src/otlayout/otlgpos.c (otl_value_length): Return number of bytes, 1.1410 + not number of 16bit entities. 1.1411 + (otl_gpos_lookup2_validate): Check class definition tables for 1.1412 + format 2. 1.1413 + Fix loop for format 2. 1.1414 + (otl_liga_mark2_validate): Fix offset for otl_anchor_validate. 1.1415 + 1.1416 +2004-08-27 Werner Lemberg <wl@gnu.org> 1.1417 + 1.1418 + * src/base/ftmac.c: Don't include truetype/ttobjs.h. 1.1419 + Don't include type1/t1objs.h. 1.1420 + (FT_New_Face_From_FSSpec) [!__MWERKS__]: Remove compiler warnings. 1.1421 + 1.1422 +2004-08-27 Mathieu Malaterre <mathieu@malaterre.com> 1.1423 + 1.1424 + * src/base/ftmac.c: Handle OS_INLINE for xlc compiler also. 1.1425 + 1.1426 +2004-08-27 Werner Lemberg <wl@gnu.org> 1.1427 + 1.1428 + * src/otlayout/otlayout.h: Add copyright. 1.1429 + (OTL_INVALID_OFFSET): Removed. 1.1430 + 1.1431 + * src/otlayout/otlgdef.h: Include otlayout.h. 1.1432 + Comment out inclusion of otltable.h. 1.1433 + 1.1434 + * src/otlayout/otlgpos.c (otl_gpos_lookup4_validate): Fix call 1.1435 + to otl_base_array_validate. 1.1436 + (otl_liga_mark2_validate): Fix `for' loop. 1.1437 + 1.1438 + * src/otlayout/otlgsub.c (otl_ligature_validate): Check `glyph_id', 1.1439 + not components array. 1.1440 + 1.1441 + * src/otlcommn.c (otl_lookup_get_count, otl_feature_get_count): 1.1442 + Comment out. 1.1443 + (otl_lookup_list_get_count, otl_feature_list_get_count): Activate. 1.1444 + (otl_feature_list_validate, otl_gsubgpos_get_lookup_count): 1.1445 + s/otl_lookup_get_count/otl_lookup_list_get_count/. 1.1446 + (otl_script_list_validate): 1.1447 + s/otl_feature_get_count/otl_feature_list_get_count/. 1.1448 + (otl_script_validate): Call otl_lang_validate for default language. 1.1449 + 1.1450 + * src/otlayout/otlcommn.h: Updated. 1.1451 + 1.1452 +2004-08-16 Werner Lemberg <wl@gnu.org> 1.1453 + 1.1454 + * src/otlayout/otlgpos.c (otl_gpos_lookup1_validate, 1.1455 + otl_gpos_lookup2_validate, otl_gpos_lookup3_validate, 1.1456 + otl_gpos_lookup4_validate, otl_gpos_lookup5_validate, 1.1457 + otl_gpos_lookup6_validate, otl_gpos_lookup9_validate, 1.1458 + otl_gpos_validate): Update 1.1459 + function arguments. 1.1460 + (otl_gpos_lookup7_validate, otl_gpos_lookup8_validate): Update 1.1461 + function arguments. 1.1462 + Handle NULL offsets correctly. 1.1463 + Check sequence and lookup indices for format 3. 1.1464 + (otl_pos_rule_validate, otl_chain_pos_rule_validate): Add argument 1.1465 + to pass lookup count. 1.1466 + Check sequence and glyph indices. 1.1467 + (otl_gpos_subtable_validate): Update function arguments. 1.1468 + Update callers. 1.1469 + 1.1470 + * src/otlayout/otlgpos.h: Updated. 1.1471 + 1.1472 + * src/otlayout/otlgsub.c (otl_gsub_lookup1_validate, 1.1473 + otl_gsub_lookup3_validate, otl_gsub_lookup8_validate): Update 1.1474 + function arguments. 1.1475 + Add glyph index checks. 1.1476 + (otl_sequence_validate, otl_alternate_set_validate, 1.1477 + otl_ligature_validate): Add argument to pass glyph count. 1.1478 + Update callers. 1.1479 + Add glyph index check. 1.1480 + (otl_gsub_lookup2_validate, otl_gsub_lookup4_validate): Update 1.1481 + function arguments. 1.1482 + (otl_ligature_set_validate): Add argument to pass glyph count. 1.1483 + Update caller. 1.1484 + (otl_sub_class_rule_validate, 1.1485 + otl_sub_class_rule_set_validate): Removed. 1.1486 + (otl_sub_rule_validate, otl_chain_sub_rule_validate): Add argument 1.1487 + to pass lookup count. 1.1488 + Update callers. 1.1489 + Add lookup index check. 1.1490 + (otl_sub_rule_set_validate, otl_chain_sub_rule_set_validate): Add 1.1491 + argument to pass lookup count. 1.1492 + Update callers. 1.1493 + (otl_gsub_lookup5_validate): Update function arguments. 1.1494 + Handle NULL offsets correctly. 1.1495 + Don't call otl_sub_class_rule_set_validate but 1.1496 + otl_sub_rule_set_validate. 1.1497 + Check sequence and lookup indices for format 3. 1.1498 + (otl_gsub_lookup6_validate): Update function arguments. 1.1499 + Handle NULL offsets correctly. 1.1500 + Check sequence and lookup indices for format 3. 1.1501 + (otl_gsub_lookup7_validate, otl_gsub_validate): Update function 1.1502 + arguments. 1.1503 + 1.1504 + * src/otlayout/otlgsub.h: Updated. 1.1505 + 1.1506 + * src/otlayout/otlbase.c (otl_base_validate): Handle NULL offsets 1.1507 + correctly. 1.1508 + 1.1509 + * src/otlayout/otlcommn.c (otl_class_definition_validate): Fix 1.1510 + compiler warning. 1.1511 + (otl_coverage_get_first, otl_coverage_get_last): New functions. 1.1512 + (otl_lookup_validate): Add arguments to pass lookup and glyph 1.1513 + counts. 1.1514 + Update callers. 1.1515 + (otl_lookup_list_validate): Add argument to pass glyph count. 1.1516 + Update callers. 1.1517 + 1.1518 + * src/otlayout/otlcommn.h: Updated. 1.1519 + 1.1520 + * src/otlayout/otljstf.c (otl_jstf_extender_validate, 1.1521 + otl_jstf_max_validate, otl_jstf_script_validate, 1.1522 + otl_jstf_priority_validate, otl_jstf_lang_validate): Add parameter 1.1523 + to validate glyph indices. 1.1524 + Update callers. 1.1525 + (otl_jstf_validate): Add parameter which specifies number of glyphs 1.1526 + in font. 1.1527 + 1.1528 + * src/otlayout/otljstf.h: Updated. 1.1529 + 1.1530 +2004-08-15 Werner Lemberg <wl@gnu.org> 1.1531 + 1.1532 + * src/otlayout/otlgpos.c (otl_liga_mark2_validate): Add parameter 1.1533 + to handle possible NULL values properly. 1.1534 + Update all callers. 1.1535 + 1.1536 +2004-08-15 Werner Lemberg <wl@gnu.org> 1.1537 + 1.1538 + * src/otlayout/gpos.c: Rename counting variables to be more 1.1539 + meaningful. 1.1540 + Add copyright. 1.1541 + (otl_liga_attach_validate): Renamed to... 1.1542 + (otl_liga_mark2_validate): This. 1.1543 + Update all callers. 1.1544 + (otl_mark2_array_validate): Removed. 1.1545 + (otl_gpos_lookup6_validate): Call otl_liga_mark2_validate, not 1.1546 + otl_mark2_array_validate. 1.1547 + (otl_pos_class_set_validate, otl_pos_class_rule_validate): Removed. 1.1548 + (otl_gpos_lookup7_validate): Complete code for format 2. 1.1549 + (otl_chain_pos_class_rule_validate, 1.1550 + otl_chain_pos_class_set_validate): Removed. 1.1551 + (otl_gpos_lookup8_validate): Don't call 1.1552 + otl_chain_pos_class_set_validate but 1.1553 + otl_chain_pos_rule_set_validate. 1.1554 + Simplify some code. 1.1555 + 1.1556 + * src/otlayout/otlgpos.h: Add copyright. 1.1557 + 1.1558 +2004-08-14 Werner Lemberg <wl@gnu.org> 1.1559 + 1.1560 + * src/otlayout/otljstf.c (otl_jstf_gsub_mods_validate): Removed. 1.1561 + (otl_jstf_gpos_mods_validate): Renamed to... 1.1562 + (otl_jstf_gsubgpos_mods_validate): This. 1.1563 + Test whether lookup_count is zero. 1.1564 + (otl_jstf_priority_validate): Use otl_jstf_gsubgpos_mods_validate. 1.1565 + (otl_jstf_validate): Initialize gsub_lookup_count and 1.1566 + gpos_lookup_count if gsub or gpos is zero. 1.1567 + 1.1568 + * src/otlayout/otlgsub.c: Rename counting variables to be more 1.1569 + meaningful. 1.1570 + Add copyright. 1.1571 + (otl_gsub_lookup1_validate): Simplify code. 1.1572 + (otl_gsub_lookup2_validate, otl_gsub_lookup3_validate, 1.1573 + otl_gsub_lookup4_validate, otl_gsub_lookup7_validate): Remove unused 1.1574 + variables. 1.1575 + (otl_gsub_lookup5_validate): Remove unused variable. 1.1576 + Fix call to otl_sub_rule_set_validate and 1.1577 + otl_sub_class_rule_set_validate. 1.1578 + (otl_chain_sub_class_rule_validate, 1.1579 + otl_chain_sub_class_set_validate): Removed. 1.1580 + (otl_gsub_lookup6_validate): Remove unused variable. 1.1581 + Fix call to otl_chain_sub_rule_set_validate. 1.1582 + (otl_gsub_lookup7_validate): Handle lookup type 8 also. 1.1583 + (otl_gsub_lookup8_validate: New function. 1.1584 + (otl_gsub_lookup1_apply, otl_gsub_lookup2_apply, 1.1585 + otl_gsub_lookup3_apply): Commented out. 1.1586 + (otl_gsub_validate_funcs): Add otl_gsub_lookup7_validate and 1.1587 + otl_gsub_lookup8_validate. 1.1588 + (otl_gsub_validate): Updated. 1.1589 + 1.1590 + * src/otlayout/otlgsub.h: Add copyright. 1.1591 + 1.1592 + * src/otlayout/otlcommn.c, src/otlayout/otlcommn.h 1.1593 + (otl_coverage_get_index): Comment out. 1.1594 + 1.1595 +2004-08-13 Werner Lemberg <wl@gnu.org> 1.1596 + 1.1597 + * src/otlayout/otlcommn.c (otl_gsubgpos_get_lookup_count): New 1.1598 + function. 1.1599 + * src/otlayout/otlcommn.h: Updated. 1.1600 + 1.1601 + * src/otlayout/otlbase.c: Rename counting variables to be more 1.1602 + meaningful. 1.1603 + Add copyright message. 1.1604 + * src/otlayout/otlbase.h: Add copyright message. 1.1605 + 1.1606 + * src/otlayout/otlgdef.c: Rename counting variables to be more 1.1607 + meaningful. 1.1608 + Add copyright message. 1.1609 + Use OTL_CHECK everywhere. 1.1610 + (otl_caret_value_validate): Remove unused variable. 1.1611 + (otl_gdef_validate): All tables are optional. 1.1612 + * src/otlayout/otlgdef.h: Add copyright message. 1.1613 + 1.1614 + * src/otlayout/otljstf.c: Rename counting variables to be more 1.1615 + meaningful. 1.1616 + Add copyright message. 1.1617 + (otl_jstf_gsub_mods_validate, otl_jstf_gpos_mods_validate): Add 1.1618 + parameter to pass lookup count. 1.1619 + Update all callers. 1.1620 + Check lookup array. 1.1621 + (otl_jstf_max_validate): 1.1622 + s/otl_gpos_subtable_check/otl_gpos_subtable_validate/. 1.1623 + (otl_jstf_priority_validate, otl_jstf_lang_validate, 1.1624 + otl_jstf_script_validate): Add two parameters to pass lookup counts. 1.1625 + Update all callers. 1.1626 + (otl_jstf_validate): Add two parameters to pass GPOS and GSUB 1.1627 + table offsets; use otl_gsubgpos_get_lookup_count to convert extract 1.1628 + lookup counts. 1.1629 + Fix typo. 1.1630 + * src/otlayout/otljstf.h: Updated. 1.1631 + Add copyright message. 1.1632 + 1.1633 + * src/otlayout/otlgpos.c (otl_gpos_subtable_validate): New function. 1.1634 + (otl_gpos_validate): Use it. 1.1635 + * src/otlayout/otlgpos.h: Updated. 1.1636 + 1.1637 +2004-08-13 Werner Lemberg <wl@gnu.org> 1.1638 + 1.1639 + * src/otlayout/otcommn.c: Use OTL_CHECK everywhere. 1.1640 + (otl_coverage_validate): Initialize `p', 1.1641 + s/count/num_glyphs/. 1.1642 + s/start_cover/start_coverage/. 1.1643 + (otl_coverage_get_index): Return OTL_Long, not OTL_Int. 1.1644 + Remove unused variables. 1.1645 + (otl_class_definition_validate): s/count/num_glyphs/. 1.1646 + Remove unused variables. 1.1647 + (otl_class_definition_get_value, otl_device_table_get_start, 1.1648 + otl_device_table_get_end, otl_device_table_get_delta, 1.1649 + otl_lookup_get_table, otl_lookup_list_get_count, 1.1650 + otl_lookup_list_get_lookup, otl_lookup_list_get_table, 1.1651 + otl_feature_get_lookups, otl_feature_list_get_count, 1.1652 + otl_feature_list_get_feature, otl_lang_get_count, 1.1653 + otl_lang_get_req_feature, otl_lang_get_features): Commented out 1.1654 + temporarily until we really need it. 1.1655 + (otl_lookup_validate): Removed. 1.1656 + (otl_lookup_table_validate): Renamed to ... 1.1657 + (otl_lookup_validate): This. Update callers. 1.1658 + (otl_lookup_list_validate): Remove already commented out definition 1.1659 + and move the other definition up. 1.1660 + (otl_feature_validate): Add parameter to pass number of lookups. 1.1661 + Update callers. 1.1662 + Check lookup indices. 1.1663 + (otl_feature_list_validate): Add parameter to pass lookup table. 1.1664 + Update callers. 1.1665 + (otl_lang_validate): Add parameter to pass number of features. 1.1666 + Update callers. 1.1667 + Handle req_feature and check feature indices. 1.1668 + (otl_script_validate): Add parameter to pass number of features. 1.1669 + Update callers. 1.1670 + (otl_script_list_validate): Add parameter to pass feature table. 1.1671 + Update callers. 1.1672 + 1.1673 + * src/otlayout/otcommn.h: s/LOCALDEF/LOCAL/. 1.1674 + Comment out the same functions as in otcommn.c. 1.1675 + (otl_script_list_get_script): Removed. 1.1676 + 1.1677 + * src/otlayout/otlgsub.c (otl_gsub_lookup1_apply): Change `index' to 1.1678 + type OTL_Long. 1.1679 + (otl_gsub_lookup2_apply, otl_gsub_lookup3_apply): Change `index' to 1.1680 + type OTL_Long. 1.1681 + Fix test. 1.1682 + (otl_gsub_validate): Fix order of validation. 1.1683 + 1.1684 + * src/otlayout/otlgpos.c (otl_gpos_validate): Fix order of 1.1685 + validation. 1.1686 + 1.1687 +2004-08-12 Werner Lemberg <wl@gnu.org> 1.1688 + 1.1689 + Make otlayout module compile (without actually working). 1.1690 + 1.1691 + * src/otlayout/*: s/OTL_Valid/OTL_Validator/. 1.1692 + s/NULL/0/. 1.1693 + 1.1694 + * src/otlayout/otlayout.h: Fix various typos. 1.1695 + (OTL_Bool): New typedef. 1.1696 + (OTL_Int, OTL_Long, OTL_Int16, OTL_Int32): Use `signed' keyword. 1.1697 + (OTL_Err_InvalidArgument): Removed. 1.1698 + (OTL_Err_InvalidData, OTL_Err_InvalidSize): New enum values. 1.1699 + (OTL_MAKE_TAG): Add missing parenthesis. 1.1700 + (OTL_INVALID_DATA): Use OTL_Err_InvalidData. 1.1701 + (OTL_INVALID_TOO_SHORT): Use OTL_Err_InvalidSize. 1.1702 + (OTL_INVALID_FORMAT, OTL_INVALID_OFFSET): New macros. 1.1703 + 1.1704 + * src/otlayout/otlgpos.c: s/FT_/OTL_/. 1.1705 + s/OTL_Short/OTL_Int16/. 1.1706 + (otl_gpos_pairset_validate): Add return type. 1.1707 + (otl_base_array_validate): Fix call to otl_anchor_validate. 1.1708 + (otl_liga_array_validate): Fix call to otl_liga_attach_validate. 1.1709 + (otl_gpos_lookup5_validate): Fix typos. 1.1710 + (otl_gpos_lookup6_validate): Fix call to otl_mark2_array_validate. 1.1711 + (otl_gpos_lookup7_validate): Comment out unfinished code. 1.1712 + Fix typos. 1.1713 + 1.1714 + * src/otlayout/otlgsub.c: Add forward declaration for 1.1715 + otl_gsub_validate_funcs. 1.1716 + (otl_gsub_lookup1_apply, otl_gsub_lookup2_apply, 1.1717 + otl_gsub_lookup3_apply): Fix call to otl_parser_check_property. 1.1718 + s/otl_coverage_lookup/otl_coverage_get_index/. 1.1719 + (otl_ligature_validate): Add missing variable declaration. 1.1720 + (otl_sub_rule_validate): Fix typo. 1.1721 + (otl_sub_class_rule_validate): Add missing variable declaration. 1.1722 + Fix typo. 1.1723 + (otl_gsub_lookup5_validate): Fix typo. 1.1724 + (otl_gsub_lookup6_validate): Fix call to 1.1725 + otl_chain_sub_class_set_validate. 1.1726 + (otl_gsub_validate_funcs): Don't use `const'. 1.1727 + 1.1728 + * src/otlayout/otlcommn.c (otl_class_definition_get_value, 1.1729 + otl_device_table_validate, otl_device_table_get_delta, 1.1730 + otl_lookup_validate, otl_script_validate): Add missing 1.1731 + variable declarations. 1.1732 + (otl_lookup_list_validate): Comment out first definition. 1.1733 + (otl_lookup_list_foreach, otl_feature_list_foreach): Comment out. 1.1734 + (otl_feature_list_validate): 1.1735 + s/otl_feature_table_validate/otl_feature_validate/. 1.1736 + (otl_script_list_validate): 1.1737 + s/otl_script_table_validate/otl_script_validate/. 1.1738 + 1.1739 + * src/otlayout/otlcommn.h: Comment out first declaration. 1.1740 + (otl_lookup_list_foreach, otl_feature_list_foreach): Comment out. 1.1741 + 1.1742 + * src/otlayout/otlbase.c (otl_base_coord_validate): Fix call to 1.1743 + otl_device_table_validate. 1.1744 + (otl_base_script_validate): Add missing variable declarations. 1.1745 + (otl_base_script_list_validate): Fix call to 1.1746 + otl_base_script_validate. 1.1747 + (otl_axis_table_validate): Fix calls to otl_base_tag_list_validate 1.1748 + and otl_base_script_list_validate. 1.1749 + (otl_base_validate): Fix calls to otl_axis_table_validate. 1.1750 + 1.1751 + * src/otlayout/otlgdef.c (otl_attach_list_validate): Fix call to 1.1752 + otl_attach_point_validate. 1.1753 + (otl_caret_value_validate): Add missing variable declaration. 1.1754 + Fix call to otl_device_table_validate. 1.1755 + (otl_ligature_glyph_validate): Fix call to otl_caret_value_validate. 1.1756 + (otl_ligature_caret_list_validate): Fix call to 1.1757 + otl_ligature_glyph_validate. 1.1758 + (otl_gdef_validate): Fix calls to otl_class_definition_validate, 1.1759 + otl_attach_list_validate, otl_ligature_caret_list_validate, and 1.1760 + otl_class_definition_validate. 1.1761 + 1.1762 + * src/otlayout/otltable.h (otl_table_validate, otl_table_init, 1.1763 + otl_table_set_script): Comment out. 1.1764 + 1.1765 + * src/otlayout/otlparse.h (OTL_ParserRec): 1.1766 + s/OTL_Alternate/OTL_GSUB_Alternate/. 1.1767 + (OTL_ParseError): Add OTL_Err_Parser_Memory and 1.1768 + OTL_Err_Parser_Internal. 1.1769 + (otl_parser_error): Fix typo. 1.1770 + (otl_parser_check_property): Remove third argument. 1.1771 + 1.1772 + * src/otlayout/otlparse.c (otl_string_ensure): 1.1773 + s/OTL_Parse_Err_Memory/OTL_Err_Parser_Memory/. 1.1774 + (OTL_STRING_ENSURE, otl_parser_error, otl_parser_get_index, 1.1775 + otl_parser_replace_1, otl_parser_replace_n): Fix typos. 1.1776 + (OTL_PARSER_UNCOVERED): Removed. 1.1777 + (otl_parser_check_property): Remove third argument. 1.1778 + 1.1779 + * src/otlayout/otljstf.c (otl_jstf_priority_validate): Add missing 1.1780 + variable declaration. 1.1781 + 1.1782 + * src/otlayout/otlutils.h (OTL_MEM_REALLOC): Fix typo. 1.1783 + 1.1784 +2004-08-11 Danny <dannyboynow@yahoo.com> 1.1785 + 1.1786 + * src/base/ftstream.c (FT_Stream_Close): Don't reset stream->close 1.1787 + to NULL. This allows custom close functions to delete the FT_STREAM 1.1788 + object. 1.1789 + 1.1790 +2004-08-11 Werner Lemberg <wl@gnu.org> 1.1791 + 1.1792 + Add API to get information about SFNT tables. 1.1793 + 1.1794 + * include/freetype/internal/services/svsfnt.h 1.1795 + (FT_SFNT_Table_Info_Func): New typedef. 1.1796 + (SFNT_Table): Add it. 1.1797 + 1.1798 + * src/base/ftobjs (FT_Sfnt_Table_Info): New function. 1.1799 + 1.1800 + * include/freetype/tttables.h: Updated. 1.1801 + 1.1802 + * src/sfnt/sfdriver.c (sfnt_table_info): New function. 1.1803 + (sfnt_service_sfnt_table): Add it. 1.1804 + 1.1805 + * docs/CHANGES: Updated. 1.1806 + 1.1807 + 1.1808 + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 10. 1.1809 + 1.1810 + * builds/unix/configure.ac (version_info): Set to 9:8:3. 1.1811 + * builds/unix/configure: Updated. 1.1812 + 1.1813 + * builds/win32/visualc/index.html, 1.1814 + builds/win32/visualc/freetype.dsp, 1.1815 + builds/win32/visualc/freetype.vcproj: s/219/2110/, s/2.1.9/2.1.10/. 1.1816 + 1.1817 + * builds/freetype.mk (refdoc), README, Jamfile (RefDoc): 1.1818 + s/2.1.9/2.1.10/. 1.1819 + 1.1820 + * docs/CHANGES, docs/VERSION.DLL: Updated. 1.1821 + 1.1822 +2004-08-11 Detlef Würkner <TetiSoft@apg.lahn.de> 1.1823 + 1.1824 + * src/base/ftrfork.c (FT_Raccess_Guess) 1.1825 + [!FT_CONFIG_OPTION_GUESSING_EMBEDDED_FORK]: Remove compiler 1.1826 + warnings. 1.1827 + 1.1828 +2004-08-06 Adam Piotrowski <st_intel@poczta.onet.pl> 1.1829 + 1.1830 + * src/pfr/pfrload.c (pfr_sort_kerning_pairs): Single-byte 1.1831 + adjustments are unsigned, not signed. 1.1832 + 1.1833 +2004-08-05 David Turner <david@freetype.org> 1.1834 + 1.1835 + `Activate' gray-scale specifing hinting within the TrueType 1.1836 + bytecode interpreter. This is an experimental feature which 1.1837 + should probably be made optional. 1.1838 + 1.1839 + * src/truetype/ttgload.c (TT_Process_Simple_Glyph, 1.1840 + load_truetype_glyph): Move the code to set the pedantic_hinting flag 1.1841 + to... 1.1842 + (TT_Load_Glyph): Here. 1.1843 + Set `grayscale' flag except for `FT_LOAD_TARGET_MONO'. 1.1844 + 1.1845 + * src/truetyep/ttinterp.c (Ins_GETINFO): Return MS rasterizer 1.1846 + version 1.7. 1.1847 + Return rotation and stretching info only if glyph is rotated or 1.1848 + stretched, respectively. 1.1849 + Handle grayscale info. 1.1850 + 1.1851 + * src/truetype/ttinterp.h (TT_ExecContextRec): Add `grayscale' 1.1852 + member. 1.1853 + 1.1854 +2004-08-02 George Williams <gww@silcom.com> 1.1855 + 1.1856 + * src/base/ftobjs.c (FT_Attach_File): Initialize `open.stream'. 1.1857 + 1.1858 +2004-08-01 Werner Lemberg <wl@gnu.org> 1.1859 + 1.1860 + * docs/CHANGES: Updated. 1.1861 + 1.1862 +2004-08-01 George Williams <gww@silcom.com> 1.1863 + 1.1864 + FreeType now can read kerning values from PFM files. 1.1865 + 1.1866 + * src/type1/t1afm.c (T1_Done_AFM): Renamed to... 1.1867 + (T1_Done_Metrics): This. 1.1868 + Update all callers. 1.1869 + (T1_Read_AFM): Make it static. 1.1870 + Don't enter and leave a frame. 1.1871 + (LITTLE_ENDIAN_USHORT, LITTLE_ENDIAN_UINT): New macros. 1.1872 + (T1_Read_PFM): New function. 1.1873 + (T1_Read_Metrics): New higher-level function to be used instead of 1.1874 + T1Read_AFM. 1.1875 + Update all callers. 1.1876 + 1.1877 +2004-07-31 Werner Lemberg <wl@gnu.org> 1.1878 + 1.1879 + * src/pcf/pcfread (pcf_load_font), src/bdf/bdfdrivr.c 1.1880 + (BDF_Face_Init), src/truetype/ttgxvar (TT_Get_MM_Var, 1.1881 + tt_face_vary_cvt): Fix compiler warnings. 1.1882 + 1.1883 +2004-07-26 Søren Sandmann <sandmann@daimi.au.dk> 1.1884 + 1.1885 + * src/pcf/pcfread.c (pcf_interpret_style): Always allocate memory for 1.1886 + face->style_name. 1.1887 + * src/pcf/pcfdrivr.c (PCF_Face_Done): Free `style_name'. 1.1888 + 1.1889 +2004-07-26 Darren J Longhorn <darren.longhorn@redcom.co.uk> 1.1890 + 1.1891 + * include/freetype/config/ftconfig.h (FT_SIZEOF_LONG): Recognize 1.1892 + five-byte `long' (which is avoided then). 1.1893 + 1.1894 +2004-07-25 Detlef Würkner <TetiSoft@apg.lahn.de> 1.1895 + 1.1896 + * src/pcf/pcfdrivr.c (PCF_Set_Pixel_Size): Compare heights, not 1.1897 + ppem values. 1.1898 + (PCF_Set_Point_Size): Don't call PCF_Set_Pixel_Size but provide own 1.1899 + code to compare ppem values. 1.1900 + * src/bdf/bdfdrivr.c (BDF_Set_Pixel_Size): Compare heights, not 1.1901 + ppem values. 1.1902 + (BDF_Set_Point_Size): Don't call BDF_Set_Pixel_Size but provide own 1.1903 + code to compare ppem values. 1.1904 + 1.1905 +2004-07-25 Kornfeld Eliyahu Peter <peter@e-kadmon.net> 1.1906 + 1.1907 + * src/sfnt/sfobjs.c (sfnt_load_face): Handle 1.1908 + TT_NAME_ID_PREFERRED_FAMILY and TT_NAME_ID_PREFERRED_SUBFAMILY. 1.1909 + 1.1910 +2004-07-24 Derek B. Noonburg <derekn@foolabs.com> 1.1911 + 1.1912 + * src/cff/cffload.c (cff_font_load): Always create inverse mapping. 1.1913 + Even if the charstring count is the same as the CID count, it is 1.1914 + still possible that the font uses a different CID -> GID mapping. 1.1915 + 1.1916 +2004-07-23 Werner Lemberg <wl@gnu.org> 1.1917 + 1.1918 + * src/truetype/ttobjs.c (tt_face_init): Accept 0x00020000 format tag 1.1919 + found in some Arphic fonts made for Chinese version of Windows 3.1. 1.1920 + 1.1921 +2004-07-17 David Turner <david@freetype.org> 1.1922 + 1.1923 + Fixed a dangling pointer bug in the cache code that happened in very 1.1924 + rare cases, i.e., when a new family object was destroyed by an 1.1925 + out-of-memory condition during a glyph node initialization. The 1.1926 + function FTC_Cache_Lookup would flush the cache and restart the 1.1927 + lookup with a bad pointer. 1.1928 + 1.1929 + * include/freetype/cache/ftcglyph.h (FTC_FAMILY_TREE): New macro. 1.1930 + (FTC_GCACHE_LOOKUP_CMP): Use it. 1.1931 + Handle reference count in `num_nodes' correctly. 1.1932 + 1.1933 + * src/cache/ftcglyph.c (FTC_GNode_UnselectFamily): Use 1.1934 + FTC_FAMILY_FREE. 1.1935 + (FTC_GCache_Lookup): Handle reference count in `num_nodes' correctly. 1.1936 + 1.1937 + * src/cache/ftcmanag.c (FTC_Manager_FlushN): Fixed a cache flushing 1.1938 + bug. 1.1939 + 1.1940 + * src/truetype/ttinterp.c (Normalize): Fixed a bug that caused 1.1941 + long and unnecessary delays while normalizing huge vectors. 1.1942 + 1.1943 +2004-07-15 Werner Lemberg <wl@gnu.org> 1.1944 + 1.1945 + * docs/CHANGES: Updated. 1.1946 + 1.1947 + * src/base/ftstroke.c (FT_Stroker_ParseOutline): Fix compiler 1.1948 + warning. 1.1949 + 1.1950 +2004-07-15 David Turner <david@freetype.org> 1.1951 + 1.1952 + * src/base/ftstroke.c (FT_Stroker_ParseOutline): Single points 1.1953 + are not stroked, preventing a bug with pala.ttf and other 1.1954 + fonts. 1.1955 + 1.1956 + * include/freetype/ftstroke.h: Updating documentation comments. 1.1957 + 1.1958 +2004-07-13 Werner Lemberg <wl@gnu.org> 1.1959 + 1.1960 + * src/base/ftstroke.c (ft_stroke_border_reverse): Removed. Unused. 1.1961 + 1.1962 +2004-07-12 David Turner <david@freetype.org> 1.1963 + 1.1964 + * src/base/ftstroke.c (ft_stroke_border_close): Add second parameter 1.1965 + to indicate reversion of points. 1.1966 + Update all callers. 1.1967 + (ft_stroke_border_reverse): Fix initialization of `point1' and 1.1968 + `tag1'. 1.1969 + 1.1970 + * src/cache/ftcsbits.c (ftc_snode_load): Fixing advance computation 1.1971 + for transformed glyphs. 1.1972 + 1.1973 +2004-07-11 David Turner <david@freetype.org> 1.1974 + 1.1975 + Fix bugs that prevented the stroker to correctly generate stroked 1.1976 + paths from closed paths, i.e., nearly all glyphs in vectorial fonts. 1.1977 + 1.1978 + The code is still _very_ buggy though; treat with special care. 1.1979 + 1.1980 + * src/base/ftstroke.c (FT_STROKE_TAG_BEGIN_END): New macro. 1.1981 + (ft_stroke_border_reverse): New function. 1.1982 + (ft_stroker_inside): Remove local variable `sigma'; use different 1.1983 + threshold. 1.1984 + (ft_stroker_add_reverse_left): Switch begin/end tags if necessary. 1.1985 + (FT_Stroker_EndSubPath): Call ft_stroker_inside and 1.1986 + ft_stroke_border_reverse. 1.1987 + 1.1988 +2004-06-26 Peter Kovar <peter.kovar@r3.roburnet.sk> 1.1989 + 1.1990 + * src/truetype/ttgload.c (load_truetype_glyph): Fix typo. 1.1991 + 1.1992 +2004-06-25 Werner Lemberg <wl@gnu.org> 1.1993 + 1.1994 + * src/type1/t1afm.c (afm_atoindex): Fix boundary test. Reported 1.1995 + by Dirck Blaskey. 1.1996 + 1.1997 +2004-06-24 David Turner <david@freetype.org> 1.1998 + 1.1999 + 1.2000 + * Version 2.1.9 released. 1.2001 + ========================= 1.2002 + 1.2003 + 1.2004 + * src/truetype/ttgload.c, src/truetype/ttxgvar.c: Removing 1.2005 + compiler warnings. 1.2006 + 1.2007 +2004-06-23 Werner Lemberg <wl@gnu.org> 1.2008 + 1.2009 + * include/freetype/internal/ftmemory.h [FT_DEBUG_MEMORY]: Declare 1.2010 + FT_QAlloc_Debug and FT_QRealloc_Debug. 1.2011 + 1.2012 + * src/base/ftutil.c (FT_QAlloc): Fix error and debug messages. 1.2013 + (FT_QRealloc): Call FT_QAlloc if original pointer is NULL. 1.2014 + Fix error message. 1.2015 + 1.2016 +2004-06-23 David Turner <david@freetype.org> 1.2017 + 1.2018 + * include/freetype/internal/ftmemory.h, src/base/ftutil.c 1.2019 + (FT_QAlloc, FT_QRealloc), src/base/ftdbgmem.c (FT_QAlloc_Debug, 1.2020 + FT_QRealloc_Debug): New functions that perform allocation without 1.2021 + zero-ing out the corresponding blocks. 1.2022 + 1.2023 + * include/freetype/internal/ftmemory.h (FT_MEM_QALLOC, 1.2024 + FT_MEM_QREALLOC, FT_MEM_QNEW, FT_MEM_QNEW_ARRAY, 1.2025 + FT_MEM_QRENEW_ARRAY, FT_QALLOC, FT_QREALLOC, FT_QNEW, FT_QNEW_ARRAY, 1.2026 + FT_QRENEW_ARRAY): New macros. 1.2027 + 1.2028 + * src/base/ftstream.c (FT_Stream_EnterFrame): Use FT_QALLOC. 1.2029 + * src/gzip/ftgzip.c (FT_Stream_OpenGzip): Use FT_QNEW_ARRAY. 1.2030 + * src/sfnt/sfobjs.c (tt_face_get_name): Use FT_QNEW_ARRAY. 1.2031 + 1.2032 + * src/sfnt/ttload.c (tt_face_load_directory, tt_face_load_metrics, 1.2033 + tt_face_load_gasp): Use FT_QNEW_ARRAY. 1.2034 + (tt_face_load_kern): Use FT_QNEW_ARRAY. 1.2035 + Small optimization in the kerning table verifier; this speeds up 1.2036 + TrueType face opening by about 7%. 1.2037 + (tt_face_load_hdmx): Use FT_QNEW_ARRAY and FT_QALLOC. 1.2038 + 1.2039 + * include/freetype/config/ftmodule.h: Changed the order of modules, 1.2040 + putting TrueType and Type 1 first. This dramatically improves the 1.2041 + performance of face open/close operations. For example, putting the 1.2042 + TrueType driver first in the list results in a 5x speedup when 1.2043 + opening `Vera.ttf'. 1.2044 + 1.2045 + The very problem is that both the PCF and BDF drivers do a lot more 1.2046 + than necessary to detect that they cannot handle a font file. 1.2047 + 1.2048 +2004-06-22 Werner Lemberg <wl@gnu.org> 1.2049 + 1.2050 + * src/pcf/pcfread.c (pcf_read_TOC, pcf_get_properties, 1.2051 + pcf_get_metrics, pcf_get_bitmaps, pcf_get_encodings): Improve 1.2052 + debugging messages. 1.2053 + 1.2054 + * src/pcf/pcfdrivr.c (FT_COMPOMENT): Move up. 1.2055 + (PCF_Face_Init): Simplify code. 1.2056 + 1.2057 + * src/bdf/bdfdrivr.h (BDF_FaceRec): New element `default_glyph'. 1.2058 + 1.2059 + * src/bdf/bdflib.c (_bdf_add_property, _bdf_parse_start), 1.2060 + src/bdf/bdf.h (bdf_font_t): s/default_glyph/default_char/. 1.2061 + 1.2062 + * src/bdf/bdfdrivr.c (BDF_Face_Init): Fix number of glyphs. 1.2063 + Set `default_glyph'. 1.2064 + (BDF_Glyph_Load): Use `default_glyph' for undefined glyph. 1.2065 + 1.2066 + * docs/CHANGES: Updated. 1.2067 + 1.2068 +2004-06-21 Werner Lemberg <wl@gnu.org> 1.2069 + 1.2070 + * docs/CHANGES: Updated. 1.2071 + 1.2072 +2004-06-21 David Turner <david@freetype.org> 1.2073 + 1.2074 + * src/truetype/ttgload.c (TT_Process_Simple_Glyph, 1.2075 + load_truetype_glyph): Don't access (unrounded) 1.2076 + `TT_Size.root.metrics' but (rounded) `TT_Size.metrics'. This fixes 1.2077 + a scaling bug that caused incorrect rendering when the bytecode 1.2078 + interpreter was enabled. 1.2079 + 1.2080 +2004-06-14 Huw D M Davies <h.davies1@physics.ox.ac.uk> 1.2081 + 1.2082 + * src/winfonts/winfnt.c (FNT_Face_Init): Set x_ppem and y_ppem 1.2083 + based on pixel_width and pixel_height. 1.2084 + (FNT_Size_Set_Pixels): Updated. 1.2085 + 1.2086 +2004-06-14 Werner Lemberg <wl@gnu.org> 1.2087 + 1.2088 + * src/lzw/zopen.c: Comment out inclusion of signal.h and unistd.h. 1.2089 + Reported by Hyvärinen Jyrki Juhani. 1.2090 + 1.2091 +2004-06-11 Werner Lemberg <wl@gnu.org> 1.2092 + 1.2093 + * docs/CHANGES: Updated. 1.2094 + 1.2095 +2004-06-10 David Turner <david@freetype.org> 1.2096 + 1.2097 + * src/base/ftobject.c, src/base/fthash.c, src/base/ftexcept.c, 1.2098 + src/base/ftsysio.c, src/base/ftsysmem.c, src/base/ftlist.c: Removed. 1.2099 + Obsolete. 1.2100 + 1.2101 + * src/raster/ftraster.c (Alignment, PAlignment): New union to fix 1.2102 + problems with 64bit systems. 1.2103 + (AlignProfileSize): Use it. 1.2104 + 1.2105 +2004-06-08 David Turner <david@freetype.org> 1.2106 + 1.2107 + * include/freetype/freetype.h (FT_GlyphMetrics): Move `lsb_delta' 1.2108 + and `rsb_delta' elements to... 1.2109 + (FT_GlyphSlotRec): Here to retain binary compatibility with older 1.2110 + FreeType versions. 1.2111 + Update all users. 1.2112 + 1.2113 + * src/sfnt/sfobjs.c (tt_face_get_name): Remove compiler warning. 1.2114 + 1.2115 + * src/winfonts/winfnt.c (FNT_Load_Glyph): Add missing initialization 1.2116 + of slot->metrics.width and slot->metrics.height when loading a 1.2117 + Windows FNT glyph. Thanks to Huw Davies. 1.2118 + 1.2119 + * include/freetype/cache/ftcmru.h (FTC_MruNode_CompareFunc): Change 1.2120 + return type to FT_Bool. 1.2121 + 1.2122 + * src/cache/ftbasic.c (ftc_basic_family_compare): Change return 1.2123 + type to FT_Bool. 1.2124 + 1.2125 + * src/cache/ftccache.c (FTC_Cache_Init, ftc_cache_init): Make 1.2126 + the former call the latter, not vice versa. 1.2127 + (FTC_Cache_Done, ftc_cache_done): Ditto. 1.2128 + 1.2129 + * src/cache/ftcglyph.c (FTC_GNode_Compare, ftc_gnode_compare): Make 1.2130 + the former call the latter, not vice versa. 1.2131 + (FTC_GCache_Init, ftc_gcache_init): Ditto. 1.2132 + (FTC_GCache_Done, ftc_gcache_done): Ditto. 1.2133 + 1.2134 + * src/cache/ftcimage.c (FTC_INode_Free, ftc_inode_free): Make the 1.2135 + former call the latter, not vice versa. 1.2136 + (FTC_INode_Weight, ftc_inode_weight): Ditto. 1.2137 + 1.2138 + * src/cache/ftcmanag.c (ftc_size_node_compare, 1.2139 + ftc_size_node_compare_faceid, ftc_face_node_compare): Change return 1.2140 + type to FT_Bool. 1.2141 + 1.2142 + * src/cache/ftcsbits.c (FTC_SNode_Free, ftc_snode_free): Make the 1.2143 + former call the latter, not vice versa. 1.2144 + (FTC_SNode_Weight, ftc_snode_weight): Ditto. 1.2145 + (FTC_SNode_Compare, ftc_snode_compare): Ditto. 1.2146 + 1.2147 + * src/cache/ftcsbits.c: Fix some bugs and inefficiencies in the cache 1.2148 + sub-system. 1.2149 + 1.2150 +2004-06-05 Werner Lemberg <wl@gnu.org> 1.2151 + 1.2152 + * src/autofit/afloader.c (af_loader_load_g): Set `lsb_delta' and 1.2153 + `rsb_delta' in slot->metrics and tune side bearings slightly. 1.2154 + 1.2155 +2004-06-04 Werner Lemberg <wl@gnu.org> 1.2156 + 1.2157 + * docs/CHANGES: Updated. 1.2158 + 1.2159 +2004-06-04 David Chester <davidchester@gmx.net> 1.2160 + 1.2161 + Improve inter-letter spacing for autohinted glyphs. 1.2162 + 1.2163 + * include/freetype/freetype.h (FT_Glyph_Metrics): Add elements 1.2164 + `lsb_delta' and `rsb_delta'. 1.2165 + 1.2166 + * src/autohint/ahhint.c (ah_hinter_load): Set `lsb_delta' and 1.2167 + `rsb_delta' in slot->metrics and tune side bearings slightly. 1.2168 + 1.2169 +2004-06-04 David Turner <david@freetype.org> 1.2170 + 1.2171 + * src/autofit/*: Important fixes to the auto-fitter. The output 1.2172 + now seems to be 100% equivalent to the auto-hinter, while being 1.2173 + about 2% faster (which proves that script-specific algorithm 1.2174 + selection isn't a performance problem). 1.2175 + 1.2176 + To test it, change `autohint' to `autofit' in 1.2177 + <freetype/config/ftmodule.h> and recompile. 1.2178 + 1.2179 + A few more testing is needed before making this the official 1.2180 + auto-hinting module. 1.2181 + 1.2182 +2004-06-02 Werner Lemberg <wl@gnu.org> 1.2183 + 1.2184 + * src/truetype/ttgload.c (compute_glyph_metrics): Fix compiler 1.2185 + warnings. 1.2186 + 1.2187 +2004-06-01 Werner Lemberg <wl@gnu.org> 1.2188 + 1.2189 + * src/sfnt/sfobjs.c (tt_face_get_name): Make sure that an English 1.2190 + name record for the Apple platform is preferred to a non-English 1.2191 + entry for the Microsoft platform. Problem reported by HANDA 1.2192 + Ken'ichi. 1.2193 + 1.2194 +2004-05-19 George Williams <gww@silcom.com> 1.2195 + 1.2196 + * src/type1/t1load.c (mm_axis_unmap, mm_weights_unmap): New 1.2197 + auxiliary functions. 1.2198 + (T1_Get_MM_Var): Provide axis tags. 1.2199 + Use mm_axis_unmap and mm_weights_unmap to provide default values 1.2200 + for design and normalized axis coordinates. 1.2201 + 1.2202 + * include/freetype/t1tables.h (PS_DesignMapRec): Change type of 1.2203 + `design_points' to FT_Long. 1.2204 + Update all users. 1.2205 + 1.2206 +2004-05-17 Werner Lemberg <wl@gnu.org> 1.2207 + 1.2208 + * src/base/ftbbox.c (BBox_Conic_Check): Fix boundary cases. 1.2209 + Reported by Mikey Anbary <manbary@vizrt.com>. 1.2210 + 1.2211 +2004-05-15 Werner Lemberg <wl@gnu.org> 1.2212 + 1.2213 + * src/sfnt/sfobjs.c (sfnt_done_face): Free face->postscript_name. 1.2214 + 1.2215 +2004-05-15 George Williams <gww@silcom.com> 1.2216 + 1.2217 + * src/sfnt/ttload.c (tt_face_load_max_profile): Always set 1.2218 + face->root.num_glyphs. 1.2219 + 1.2220 +2004-05-14 Masatake YAMATO <jet@gyve.org> 1.2221 + George Williams <gww@silcom.com> 1.2222 + 1.2223 + * src/sfnt/ttload.c (sfnt_dir_check): Handle `bhed' properly. 1.2224 + 1.2225 +2004-05-14 Werner Lemberg <wl@gnu.org> 1.2226 + 1.2227 + * src/cache/ftcbasic.c (ftc_basic_family_compare, 1.2228 + ftc_basic_family_init, ftc_basic_family_get_count, 1.2229 + ftc_basic_family_load_bitmap, ftc_basic_family_load_glyph, 1.2230 + ftc_basic_gnode_compare_faceid): Adjust parameters and return types 1.2231 + to prototypes given in header files from include/freetype/cache. 1.2232 + Use casts to proper types locally. 1.2233 + (ftc_basic_image_family_class, ftc_basic_image_cache_class, 1.2234 + ftc_basic_sbit_family_class, ftc_basic_sbit_cache_class): Remove 1.2235 + casts. 1.2236 + 1.2237 + * src/cache/ftccback.h: Adjust parameters and return types to 1.2238 + prototypes given in header files from include/freetype/cache. 1.2239 + 1.2240 + * src/cache/ftcimage.c (ftc_inode_free, ftc_inode_new, 1.2241 + ftc_inode_weight): Adjust parameters and return types to prototypes 1.2242 + given in header files from include/freetype/cache. Use casts to 1.2243 + proper types locally. 1.2244 + 1.2245 + * src/cache/ftcsbits.c (ftc_snode_free, ftc_snode_new, 1.2246 + ftc_snode_weight, ftc_snode_compare): Adjust parameters and return 1.2247 + types to prototypes given in header files from 1.2248 + include/freetype/cache. Use casts to proper types locally. 1.2249 + 1.2250 + * src/cache/ftccmap.c (ftc_cmap_node_free, ftc_cmap_node_new, 1.2251 + ftc_cmap_node_weight, ftc_cmap_node_compare, 1.2252 + ftc_cmap_node_remove_faceid): Adjust parameters and return types to 1.2253 + prototypes given in header files from include/freetype/cache. Use 1.2254 + casts to proper types locally. 1.2255 + (ftc_cmap_cache_class): Remove casts. 1.2256 + 1.2257 + * src/cache/ftcglyph.c (ftc_gnode_compare, ftc_gcache_init, 1.2258 + ftc_gcache_done): Adjust parameters and return types to prototypes 1.2259 + given in header files from include/freetype/cache. Use casts to 1.2260 + proper types locally. 1.2261 + 1.2262 + * src/cache/ftcmanag.c (ftc_size_node_done, ftc_size_node_compare, 1.2263 + ftc_size_node_init, ftc_size_node_reset, 1.2264 + ftc_size_node_compare_faceid, ftc_face_node_init, 1.2265 + ftc_face_node_done, ftc_face_node_compare: Adjust parameters and 1.2266 + return types to prototypes given in header files from 1.2267 + include/freetype/cache. Use casts to proper types locally. 1.2268 + 1.2269 + (ftc_size_list_class, ftc_face_list_class): Remove casts. 1.2270 + 1.2271 +2004-05-13 Werner Lemberg <wl@gnu.org> 1.2272 + 1.2273 + * src/autohint/ahmodule.c (ft_autohinter_init, ft_autohinter_done): 1.2274 + Use FT_Module as parameter and do a cast to FT_AutoHinter locally. 1.2275 + (autohint_module_class): Remove casts. 1.2276 + 1.2277 + * src/base/ftglyph.c (ft_bitmap_glyph_init, ft_bitmap_glyph_copy, 1.2278 + ft_bitmap_glyph_done, ft_bitmap_glyph_bbox, ft_outline_glyph_init, 1.2279 + ft_outline_glyph_done, ft_outline_glyph_copy, 1.2280 + ft_outline_glyph_transform, ft_outline_glyph_bbox, 1.2281 + ft_outline_glyph_prepare): Use FT_Glyph as parameter and do a cast 1.2282 + to FT_XXXGlyph locally. 1.2283 + Use FT_CALLBACK_DEF throughout. 1.2284 + (ft_bitmap_glyph_class, ft_outline_glyph_class): Remove casts. 1.2285 + 1.2286 + * src/bdf/bdfdrivr.c (bdf_cmap_init, bdf_cmap_done, 1.2287 + bdf_cmap_char_index, bdf_cmap_char_next): Use FT_CMap as parameter 1.2288 + and do a cast to BDF_CMap locally. 1.2289 + (bdf_cmap_class): Remove casts. 1.2290 + 1.2291 +2004-05-12 Werner Lemberg <wl@gnu.org> 1.2292 + 1.2293 + * src/cff/cffgload.h (CFF_Builder): Remove `error'. 1.2294 + * src/cff/cffgload.c (cff_decoder_parse_charstrings): Replace 1.2295 + `Memory_Error' with `Fail' und update all users. 1.2296 + 1.2297 +2004-05-11 Werner Lemberg <wl@gnu.org> 1.2298 + 1.2299 + * include/freetype/internal/psaux.h (T1_ParseState): New 1.2300 + enumeration. 1.2301 + (T1_BuilderRec): Replace `path_begun' with `parse_state'. 1.2302 + Remove `error'. 1.2303 + * src/psaux/t1decode.c (t1_decoder_parse_charstrings): Replace 1.2304 + `Memory_Error' with `Fail' and update all users. 1.2305 + Don't use `builder->error'. 1.2306 + Replace `path_begun' with `parse_state' and check parsing states. 1.2307 + 1.2308 + * src/psaux/psobjs.c (t1_builder_init, t1_builder_start_point): 1.2309 + Replace `path_begun' with `parse_state' and check parsing states. 1.2310 + 1.2311 +2004-05-10 George Williams <gww@silcom.com> 1.2312 + 1.2313 + * src/truetype/ttxgvar.c (ft_var_load_avar): Do free arrays in case 1.2314 + of error -- `avar' is optional so we can't rely on tt_done_blend 1.2315 + being called automatically. 1.2316 + 1.2317 +2004-05-09 George Williams <gww@silcom.com> 1.2318 + 1.2319 + * src/truetype/ttxgvar.c (ft_var_load_avar, ft_var_load_gvar): Fix 1.2320 + error handling. 1.2321 + 1.2322 +2004-05-07 Werner Lemberg <wl@gnu.org> 1.2323 + 1.2324 + * src/pfr/pfrobjs.c, src/pfr/pfrobjs.h (pfr_face_init, 1.2325 + pfr_face_done, pfr_face_get_kerning, pfr_slot_init, pfr_slot_done, 1.2326 + pfr_slot_load): Don't use PFR_XXX but FT_XXX arguments which are 1.2327 + typecast to the proper PFR_XXX types within the function. 1.2328 + Update code accordingly. 1.2329 + 1.2330 + * src/pfr/pfrdrivr.c (pfr_get_kerning, pfr_get_advance, 1.2331 + pfr_get_metrics, pfr_get_service): Don't use PFR_XXX but FT_XXX 1.2332 + arguments which are typecast to the proper PFR_XXX types within the 1.2333 + function. 1.2334 + Update code accordingly. 1.2335 + Use FT_CALLBACK_DEF throughout. 1.2336 + (pfr_metrics_service_rec, pfr_driver_class): Remove casts. 1.2337 + 1.2338 +2004-05-06 Masatake YAMATO <jet@gyve.org> 1.2339 + 1.2340 + * src/truetype/ttgxvar.c (ft_var_load_gvar): Use FT_FACE_STREAM. 1.2341 + (*): Rename local variable OffsetToData to offsetToData. 1.2342 + 1.2343 +2004-05-06 Werner Lemberg <wl@gnu.org> 1.2344 + 1.2345 + * src/cff/cffobjs.c (cff_size_done, cff_size_init, cff_size_reset, 1.2346 + cff_slot_done, cff_slot_init, cff_face_init, cff_face_done): Access 1.2347 + root fields directly. 1.2348 + * src/cff/cffdrivr.c (Load_Glyph): Access root fields directly. 1.2349 + 1.2350 + * src/truetype/ttgload.c (TT_Process_Simple_Glyph): Save current 1.2351 + frame before calling TT_Vary_Get_Glyph_Deltas. 1.2352 + 1.2353 + * src/pcf/pcfdrivr.c (PCF_CMapRec): Rename `cmap' to `root' for 1.2354 + consistency. 1.2355 + (pcf_cmap_init, pcf_cmap_done, pcf_cmap_char_index, 1.2356 + pcf_cmap_char_next): Don't use PCF_XXX but FT_XXX arguments which 1.2357 + are typecast to the proper PCF_XXX types within the function. 1.2358 + Update code accordingly. 1.2359 + (pcf_cmap_class): Remove casts. 1.2360 + (PCF_Face_Done, PCF_Face_Init, PCF_Set_Pixel_Size): Don't use 1.2361 + PCF_XXX but FT_XXX arguments which are typecast to the proper 1.2362 + PCF_XXX types within the function. 1.2363 + Update code accordingly. 1.2364 + Use FT_CALLBACK_DEF throughout. 1.2365 + (PCF_Set_Point_Size): New wrapper function. 1.2366 + (PCF_Glyph_Load, pcf_driver_requester): Use FT_CALLBACK_DEF. 1.2367 + (pcf_driver_class): Remove casts. 1.2368 + 1.2369 +2004-05-04 Steve Hartwell <shspamsink@comcast.net> 1.2370 + 1.2371 + * src/truetype/ttobjs.c (tt_driver_done): Fix typo. 1.2372 + 1.2373 +2004-05-04 Werner Lemberg <wl@gnu.org> 1.2374 + 1.2375 + * src/bdf/bdfdrivr.c (BDF_Face_Done, BDF_Face_Init, 1.2376 + BDF_Set_Pixel_Size): Don't use BDF_XXX but FT_XXX arguments which 1.2377 + are typecast to the proper BDF_XXX types within the function. 1.2378 + Update code accordingly. 1.2379 + Use FT_CALLBACK_DEF throughout. 1.2380 + (BDF_Set_Point_Size): New wrapper function. 1.2381 + (bdf_driver_class): Remove casts. 1.2382 + 1.2383 + * src/cff/cffdrivr.c (Get_Kerning, Load_Glyph, cff_get_interface): 1.2384 + Don't use CFF_XXX but FT_XXX arguments which are typecast to the 1.2385 + proper CFF_XXX types within the function. 1.2386 + Update code accordingly. 1.2387 + Use FT_CALLBACK_DEF throughout. 1.2388 + (cff_driver_class): Remove casts. 1.2389 + 1.2390 + * src/cff/cffobjs.h, src/cff/cffobjs.c (cff_size_done, 1.2391 + cff_size_init, cff_size_reset, cff_slot_done, cff_slot_init, 1.2392 + cff_face_init, cff_face_done, cff_driver_init, cff_driver_done): 1.2393 + Don't use CFF_XXX but FT_XXX arguments which are typecast to the 1.2394 + proper CFF_XXX types within the function. 1.2395 + Update code accordingly. 1.2396 + (cff_point_size_reset): New wrapper function. 1.2397 + 1.2398 + * src/cid/cidobjs.h, src/cid/cidobjs.c (cid_slot_done, 1.2399 + cid_slot_init, cid_size_done, cid_size_init, cid_size_reset, 1.2400 + cid_face_done, cid_face_init, cid_driver_init, cid_driver_done): 1.2401 + Don't use CID_XXX but FT_XXX arguments which are typecast to the 1.2402 + proper CID_XXX types within the function. 1.2403 + Update code accordingly. 1.2404 + (cid_point_size_reset): New wrapper function. 1.2405 + 1.2406 + * src/cid/cidgload.c, src/cid/cidgload.h (cid_slot_load_glyph): 1.2407 + Don't use CID_XXX but FT_XXX arguments which are typecast to the 1.2408 + proper CID_XXX types within the function. 1.2409 + Update code accordingly. 1.2410 + 1.2411 + * src/cid/cidriver.c (cid_get_interface): 1.2412 + Don't use CID_XXX but FT_XXX arguments which are typecast to the 1.2413 + proper CID_XXX types within the function. 1.2414 + Update code accordingly. 1.2415 + Use FT_CALLBACK_DEF. 1.2416 + (t1cid_driver_class): Remove casts. 1.2417 + 1.2418 + * src/truetype/ttdriver.c (tt_get_interface): Use FT_CALLBACK_DEF. 1.2419 + * src/truetype/ttgxvar.c (ft_var_load_avar): Don't free non-local 1.2420 + variables (this is done later). 1.2421 + (ft_var_load_avar): Fix call to FT_FRAME_ENTER. 1.2422 + (TT_Get_MM_Var): Fix size for `fvar_fields'. 1.2423 + (TT_Vary_Get_Glyph_Deltas): Handle deallocation of local variables 1.2424 + correctly. 1.2425 + 1.2426 + * src/base/ftdbgmem.c (ft_mem_debug_realloc): Don't abort if 1.2427 + current size is zero. 1.2428 + 1.2429 +2004-05-03 Steve Hartwell <shspamsink@comcast.net> 1.2430 + 1.2431 + * src/truetype/ttobjs.h, src/truetype/ttobjs.c (tt_face_init, 1.2432 + tt_face_done, tt_size_init, tt_size_done, tt_driver_init, 1.2433 + tt_driver_done): Don't use TT_XXX but FT_XXX arguments which are 1.2434 + typecast to the proper TT_XXX types within the function. 1.2435 + Update code accordingly. 1.2436 + 1.2437 + * src/truetype/ttdriver.c (Get_Kerning, Set_Char_Sizes, 1.2438 + Set_Pixel_Sizes, Load_Glyph, tt_get_interface): Don't use TT_XXX but 1.2439 + FT_XXX arguments which are typecast to the proper TT_XXX types 1.2440 + within the function. 1.2441 + Update code accordingly. 1.2442 + (tt_driver_class): Remove casts. 1.2443 + 1.2444 +2004-05-02 Werner Lemberg <wl@gnu.org> 1.2445 + 1.2446 + * src/sfnt/ttload.c (tt_face_free_names): Check that `table->names' 1.2447 + is not NULL. Reported by Gordon Childs <gchilds@quickcut.com.au>. 1.2448 + 1.2449 +2004-04-29 Werner Lemberg <wl@gnu.org> 1.2450 + 1.2451 + * docs/formats.txt: Add more information on PFR format. 1.2452 + 1.2453 +2004-04-28 Werner Lemberg <wl@gnu.org> 1.2454 + 1.2455 + * docs/formats.txt: New file. 1.2456 + * docs/CHANGES: Updated. 1.2457 + 1.2458 +2004-04-28 Masatake YAMATO <jet@gyve.org> 1.2459 + 1.2460 + * include/freetype/internal/tttypes.h (GX_BlendRec_) 1.2461 + [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Fix a typo. 1.2462 + 1.2463 + * src/truetype/ttgxvar.h (GX_BlendRec_): Fix a typo. 1.2464 + 1.2465 +2004-04-27 Masatake YAMATO <jet@gyve.org> 1.2466 + 1.2467 + * src/truetype/ttgxvar.h: Use FT_LOCAL instead of FT_LOCAL_DEF 1.2468 + for function declarations. 1.2469 + 1.2470 +2004-04-25 George Williams <gww@silcom.com> 1.2471 + 1.2472 + * src/truetype/ttgxvar.c (ft_var_apply_tuple): Fix typo. 1.2473 + 1.2474 +2004-04-25 Werner Lemberg <wl@gnu.org> 1.2475 + 1.2476 + * src/truetype/Jamfile, docs/CHANGES: Updated. 1.2477 + 1.2478 +2004-04-24 Werner Lemberg <wl@gnu.org> 1.2479 + 1.2480 + * src/pcf/pcfdrivr.c: Revert change from 2004-04-17. 1.2481 + * src/pcf/pcfutil.c: Use FT_LOCAL_DEF. 1.2482 + * src/pcf/pcfutil.h: Include FT_CONFIG_CONFIG_H. 1.2483 + Use FT_BEGIN_HEADER and FT_END_HEADER. 1.2484 + Use FT_LOCAL. 1.2485 + 1.2486 +2004-04-24 George Williams <gww@silcom.com> 1.2487 + 1.2488 + Add support for Apple's distortable font technology (in GX fonts). 1.2489 + 1.2490 + * devel/ftoption.h, include/freetype/config/ftoption.h 1.2491 + (TT_CONFIG_OPTION_GX_VAR_SUPPORT): New macro. 1.2492 + 1.2493 + * include/freetype/ftmm.h (FT_Var_Axis, FT_Var_Named_Style, 1.2494 + FT_MM_Var): New structures. 1.2495 + (FT_Get_MM_Var, FT_Set_Var_Design_Coordinates, 1.2496 + FT_Set_Var_Blend_Coordinates): New function declarations. 1.2497 + 1.2498 + * include/freetype/internal/services/svmm.h (FT_Get_MM_Var_Func, 1.2499 + FT_Set_Var_Design_Func): New typedefs. 1.2500 + Update MultiMasters service. 1.2501 + 1.2502 + * include/freetype/internal/tttypes.h 1.2503 + [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include FT_MULTIPLE_MASTERS_H. 1.2504 + (GX_Blend) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: New typedef. 1.2505 + (TT_Face) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: New members `doblend' 1.2506 + and `blend'. 1.2507 + 1.2508 + * include/freetype/tttags.h (TTAG_avar, TTAG_cvar, TTAG_gvar): New 1.2509 + macros. 1.2510 + 1.2511 + * include/freetype/internal/fttrace.h: Add `ttgxvar'. 1.2512 + 1.2513 + * src/base/ftmm.c (FT_Get_MM_Var, FT_Set_Var_Design_Coordinates, 1.2514 + FT_Set_Var_Blend_Coordinates): New functions. 1.2515 + 1.2516 + * src/sfnt/sfobjs.c (sfnt_load_face) 1.2517 + [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Set FT_FACE_FLAG_MULTIPLE_MASTERS 1.2518 + flag for GX var fonts. 1.2519 + 1.2520 + * src/truetype/ttgxvar.c, src/truetype/ttgxvar.h: New files. 1.2521 + 1.2522 + * src/truetype/truetype.c [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include 1.2523 + ttgxvar.c. 1.2524 + 1.2525 + * src/truetype/ttdriver.c [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include 1.2526 + FT_MULTIPLE_MASTERS_H, FT_SERVICE_MULTIPLE_MASTERS_H, and ttgxvar.h. 1.2527 + (tt_service_gx_multi_masters) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: 1.2528 + New service. 1.2529 + (tt_services) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Updated. 1.2530 + 1.2531 + * src/truetype/ttgload.c [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include 1.2532 + ttgxvar.h. 1.2533 + (TT_Process_Simple_Glyph, load_truetype_glyph) 1.2534 + [TT_CONFIG_OPTION_GX_VAR_SUPPORT] :Support GX var fonts. 1.2535 + 1.2536 + * src/truetype/ttobjs.c [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include 1.2537 + ttgxvar.h. 1.2538 + (tt_done_face) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Call 1.2539 + tt_done_blend. 1.2540 + 1.2541 + * src/truetype/ttpload.c [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Include 1.2542 + ttgxvar.h. 1.2543 + (tt_face_load_cvt) [TT_CONFIG_OPTION_GX_VAR_SUPPORT]: Call 1.2544 + tt_face_vary_cvt. 1.2545 + 1.2546 + * src/truetype/rules.mk (TT_DRV_SRC): Add ttgxvar.c. 1.2547 + 1.2548 + * src/type1/t1driver.c (t1_service_multi_masters): Add T1_Get_MM_Var 1.2549 + and T1_Set_Var_Design. 1.2550 + 1.2551 + * src/type1/t1load.c (FT_INT_TO_FIXED, FT_FIXED_TO_INT): New macros. 1.2552 + (T1_Get_MM_Var, T1_Set_Var_Design): New functions. 1.2553 + 1.2554 + * src/type1/t1load.h (T1_Get_MM_Var, T1_Set_Var_Design): New 1.2555 + function declarations. 1.2556 + 1.2557 +2004-04-23 Werner Lemberg <wl@gnu.org> 1.2558 + 1.2559 + * include/freetype/ftcache.h (FT_Get_CharMap_Index): Rename 1.2560 + declaration and move to... 1.2561 + * include/freetype/freetype.h (FT_Get_Charmap_Index): Here. 1.2562 + (FREETYPE_PATCH): Set to 9. 1.2563 + 1.2564 + * src/base/ftobjs.c (FT_Get_Charmap_Index): New function. 1.2565 + 1.2566 + * builds/unix/configure.ac (version_info): Set to 9:7:3. 1.2567 + * builds/unix/configure: Updated. 1.2568 + 1.2569 + * builds/win32/visualc/index.html, 1.2570 + builds/win32/visualc/freetype.dsp, 1.2571 + builds/win32/visualc/freetype.vcproj: s/218/219/. 1.2572 + 1.2573 + * builds/freetype.mk (refdoc), README, Jamfile (RefDoc): 1.2574 + s/2.1.8/2.1.9/. 1.2575 + 1.2576 + * docs/CHANGES, docs/VERSION.DLL: Updated. 1.2577 + 1.2578 +2004-04-21 Werner Lemberg <wl@gnu.org> 1.2579 + 1.2580 + * src/cff/cffparse.c (cff_parser_run), src/psaux/psobjs.c 1.2581 + (ps_parser_load_field): Use FT_CHAR_BIT. 1.2582 + 1.2583 +2004-04-21 David Turner <david@freetype.org> 1.2584 + 1.2585 + 1.2586 + * Version 2.1.8 released. 1.2587 + ========================= 1.2588 + 1.2589 + 1.2590 + * src/cff/cffobjs.c (cff_face_init): Fix a small memory leak. 1.2591 + 1.2592 + * src/autofit/afloader.c (af_loader_load_g), src/autofit/afmodule.c 1.2593 + (af_autofitter_load_glyph), src/base/ftdebug.c (FT_Trace_Get_Name): 1.2594 + Remove compiler warnings. 1.2595 + 1.2596 + * src/autofit/aftypes.h: Undefine AF_DEBUG. 1.2597 + 1.2598 + * src/lzw/zopen.c (rmask), src/pcf/pcfdrivr.c (pcf_service_bdf, 1.2599 + pcf_services), src/pcf/pcfread.c (tableNames), src/psaux/psobjs.c 1.2600 + (ft_char_table), src/type42/t42drivr.c (t42_service_glyph_dict, 1.2601 + t42_service_ps_font_name): Decorate data arrays with `const' to 1.2602 + avoid populating the `.data' segment. 1.2603 + 1.2604 + * src/lzw/Jamfile: New file. 1.2605 + 1.2606 +2004-04-20 Werner Lemberg <wl@gnu.org> 1.2607 + 1.2608 + * src/psaux/psobjs.c (T1Radix): Renamed to... 1.2609 + (ps_radix): This. 1.2610 + Update current cursor position. 1.2611 + 1.2612 + * docs/CHANGES: Updated. 1.2613 + 1.2614 +2004-04-18 Werner Lemberg <wl@gnu.org> 1.2615 + 1.2616 + * src/truetype/ttgload.c, src/truetype/ttgload.h (TT_Load_Glyph), 1.2617 + src/ttdriver.c (Load_Glyph): Change type of `glyph_index' to 1.2618 + FT_UInt. From Lex Warners. 1.2619 + 1.2620 +2004-04-17 Chisato Yamauchi <cyamauch@a.phys.nagoya-u.ac.jp> 1.2621 + 1.2622 + * src/sfnt/ttload.c (tt_face_load_sfnt_header): Really fix change 1.2623 + from 2004-03-19. 1.2624 + 1.2625 + * src/bdf/bdfdrivr.c (BDF_Face_Init): Use `ft_strlen'. 1.2626 + 1.2627 + * src/pcf/pcfutil.c, src/pcf/pcfutil.h: Decorate functions with 1.2628 + `static'. 1.2629 + Remove unused function `RepadBitmap'. 1.2630 + * src/pcf/pcfdrivr.c: Don't include pcfutil.h. 1.2631 + 1.2632 +2004-04-16 Werner Lemberg <wl@gnu.org> 1.2633 + 1.2634 + * builds/unix/freetype-config.in (usage): Fix and improve usage 1.2635 + information. 1.2636 + 1.2637 +2004-04-15 Werner Lemberg <wl@gnu.org> 1.2638 + 1.2639 + * builds/unix/ftconfig.in, builds/vms/ftconfig.h: Define 1.2640 + FT_CHAR_BIT. 1.2641 + 1.2642 + * src/base/ftobjs.c (FT_Load_Glyph): Don't apply autohinting if 1.2643 + glyph is vertically distorted or mirrored. 1.2644 + 1.2645 + * src/cff/cffgload.c (cff_slot_load): Handle zero `size' properly 1.2646 + for embedded bitmaps. 1.2647 + 1.2648 + * docs/CHANGES: Updated. 1.2649 + 1.2650 +2004-04-15 bytesoftware <bytesoftware@btinternet.com> 1.2651 + 1.2652 + * include/freetype/config/ftconfig.h, src/base/ftstream.c 1.2653 + (FT_Stream_ReadFields): More fixes using FT_CHAR_BIT. 1.2654 + 1.2655 +2004-04-14 Werner Lemberg <wl@gnu.org> 1.2656 + 1.2657 + * include/freetype/config/ftconfig.h (FT_CHAR_BIT): New macro. 1.2658 + 1.2659 +2004-04-14 Alex Strelnikov <ptktyrf@mail.ru> 1.2660 + 1.2661 + * src/cache/ftcsbits.c (ftc_snode_load): Initialize `*asize' in case 1.2662 + of error. 1.2663 + 1.2664 +2004-04-14 Werner Lemberg <wl@gnu.org> 1.2665 + 1.2666 + * src/base/ftmac.c [__GNUC__]: Define OS_INLINE. 1.2667 + * builds/unix/configure.ac: Don't try to remove `-ansi' compilation 1.2668 + switch on the Mac. 1.2669 + 1.2670 + * builds/unix/ltmain.sh: Regenerated with `libtoolize --force 1.2671 + --copy' from libtool 1.5.6. 1.2672 + * builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from 1.2673 + automake 1.8a. 1.2674 + * builds/unix/configure: Regenerated with autoconf 2.59a. 1.2675 + 1.2676 +2004-04-13 Werner Lemberg <wl@gnu.org> 1.2677 + 1.2678 + * include/freetype/config/ftconfig.h: Use CHAR_BIT to define 1.2679 + size of FT_SIZEOF_xxx. 1.2680 + 1.2681 +2004-04-12 Chisato Yamauchi <cyamauch@a.phys.nagoya-u.ac.jp> 1.2682 + 1.2683 + * include/freetype/internal/sfnt.h (TT_Find_SBit_Image_Func, 1.2684 + TT_Load_SBit_Metrics_Func): New typedefs. 1.2685 + (SFNT_Interface): Add find_sbit_image and load_sbit_metrics. 1.2686 + 1.2687 + * src/sfnt/sfdriver.c (sfnt_interface): Updated. 1.2688 + * src/sfnt/ttsbit.h (tt_find_sbit_image, tt_load_sbit_metrics): New 1.2689 + declarations. 1.2690 + * src/sfnt/ttsbit.c (find_sbit_image): Renamed to... 1.2691 + (tt_find_sbit_image): This. 1.2692 + Updated all callers. 1.2693 + (load_sbit_metrics): Renamed to... 1.2694 + (tt_load_sbit_metrics): This. 1.2695 + Updated all callers. 1.2696 + 1.2697 +2004-04-12 Werner Lemberg <wl@gnu.org> 1.2698 + 1.2699 + * configure: Accept makepp also. 1.2700 + 1.2701 + * builds/unix/detect.mk: Use proper path to unix-def.mk. 1.2702 + * builds/unix/unix-def.in (BUILD_DIR, PLATFORM): Remove. 1.2703 + * builds/unix/unix.mk (BUILD_DIR, PLATFORM): Define. 1.2704 + Use BUILD_DIR. 1.2705 + 1.2706 + * docs/INSTALL, docs/INSTALL.GNU, docs/INSTALL.UNX: Update 1.2707 + documentation on makepp. 1.2708 + 1.2709 +2004-04-11 Werner Lemberg <wl@gnu.org> 1.2710 + 1.2711 + * src/lzw/zopen.c: Don't include sys/param.h and sys/stat.h. 1.2712 + 1.2713 +2004-04-10 Werner Lemberg <wl@gnu.org> 1.2714 + 1.2715 + * src/lzw/ftlzw.c: Include zopen.h dependent on 1.2716 + FT_CONFIG_OPTION_USE_LZW. 1.2717 + 1.2718 + * src/base/ftdebug.c: s/index/idx/ to avoid compiler warnings. 1.2719 + 1.2720 +2004-04-02 Werner Lemberg <wl@gnu.org> 1.2721 + 1.2722 + * builds/unix/ltmain.sh: Regenerated with `libtoolize --force 1.2723 + --copy' from libtool 1.5.2. 1.2724 + * builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from 1.2725 + automake 1.8a. 1.2726 + * builds/unix/configure: Regenerated with autoconf 2.59a. 1.2727 + 1.2728 +2004-04-01 Werner Lemberg <wl@gnu.org> 1.2729 + 1.2730 + * builds/unix/ft-munmap.m4 (FT_MUNMAP_PARAM): Fix arguments of 1.2731 + AC_COMPILE_IFELSE. 1.2732 + * builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from 1.2733 + automake 1.8a. 1.2734 + * builds/unix/configure: Regenerated with autoconf 2.59a. 1.2735 + * builds/unix/config.guess, builds/unix/config.sub: Updated from 1.2736 + `config' CVS module at subversions.gnu.org. 1.2737 + * builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from 1.2738 + `texinfo' CVS module at subversions.gnu.org. 1.2739 + * builds/freetype.mk (refdoc): Updated. 1.2740 + 1.2741 +2004-03-31 Werner Lemberg <wl@gnu.org> 1.2742 + 1.2743 + Handle broken FNT files which don't have a trailing NULL byte 1.2744 + in the face name string. 1.2745 + 1.2746 + * src/winfonts/winfnt.h (FNT_FontRec): New member `family_name'. 1.2747 + * src/winfonts/winfnt.c (fnt_font_done): Free font->family_name. 1.2748 + (FNT_Face_Init): Append a final zero byte to the font face name. 1.2749 + 1.2750 +2004-03-30 Werner Lemberg <wl@gnu.org> 1.2751 + 1.2752 + * src/sfnt/ttload.c (tt_face_load_sfnt_header): Fix change from 1.2753 + 2004-03-19. 1.2754 + 1.2755 +2004-03-27 Werner Lemberg <wl@gnu.org> 1.2756 + 1.2757 + * src/base/descrip.mms (OBJS): Add ftbbox.obj. 1.2758 + 1.2759 +2004-03-26 George Williams <gww@silcom.com> 1.2760 + 1.2761 + Add vertical phantom points. 1.2762 + 1.2763 + * include/freetype/internal/tttypes.h (TT_LoaderRec): Add 1.2764 + `top_bearing', `vadvance', `pp3', and `pp4'. 1.2765 + 1.2766 + * src/autofit/afloader.c (af_loader_load_g): Handle two more points. 1.2767 + 1.2768 + * src/autohint/ahhint.c (ah_hinter_load): Handle two more points. 1.2769 + * src/truetype/ttgload.c (Get_VMetrics): New function. 1.2770 + (TT_Load_Simple_Glyph, TT_Process_Simple_Glyph): Handle two more 1.2771 + points. 1.2772 + (load_truetype_glyph): Use Get_VMetrics. 1.2773 + Handle two more points. 1.2774 + (compute_glyph_metrics): Thanks to vertical phantom points we now 1.2775 + can always compute `advance_height' and `top_bearing'. 1.2776 + * src/truetype/ttobjs.h (TT_SubglyphRec): Add vertical phantom 1.2777 + points. 1.2778 + 1.2779 + 1.2780 + * src/autohint/ahglyph.c (ah_outline_load): Fix allocation of 1.2781 + `news'. 1.2782 + 1.2783 +2004-03-21 Werner Lemberg <wl@gnu.org> 1.2784 + 1.2785 + * src/bdf/bdfdrivr.c (BDF_Glyph_Load): Fix left side bearing. 1.2786 + 1.2787 +2004-03-20 Steve Hartwell <shspamsink@comcast.net> 1.2788 + 1.2789 + * src/cache/ftcmru.c (FTC_MruList_RemoveSelection): Handle a NULL 1.2790 + value for `selection' as `select all'. 1.2791 + 1.2792 +2004-03-19 Steve Hartwell <shspamsink@comcast.net> 1.2793 + 1.2794 + * src/sfnt/ttload.c (tt_face_load_sfnt_header): Reject face_index 1.2795 + values > 0 if loading non-TTC fonts. 1.2796 + 1.2797 + * src/base/ftmac.c (open_face_from_buffer): Set positive face_index 1.2798 + to zero before calling FT_Open_Face. 1.2799 + 1.2800 + * docs/CHANGES: Updated. 1.2801 + 1.2802 +2004-03-04 Werner Lemberg <wl@gnu.org> 1.2803 + 1.2804 + * Jamfile, vms_make.com, builds/win32/visualc/freetype.dsp, 1.2805 + builds/win32/visualc/freetype/vcproj, include/freetype/ftmoderr.h: 1.2806 + Add LZW module. 1.2807 + 1.2808 + * Jamfile.in: Removed. 1.2809 + 1.2810 + * docs/CHANGES: Updated. 1.2811 + 1.2812 + * include/freetype/internal/ftobjs.h: s/MIN/FT_MIN/, s/MAX/FT_MAX/, 1.2813 + s/ABS/FT_ABS/. Updated all callers. 1.2814 + 1.2815 + * src/type1/t1load.c (parse_dict), src/pcf/pcfdrivr.c 1.2816 + (PCF_Face_Init): Use FT_ERROR_BASE. 1.2817 + 1.2818 +2004-03-04 Albert Chin <china@thewrittenword.com> 1.2819 + 1.2820 + Add support for PCF fonts compressed with LZW (extension .pcf.Z, 1.2821 + created with `compress'). 1.2822 + 1.2823 + * include/freetype/config/ftoption.h, devel/ftoption.h 1.2824 + (FT_CONFIG_OPTION_USE_LZW): New macro. 1.2825 + 1.2826 + * include/freetype/ftlzw.h: New file. 1.2827 + * include/freetype/config/ftheader.h (FT_LZW_H): New macro for 1.2828 + ftlzw.h. 1.2829 + 1.2830 + * src/lzw/*: New files. 1.2831 + 1.2832 + * src/pcf/pcfdrivr.c: Include FT_LZW_H. 1.2833 + (PCF_Face_Init): Try LZW also. 1.2834 + 1.2835 + * src/gzip/ftgzip.c: s/0/Gzip_Err_Ok/ where appropriate. 1.2836 + Beautify. 1.2837 + 1.2838 +2004-03-03 Werner Lemberg <wl@gnu.org> 1.2839 + 1.2840 + * src/pshinter/pshalgo.c (psh_hint_table_init): Simplify code. 1.2841 + 1.2842 +2004-03-02 Werner Lemberg <wl@gnu.org> 1.2843 + 1.2844 + Add embedded bitmap support to CFF driver. 1.2845 + 1.2846 + * src/cff/cffobjs.h (CFF_SizeRec): New structure. 1.2847 + 1.2848 + * src/cff/cffgload.c (cff_builder_init): Updated. 1.2849 + (cff_slot_load): Updated. 1.2850 + [TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: Load sbit. 1.2851 + 1.2852 + * src/cff/cffobjs.c (sbit_size_reset) 1.2853 + [TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: New function. 1.2854 + (cff_size_get_globals_funcs, cff_size_done, cff_size_init): Updated. 1.2855 + (cff_size_reset): Updated. 1.2856 + [TT_CONFIG_OPTION_EMBEDDED_BITMAPS]: Call sbit_size_reset. 1.2857 + 1.2858 + * src/cff/cffdrivr.c (Load_Glyph): Updated. 1.2859 + (cff_driver_class): Use CFF_SizeRec. 1.2860 + 1.2861 + * docs/CHANGES: Updated. 1.2862 + 1.2863 +2004-03-01 Werner Lemberg <wl@gnu.org> 1.2864 + 1.2865 + * src/pshinter/pshglob.c (psh_globals_scale_widths): Don't use 1.2866 + FT_RoundFix but FT_PIX_ROUND. 1.2867 + (psh_blues_snap_stem): Don't use blue_shift but blue_threshold. 1.2868 + 1.2869 + * src/pshinter/pshalgo.c (PSH_STRONG_THRESHOLD_MAXIMUM): New macro. 1.2870 + (psh_glyph_find_string_points): Use PSH_STRONG_THRESHOLD_MAXIMUM. 1.2871 + (psh_glyph_find_blue_points): New function. Needed for fonts like 1.2872 + p052003l.pfb (URW Palladio L Roman) which have flex curves at the 1.2873 + base line within blue zones, but the flex curves aren't covered by 1.2874 + hints. 1.2875 + (ps_hints_apply): Use psh_glyph_find_blue_points. 1.2876 + 1.2877 +2004-02-27 Garrick Meeker <garrick@digitalanarchy.com> 1.2878 + 1.2879 + * builds/unix/configure.ac: Fix compiler flags for 1.2880 + `--with-old-mac-fonts'. 1.2881 + * builds/unix/configure: Regenerated. 1.2882 + 1.2883 + * src/base/ftmac.c: s/TARGET_API_MAC_CARBON/!TARGET_API_MAC_OS8/. 1.2884 + (FT_New_Face_From_Resource): New function. 1.2885 + (FT_New_Face): Use FT_New_Face_From_Resource. 1.2886 + (FT_New_Face_From_FSSpec): Use FT_New_Face_From_Resource. 1.2887 + [__MWERKS__]: Don't include FSp_fopen.h. 1.2888 + 1.2889 +2004-02-26 Werner Lemberg <wl@gnu.org> 1.2890 + 1.2891 + * src/pshinter/pshglob.c (psh_globals_new): Fix value of 1.2892 + `dim->stdw.count'. 1.2893 + Don't assign default values to blue scale and blue shift. 1.2894 + 1.2895 +2004-02-25 Werner Lemberg <wl@gnu.org> 1.2896 + 1.2897 + * docs/CHANGES: Updated. 1.2898 + 1.2899 +2004-02-25 Garrick Meeker <garrick@digitalanarchy.com> 1.2900 + Steve Hartwell <shspamsink@comcast.net> 1.2901 + 1.2902 + Improve MacOS fond support. Provide a new API 1.2903 + `FT_New_Face_From_FSSpec' similar to `FT_New_Face'. 1.2904 + 1.2905 + * src/base/ftmac.c [__MWERKS__]: Include FSp_fpopen.h. 1.2906 + STREAM_FILE [__MWERKS__]: New macro. 1.2907 + (ft_FSp_stream_close, ft_FSp_stream_io) [__MWERKS__]: New functions. 1.2908 + (file_spec_from_path) [__MWERKS__]: Updated #if statement. 1.2909 + (get_file_type, make_lwfn_spec): Use `const' for argument. 1.2910 + (is_dfont) [TARGET_API_MAC_CARBON]: Removed. 1.2911 + (count_face_sfnt, count_faces): New functions. 1.2912 + (parse_fond): Do some range checking. 1.2913 + (read_lwfn): Change type of second argument. 1.2914 + No longer call FSpOpenResFile. 1.2915 + (OpenFileAsResource): New function. 1.2916 + (FT_New_Face_From_LWFN): Use `const' for second argument. 1.2917 + Use OpenFileAsResource. 1.2918 + (FT_New_Face_From_Suitcase): Change type of second argument. 1.2919 + No longer call FSpOpenResFile. 1.2920 + Loop over all resource indices. 1.2921 + (FT_New_Face_From_dfont) [TARGET_API_MAC_CARBON]: Removed. 1.2922 + (FT_GetFile_From_Mac_Name): Use `const' for first argument. 1.2923 + (ResourceForkSize): Removed. 1.2924 + (FT_New_Face): Updated to use new functions. 1.2925 + (FT_New_Face_From_FSSpec): New function. 1.2926 + 1.2927 + * include/freetype/ftmac.h: Updated. 1.2928 + 1.2929 +2004-02-24 Malcolm Taylor <mtaylor@clear.net.nz> 1.2930 + 1.2931 + * src/autohint/ahhint.c (ah_hinter_load) <FT_GLYPH_FORMAT_OUTLINE>: 1.2932 + Handle case where outline->num_vedges is zero while computing hinted 1.2933 + metrics. 1.2934 + 1.2935 +2004-02-24 Gordon Childs <gchilds@quickcut.com.au> 1.2936 + 1.2937 + * src/cff/cffcmap.c (cff_cmap_unicode_init): Provide correct value 1.2938 + for `count'. 1.2939 + 1.2940 +2004-02-24 Werner Lemberg <wl@gnu.org> 1.2941 + 1.2942 + * include/freetype/t1tables.h (PS_PrivateRec): Add 1.2943 + `expansion_factor'. 1.2944 + 1.2945 + * src/pshinter/pshglob (psh_blues_scale_zones): Fix computation 1.2946 + of blues->no_overshoots -- `blues_scale' is stored with a 1.2947 + magnification of 1000, and `scale' returns fractional pixels. 1.2948 + 1.2949 + * src/type1/t1load.c (T1_Open_Face): Initialize `blue_shift', 1.2950 + `blue_fuzz', `expansion_factor', and `blue_scale' according to the 1.2951 + Type 1 specification. 1.2952 + 1.2953 + * src/type1/t1tokens.h: Handle `ExpansionFactor'. 1.2954 + 1.2955 + * docs/CHANGES: Updated. 1.2956 + 1.2957 +2004-02-24 Masatake YAMATO <jet@gyve.org> 1.2958 + 1.2959 + Provide generic access to MacOS resource forks. 1.2960 + 1.2961 + * src/base/ftrfork.c, include/freetype/internal/ftrfork.h: New 1.2962 + files. 1.2963 + 1.2964 + * src/base/ftobjs.c: Include FT_INTERNAL_RFORK_H. 1.2965 + (Mac_Read_POST_Resource, Mac_Read_sfnt_Resource): Remove arguments 1.2966 + `resource_listoffset' and `resource_data' and adapt code 1.2967 + accordingly. These values are calculated outside of the function 1.2968 + now. 1.2969 + Add new argument `offsets'. 1.2970 + (IsMacResource): Use `FT_Raccess_Get_HeaderInfo' and 1.2971 + `FT_Raccess_Get_DataOffsets'. 1.2972 + (load_face_in_embedded_rfork): New function. 1.2973 + (load_mac_face): Use load_face_in_embedded_rfork. 1.2974 + (ft_input_stream_new): Renamed to... 1.2975 + (FT_Stream_New): This. Use FT_BASE_DEF. Updated all callers. 1.2976 + (ft_input_stream_free): Renamed to... 1.2977 + (FT_Stream_Free): This. Use FT_BASE_DEF. Updated all callers. 1.2978 + 1.2979 + * src/base/ftbase.c: Include ftrfork.c. 1.2980 + 1.2981 + * src/base/rules.mk (BASE_SRC), src/base/Jamfile: Updated. 1.2982 + 1.2983 + * include/freetype/internal/internal.h (FT_INTERNAL_RFORK_H): 1.2984 + New macro. 1.2985 + 1.2986 + * include/freetype/internal/fttrace.h: Added `rfork' as a new 1.2987 + trace definition. 1.2988 + 1.2989 + * include/freetype/internal/ftstream.h: Declare FT_Stream_New and 1.2990 + FT_Stream_Free. 1.2991 + 1.2992 + * include/freetype/config/ftoption.h, devel/ftoption.h 1.2993 + (FT_CONFIG_OPTION_GUESSING_EMBEDDED_RFORK): New option. 1.2994 + 1.2995 + * include/freetype/config/ftstdlib.h (ft_strrchr): New macro. 1.2996 + 1.2997 +2004-02-23 Werner Lemberg <wl@gnu.org> 1.2998 + 1.2999 + * docs/CHANGES: Updated. 1.3000 + 1.3001 + * include/freetype/internal/ftdebug.h: Include FT_FREETYPE_H. 1.3002 + 1.3003 +2004-02-23 Masatake YAMATO <jet@gyve.org> 1.3004 + 1.3005 + Provide a simple API to control FreeType's tracing levels. 1.3006 + 1.3007 + * include/freetype/internal/ftdebug.h (FT_Trace_Get_Count, 1.3008 + FT_Trace_Get_Name): New declarations. 1.3009 + 1.3010 + * src/base/ftdebug.c (FT_Trace_Get_Count, FT_Trace_Get_Name): New 1.3011 + functions. 1.3012 + 1.3013 +2004-02-23 David Turner <david@freetype.org> 1.3014 + 1.3015 + * src/autofit/afhints.c, src/autofit/afhints.h, 1.3016 + src/autofit/aflatin.c, src/autofit/afloader.c, src/types.h: Grave 1.3017 + bugs have been fixed. The auto-fitter works, doesn't crash, but 1.3018 + still produces unexpected results... 1.3019 + 1.3020 +2004-02-21 Werner Lemberg <wl@gnu.org> 1.3021 + 1.3022 + * src/pshinter/pshalgo.c (PSH_STRONG_THRESHOLD): Changed to hold 1.3023 + the accepted shift for strong points in fractional pixels (which 1.3024 + is a heuristic value). 1.3025 + (psh_glyph_find_strong_points): Compute threshold for 1.3026 + psh_hint_table_find_strong_points. 1.3027 + (psh_hint_table_find_strong_point): Add parameter to pass threshold. 1.3028 + 1.3029 +2004-02-20 Werner Lemberg <wl@gnu.org> 1.3030 + 1.3031 + * src/pshinter/pshrec.c (ps_mask_table_set_bits): Don't call 1.3032 + ps_mask_table_alloc but ps_mask_table_last. 1.3033 + (ps_hints_t2mask): Use correct position and number for vertical 1.3034 + and horizontal hinter mask bits. 1.3035 + 1.3036 + * docs/CHANGES: Updated. 1.3037 + 1.3038 +2004-02-19 Werner Lemberg <wl@gnu.org> 1.3039 + 1.3040 + * src/base/ftstroke.c (FT_Glyph_StrokeBorder): Fix enum handling. 1.3041 + * src/cff/cffdrivr.c (cff_get_cmap_info): Remove compiler warning. 1.3042 + 1.3043 +2004-02-18 Werner Lemberg <wl@gnu.org> 1.3044 + 1.3045 + * include/freetype/freetype.h: Document FT_LOAD_TARGET_XXX properly. 1.3046 + 1.3047 + * src/base/ftglyph.c (ft_bitmap_glyph_class, 1.3048 + ft_outline_glyph_class): Tag with FT_CALLBACK_TABLE_DEF. 1.3049 + 1.3050 + * src/smooth/ftsmooth.c (ft_smooth_render): Handle 1.3051 + FT_RENDER_MODE_LIGHT. 1.3052 + 1.3053 +2004-02-17 Werner Lemberg <wl@gnu.org> 1.3054 + 1.3055 + Fix callback functions in cache module. 1.3056 + 1.3057 + * src/cache/ftccback.h: New file for callback declarations. 1.3058 + 1.3059 + * src/cache/ftcbasic.c (ftc_basic_family_compare, 1.3060 + ftc_basic_family_init, ftc_basic_family_get_count, 1.3061 + ftc_basic_family_load_bitmap, ftc_basic_family_load_glyph, 1.3062 + ftc_basic_gnode_compare_faceid): Use FT_CALLBACK_DEF. 1.3063 + (ftc_basic_image_family_class, ftc_basic_image_cache_class, 1.3064 + ftc_basic_sbit_family_class, ftc_basic_sbit_cache_class): 1.3065 + Use FT_CALLBACK_TABLE_DEF and local wrapper functions. 1.3066 + 1.3067 + * src/cache/ftccache.c: Include ftccback.h. 1.3068 + (ftc_cache_init, ftc_cache_done): New wrapper functions which use 1.3069 + FT_LOCAL_DEF. 1.3070 + 1.3071 + * src/cache/ftccmap.c: Include ftccback.h. 1.3072 + (ftc_cmap_cache_class): Use local wrapper functions. 1.3073 + 1.3074 + * src/cache/ftcglyph.c: Include ftccback.h. 1.3075 + (ftc_gnode_compare, ftc_gcache_init, ftc_gcache_done): New wrapper 1.3076 + functions which use FT_LOCAL_DEF. 1.3077 + 1.3078 + * src/cache/ftcimage.c: Include ftccback.h. 1.3079 + (ftc_inode_free, ftc_inode_new, ftc_inode_weight): New wrapper 1.3080 + functions which use FT_LOCAL_DEF. 1.3081 + 1.3082 + * src/cache/ftcmanag.c (ftc_size_list_class, ftc_face_list_class): 1.3083 + Use FT_CALLBACK_TABLE_DEF. 1.3084 + 1.3085 + * src/cache;/ftcsbits.c: Include ftccback.h. 1.3086 + (ftc_snode_free, ftc_snode_new, ftc_snode_weight, 1.3087 + ftc_snode_compare): New wrapper functions which use FT_LOCAL_DEF. 1.3088 + 1.3089 + * src/cache/rules.mk (CACHE_DRV_H): Add ftccback.h. 1.3090 + 1.3091 +2004-02-17 Masatake YAMATO <jet@gyve.org> 1.3092 + 1.3093 + * include/freetype/ftmac.h (FT_GetFile_From_Mac_Name): Fix a typo 1.3094 + (FT_EXPORT_DEF -> FT_EXPORT). 1.3095 + 1.3096 + * include/freetype/ftxf86.h (FT_Get_X11_Font_Format): Ditto. 1.3097 + 1.3098 +2004-02-15 Werner Lemberg <wl@gnu.org> 1.3099 + 1.3100 + * src/base/ftobjs.c (FT_Set_Char_Size): Fix typo. 1.3101 + 1.3102 +2004-02-14 Masatake YAMATO <jet@gyve.org> 1.3103 + 1.3104 + * builds/unix/ftsystem.c: Include errno.h. 1.3105 + (ft_close_stream): Renamed to... 1.3106 + (ft_close_stream_by_munmap): This. 1.3107 + (ft_close_stream_by_free): New function. 1.3108 + (FT_Stream_Open): Use fallback method if mmap fails. 1.3109 + Use proper function for closing the stream. 1.3110 + 1.3111 +2004-02-14 Werner Lemberg <wl@gnu.org> 1.3112 + 1.3113 + * src/type1/t1load.c (parse_dict): Initialize `start_binary'. 1.3114 + 1.3115 +2004-02-13 Robert Etheridge <roberte@stcc.cc.tx.us> 1.3116 + 1.3117 + * src/type42/t42objs.c (T42_Face_Init), src/type1/t1objs.c 1.3118 + (T1_Face_Init), src/cid/cidobjs.c (cid_face_init): Fix computation 1.3119 + of underline_position and underline_thickness. 1.3120 + 1.3121 +2004-02-12 Werner Lemberg <wl@gnu.org> 1.3122 + 1.3123 + * src/base/ftobjs.c (FT_Set_Char_Size): Return immediately if 1.3124 + ppem values don't change. Suggested by Graham Asher. 1.3125 + 1.3126 +2004-02-11 Werner Lemberg <wl@gnu.org> 1.3127 + 1.3128 + * src/cid/cidload.c (cid_face_open): Always allocate 1.3129 + face->cid_stream so that we can deallocate it safely. 1.3130 + 1.3131 +2004-02-10 Werner Lemberg <wl@gnu.org> 1.3132 + 1.3133 + Make the PS parser more tolerant w.r.t. non-standard font data. In 1.3134 + general, an error is only reported in case of a syntax error; a 1.3135 + wrong type is now simply ignored (if possible). To be independent 1.3136 + of the order of various MM-specific keywords, the parse_shared_dict 1.3137 + routine has been removed -- the PS parser is now capable to skip 1.3138 + this data. It no longer fails on parsing e.g. 1.3139 + 1.3140 + dup /WeightVector exch def 1.3141 + 1.3142 + Since the token following /WeightVector isn't `[' (starting an 1.3143 + array) it is simply ignored. 1.3144 + 1.3145 + * include/freetype/fterrdef.h: Define `FT_Err_Ignore' (0xA2) as a 1.3146 + new internal error value. 1.3147 + 1.3148 + * src/type1/t1load.c (parse_blend_axis_types, 1.3149 + parse_blend_design_positions, parse_blend_design_map): Return 1.3150 + T1_Err_Ignore if no proper array is following the keyword. 1.3151 + (parse_weight_vector): Use T1_ToTokenArray, initializing `blend' 1.3152 + structure, if necessary. 1.3153 + Return T1_Err_Ignore if no proper array is following the keyword. 1.3154 + (parse_shared_dict): Removed. 1.3155 + (parse_encoding): Set parser->root.error to return T1_Err_Ignore 1.3156 + if no result can be obtained. 1.3157 + Check for errors before accessing `elements' array. 1.3158 + (t1_keywords): Remove /shareddict. 1.3159 + (parse_dict): Reset error if t1_load_keyword returns T1_Err_Ignore. 1.3160 + Set keyword_flag only in case of success. 1.3161 + Check error code if skipping an unrecognized token. 1.3162 + (T1_Open_Face) [!T1_CONFIG_OPTION_NO_MM_SUPPORT]: Call T1_Done_Blend 1.3163 + if blend commands haven't set up a proper MM font. 1.3164 + 1.3165 + * src/psaux/psobjs.c (ps_parser_load_field_table): Remove special 1.3166 + code for synthetic fonts. 1.3167 + Return PSaux_Err_Ignore if no proper value has been found. 1.3168 + 1.3169 +2004-02-09 Werner Lemberg <wl@gnu.org> 1.3170 + 1.3171 + * src/cff/cffgload.c (cff_decoder_parse_charstrings) 1.3172 + <cff_op_endchar>: Preserve glyph width before calling 1.3173 + cff_operator_seac. 1.3174 + 1.3175 +2004-02-09 Martin Muskens <mmuskens@aurelon.com> 1.3176 + 1.3177 + * src/cff/cffgload.c (cff_decoder_parse_charstrings): Handle special 1.3178 + first argument for `hintmask' and `cntrmask' operators also. 1.3179 + 1.3180 +2004-02-08 Werner Lemberg <wl@gnu.org> 1.3181 + 1.3182 + * builds/unix/configure.in: Call AC_SUBST for `enable_shared', 1.3183 + `hardcode_libdir_flag_spec', and `wl'. 1.3184 + * builds/unix/configure: Regenerated. 1.3185 + 1.3186 + * builds/unix/freetype-config.in: Make --prefix and --exec-prefix 1.3187 + actually work. 1.3188 + Report a proper --rpath (or -R) value for --libs argument if a 1.3189 + shared library has been built. 1.3190 + 1.3191 + * docs/CHANGES: Updated. 1.3192 + 1.3193 +2004-02-07 Keith Packard <keithp@keithp.com> 1.3194 + 1.3195 + * src/bdf/bdfdrivr.c (BDF_Face_Init, BDF_Set_Pixel_Size): Fix 1.3196 + computation of various vertical and horizontal metric values. 1.3197 + 1.3198 + * src/pcfdrivr.c (PCF_Set_Pixel_Size), src/pcfread (pcf_load_font): 1.3199 + Ditto. 1.3200 + 1.3201 +2004-02-07 Werner Lemberg <wl@gnu.org> 1.3202 + 1.3203 + * builds/win32/visualc/index.html, 1.3204 + builds/win32/visualc/freetype.dsp, 1.3205 + builds/win32/visualc/freetype.dsw, docs/CHANGES: Updated. 1.3206 + 1.3207 +2004-02-07 Vitaliy Pasternak <v_a_pasternak@mail.ru> 1.3208 + 1.3209 + * builds/win32/visualc/freetype.sln, 1.3210 + builds/win32/visualc/freetype.vcproj: New files for VS.NET 2003. 1.3211 + 1.3212 +2004-02-03 Werner Lemberg <wl@gnu.org> 1.3213 + 1.3214 + * include/freetype/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP): 1.3215 + Initialize `node'. 1.3216 + * src/type1/t1load.c (parse_dict): Initialize `have_integer'. 1.3217 + 1.3218 +2004-02-02 Werner Lemberg <wl@gnu.org> 1.3219 + 1.3220 + * src/type1/t1load.c (parse_dict): Handle `RD' and `-|' commands 1.3221 + outside of /Subrs or /CharStrings. This can happen if there is 1.3222 + additional code manipulating those two arrays so that FreeType 1.3223 + doesn't recognize them properly. 1.3224 + (T1_Open_Face): Improve an error message. 1.3225 + 1.3226 +2004-02-01 Werner Lemberg <wl@gnu.org> 1.3227 + 1.3228 + * src/type1/t1load.c (parse_charstrings): Exit immediately if 1.3229 + there are no elements in /CharStrings. This is needed for fonts 1.3230 + like Optima-Oblique which not only define /CharStrings but access it 1.3231 + also. 1.3232 + 1.3233 +2004-02-01 David Turner <david@freetype.org> 1.3234 + 1.3235 + * src/sfnt/Jamfile: Removing `ttcmap' from the list of sources. 1.3236 + 1.3237 + * include/freetype/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP) 1.3238 + <FTC_INLINE>: Provide macro version which doesn't use inline code. 1.3239 + * include/freetype/cache/ftcglyph.h (FTC_GCACHE_LOOKUP_CMP) 1.3240 + <FTC_INLINE>: Ditto. 1.3241 + Use FTC_MRULIST_LOOKUP_CMP. 1.3242 + * include/freetype/cache/ftcmru.h (FTC_MRULIST_LOOKUP_CMP): New 1.3243 + macro. 1.3244 + (FTC_MRULIST_LOOKUP): Use it. 1.3245 + 1.3246 + * src/cache/Jamfile (_sources), src/cache/descrip.mms: Updated. 1.3247 + * src/cache/ftcbasic.c: Fix compiler warnings. 1.3248 + * src/cache/ftcmanag.c (FTC_Manager_LookupSize, 1.3249 + FTC_Manager_LookupFace) <FTC_INLINE>: Use FTC_MRULIST_LOOKUP_CMP. 1.3250 + * src/cache/ftcmru.c (FTC_MruList_Find): Fix a bug (found after 1.3251 + heavy testing). 1.3252 + 1.3253 + * Jamfile: Updating `refdoc' target, and adding `autohint' to the 1.3254 + list of modules to build. Both the autohinter and autofitter will 1.3255 + be built by default. But which one will be used is determined by 1.3256 + the content of `ftmodule.h'. 1.3257 + 1.3258 + * src/autofit/*: Many updates, but the code is still buggy... 1.3259 + 1.3260 +2004-01-31 Werner Lemberg <wl@gnu.org> 1.3261 + 1.3262 + * src/cff/cffgload.c (cff_operator_seac): Fix magnitude of 1.3263 + accent offset. 1.3264 + Update code similarly to the seac support for Type 1 fonts. 1.3265 + (cff_decoder_parse_charstrings) <cff_op_endchar>: Fix magnitude 1.3266 + of accent offset. 1.3267 + Don't hint glyphs twice if seac is emulated. 1.3268 + <cff_op_flex>: Assign correct point tags. 1.3269 + * docs/CHANGES: Updated. 1.3270 + 1.3271 +2004-01-30 Werner Lemberg <wl@gnu.org> 1.3272 + 1.3273 + * src/type1/t1parse.c (T1_Get_Private_Dict): Use FT_MEM_MOVE, not 1.3274 + FT_MEM_COPY, for copying the private dict. 1.3275 + 1.3276 + * src/type1/t1load.c (parse_subrs): Assign number of subrs only 1.3277 + in first run. 1.3278 + (parse_charstrings): Parse /CharStrings in second run without 1.3279 + assigning values. 1.3280 + (parse_dict): Skip all /CharStrings arrays but the first. We need 1.3281 + this for non-standard fonts like `Optima' which have different 1.3282 + outlines depending on the resolution. Note that there is no 1.3283 + guarantee that we get fitting /Subrs and /CharStrings arrays; this 1.3284 + can only be done by a real PS interpreter. 1.3285 + 1.3286 +2004-01-29 Antoine Leca <Antoine-Freetype@Leca-Marti.org> 1.3287 + 1.3288 + * builds/win32/visualc/index.html: New file, giving detailed 1.3289 + explanations about forcing CR+LF line endings for the VC++ project 1.3290 + files. 1.3291 + 1.3292 +2004-01-22 Garrick Meeker <garrick@digitalanarchy.com> 1.3293 + 1.3294 + * src/cff/cffload.c (cff_subfont_load): Initialize `dict'. 1.3295 + 1.3296 +2004-01-22 Werner Lemberg <wl@gnu.org> 1.3297 + 1.3298 + Add support for the hexadecimal representation of binary data 1.3299 + started with `StartData' in CID-keyed Type 1 fonts. 1.3300 + 1.3301 + * include/freetype/internal/t1types.h (CID_FaceRec): Add new 1.3302 + members `binary_data' and `cid_stream'. 1.3303 + 1.3304 + * src/cid/cidload.c (cid_read_subrs): Use `face->cid_stream'. 1.3305 + (cid_hex_to_binary): New auxiliary function. 1.3306 + (cid_face_open): Add new argument `face_index' to return quickly 1.3307 + if less than zero. Updated all callers. 1.3308 + Call `cid_hex_to_binary', then open and assign memory stream to 1.3309 + `face->cid_stream' if `parser->binary_length' is non-zero. 1.3310 + * src/cid/cidload.h: Updated. 1.3311 + 1.3312 + * src/cid/cidobjs.c (cid_face_done): Free `binary_data' and 1.3313 + `cid_stream'. 1.3314 + 1.3315 + * src/cid/cidparse.c (cid_parser_new): Check arguments to 1.3316 + `StartData' and set parser->binary_length accordingly. 1.3317 + * src/cid/cidparse.h (CID_Parser): New member `binary_length'. 1.3318 + 1.3319 + * src/cid/cidgload.c (cid_load_glyph): Use `face->cid_stream'. 1.3320 + 1.3321 + * docs/CHANGES: Updated. 1.3322 + 1.3323 +2004-01-21 Werner Lemberg <wl@gnu.org> 1.3324 + 1.3325 + include/freetype/config/ftstdlib.h (ft_atoi): Replaced with... 1.3326 + (ft_atol): This. 1.3327 + * src/base/ftdbgmem.c: s/atol/ft_atol/. 1.3328 + * src/type42/t42drivr.c: s/ft_atoi/ft_atol/. 1.3329 + 1.3330 +2004-01-20 Masatake YAMATO <jet@gyve.org> 1.3331 + 1.3332 + * include/freetype/ftcache.h: Delete duplicated definition of 1.3333 + FTC_FaceID. 1.3334 + 1.3335 + * src/cff/cffdrivr.c (cff_get_cmap_info): Call sfnt module's TT CMap 1.3336 + Info service function if the cmap comes from sfnt. Return 0 if the 1.3337 + cmap is sythesized in cff module. 1.3338 + 1.3339 +2004-01-20 David Turner <david@freetype.org> 1.3340 + 1.3341 + * src/cache/ftcmanag.c (ftc_size_node_compare): Call 1.3342 + FT_Activate_Size. 1.3343 + 1.3344 +2004-01-20 Werner Lemberg <wl@gnu.org> 1.3345 + 1.3346 + * src/type1/t1parse.c (T1_Get_Private_Dict): Skip exactly one 1.3347 + CR, LF, or CR/LF after `eexec'. 1.3348 + 1.3349 +2004-01-18 David Turner <david@freetype.org> 1.3350 + 1.3351 + * src/sfnt/ttsbit.c (tt_face_set_sbit_strike): Remove compiler 1.3352 + warning. 1.3353 + 1.3354 + * src/tools/docmaker/*: Updating beautifier tool. 1.3355 + 1.3356 +2004-01-15 David Turner <david@freetype.org> 1.3357 + 1.3358 + * src/base/ftoutln.c (ft_orientation_extremum_compute): Fix 1.3359 + infinite loop bug. 1.3360 + 1.3361 + * include/freetype/ftstroke.h: Include FT_GLYPH_H. 1.3362 + (FT_Stroker_Rewind, FT_Glyph_Stroke, FT_Glyph_StrokeBorder): New 1.3363 + declarations. 1.3364 + 1.3365 + * src/base/ftstroke.c: Include FT_INTERNAL_OBJECTS_H. 1.3366 + (FT_Outline_GetOutsideBorder): Inverse result. 1.3367 + (FT_Stroker_Rewind, FT_Glyph_Stroke, FT_GlyphStrokeBorder): New 1.3368 + functions. 1.3369 + (FT_Stroker_EndSubPath): Close path if needed. 1.3370 + (FT_Stroker_Set, FT_Stroker_ParseOutline): Use FT_Stroker_Rewind. 1.3371 + 1.3372 + * include/freetype/cache/ftcmanag.h (FTC_ScalerRec, 1.3373 + FTC_Manager_LookupSize): Moved to... 1.3374 + * include/freetype/ftcache.h (FTC_ScalerRec, 1.3375 + FTC_Manager_LookupSize): Here. 1.3376 + 1.3377 + * src/tools/docmaker/docbeauty.py: New file to beautify the 1.3378 + documentation comments (e.g., to convert them to single block border 1.3379 + mode). 1.3380 + * src/tools/docmaker/docmaker.py (file_exists, make_file_list): 1.3381 + Moved to... 1.3382 + * src/tools/docmaker/utils.py (file_exists, make_file_list): Here. 1.3383 + 1.3384 +2004-01-14 David Turner <david@freetype.org> 1.3385 + 1.3386 + * include/freetype/internal/ftmemory.h (FT_ARRAY_COPY, 1.3387 + FT_ARRAY_MOVE): New macros to make copying arrays easier. 1.3388 + Updated all relevant code to use them. 1.3389 + 1.3390 +2004-01-14 Werner Lemberg <wl@gnu.org> 1.3391 + 1.3392 + * src/cff/cffload.c (cff_font_load): Load charstrings_index earlier. 1.3393 + Use number of charstrings as argument to CFF_Load_FD_Select (as 1.3394 + documented in the CFF specs). 1.3395 + 1.3396 +2004-01-13 Graham Asher <graham.asher@btinternet.com> 1.3397 + 1.3398 + * src/pshinter/pshalgo.c (psh_glyph_init): Move assignment of 1.3399 + `glyph->memory' up to free arrays properly in case of failure. 1.3400 + 1.3401 +2004-01-10 Masatake YAMATO <jet@gyve.org> 1.3402 + 1.3403 + Make `FT_Get_CMap_Language_ID' work with CFF. Bug reported by 1.3404 + Steve Hartwell <shspamsink@comcast.net>. 1.3405 + 1.3406 + * src/cff/cffdrivr.c: Include FT_SERVICE_TT_CMAP_H. 1.3407 + (cff_services): Added an entry for FT_SERVICE_ID_TT_CMAP. 1.3408 + (cff_get_cmap_info): New function. 1.3409 + (cff_service_get_cmap_info) New entry for cff_services. 1.3410 + 1.3411 + * src/sfnt/ttcmap0.c: Exit loop after a format match has been found. 1.3412 + Suggested by Steve Hartwell <shspamsink@comcast.net>. 1.3413 + 1.3414 +2004-01-03 Masatake YAMATO <jet@gyve.org> 1.3415 + 1.3416 + * src/base/ftobjs.c (destroy_charmaps): New function. 1.3417 + (destroy_face, open_face): Use `destroy_charmaps'. 1.3418 + 1.3419 +2004-01-01 Werner Lemberg <wl@gnu.org> 1.3420 + 1.3421 + * docs/CHANGES: Updated. 1.3422 + 1.3423 +2004-01-01 Michael Jansson <mjan@em2-solutions.com> 1.3424 + 1.3425 + * src/winfonts/winfnt.c (FNT_Size_Set_Pixels): Fix sign of 1.3426 + size->metrics.descender. 1.3427 + 1.3428 +2003-12-31 Wolfgang Domröse <porthos.domroese@harz.de> 1.3429 + 1.3430 + * src/cff/cffgload.c (cff_decoder_parse_charstrings) 1.3431 + [FT_DEBUG_LEVEL_TRACE]: Use `%ld' in FT_TRACE4. 1.3432 + <cff_op_flex1>: Change type of dx and dy to FT_Pos and remove 1.3433 + cast for accessing arguments. 1.3434 + 1.3435 +2003-12-31 Werner Lemberg <wl@gnu.org> 1.3436 + 1.3437 + * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Revert previous 1.3438 + change. It's not necessary. 1.3439 + 1.3440 +2003-12-29 Smith Charles <smith.charles@free.fr> 1.3441 + 1.3442 + * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Handle `repeated 1.3443 + flags set' correctly. 1.3444 + 1.3445 +2003-12-29 Werner Lemberg <wl@gnu.org> 1.3446 + 1.3447 + * src/cff/cffobjs.c (cff_face_init): Fix memory leak by deallocating 1.3448 + `full' and `weight' properly. 1.3449 + * src/cff/cffgload.c (cff_decoder_parse_charstrings) 1.3450 + <cff_op_hintmask> [FT_DEBUG_LEVEL_TRACE]: Use `0x' as prefix for 1.3451 + tracing output. 1.3452 + 1.3453 +2003-12-26 Werner Lemberg <wl@gnu.org> 1.3454 + 1.3455 + * include/freetype/internal/sfnt.h (TT_Set_SBit_Strike_Func): 1.3456 + Use FT_UInt for ppem values. 1.3457 + * src/sfnt/ttsbit.c (tt_face_set_sbit_strike): Use FT_UInt for 1.3458 + ppem values. 1.3459 + * src/sfnt/ttsbit.h: Updated. 1.3460 + 1.3461 + * src/base/ftobjs.c (FT_Set_Pixel_Sizes): Don't allow ppem values 1.3462 + larger than -0FFFF. 1.3463 + 1.3464 +2003-12-25 Werner Lemberg <wl@gnu.org> 1.3465 + 1.3466 + * src/base/fttrigon.c, src/base/ftgloadr.c: Inlude 1.3467 + FT_INTERNAL_OBJECTS_H. 1.3468 + 1.3469 + * src/base/ftstroke.c (FT_Outline_GetInsideBorder, 1.3470 + FT_Outline_GetOutsideBorder): s/or/o/ to make it compile with 1.3471 + C++ compilers. 1.3472 + 1.3473 + * src/cache/ftcmru.c, include/freetype/cache/ftcmru.h: 1.3474 + s/select/selection/ to avoid compiler warning. 1.3475 + * src/cff/cffload.h: s/select/ftselect/ to avoid potential 1.3476 + compiler warning. 1.3477 + 1.3478 +2003-12-24 Werner Lemberg <wl@gnu.org> 1.3479 + 1.3480 + * src/cache/ftcsbits.c (FTC_SNode_Weight): 1.3481 + s/FTC_SBIT_ITEM_PER_NODE/FTC_SBIT_ITEMS_PER_NODE/. 1.3482 + 1.3483 +2003-12-24 David Turner <david@freetype.org> 1.3484 + 1.3485 + * Fixed compilation problems in the cache sub-system. 1.3486 + 1.3487 + * Partial updates to src/autofit. 1.3488 + 1.3489 + * Jamfile (FT2_COMPONENTS): Add autofit module. 1.3490 + 1.3491 +2003-12-23 Werner Lemberg <wl@gnu.org> 1.3492 + 1.3493 + * src/cff/cffgload.c (cff_lookup_glyph_by_stdcharcode): Handle 1.3494 + CID-keyed fonts. 1.3495 + 1.3496 +2003-12-23 David Turner <david@freetype.org> 1.3497 + 1.3498 + * include/freetype/internal/ftobjs.h (FT_PAD_FLOOR, FT_PAD_ROUND, 1.3499 + FT_PAD_CEIL, FT_PIX_FLOOR, FT_PIX_ROUND, FT_CEIL): New macros. They 1.3500 + are used to avoid compiler warnings with very pedantic compilers. 1.3501 + Note that `(x) & -64' causes a warning if (x) is not signed. Use 1.3502 + `(x) & ~63' instead! 1.3503 + Updated all related code. 1.3504 + 1.3505 + Add support for extraction of `inside' and `outside' borders. 1.3506 + 1.3507 + * src/base/ftstroke.c (FT_StrokerBorder): New enumeration. 1.3508 + (FT_Outline_GetInsideBorder, FT_Outline_GetOutsideBorder, 1.3509 + FT_Stroker_GetBorderCounts, FT_Stroker_ExportBorder): New functions. 1.3510 + (FT_StrokeBorderRec): New boolean member `valid'. 1.3511 + (ft_stroke_border_get_counts): Updated. 1.3512 + * include/freetype/ftstroke.h: Updated. 1.3513 + 1.3514 +2003-12-22 Werner Lemberg <wl@gnu.org> 1.3515 + 1.3516 + * include/freetype/ftwinfnt.h (FT_WinFNT_ID_*): New definitions 1.3517 + to describe the `charset' field in FT_WinFNT_HeaderRec. 1.3518 + * src/winfonts/winfnt.c (FNT_Face_Init): Set encoding to 1.3519 + FT_ENCODING_NONE except for FT_WinFNT_ID_MAC. 1.3520 + 1.3521 + * include/freetype/freetype.h (FT_Encoding): Improve comment, 1.3522 + based on work by Detlef Würkner <TetiSoft@apg.lahn.de>. 1.3523 + 1.3524 + * docs/CHANGES: Updated. 1.3525 + 1.3526 +2003-12-22 David Turner <david@freetype.org> 1.3527 + 1.3528 + * include/freetype/ftcache.h, 1.3529 + include/freetype/cache/ftcmanag.h, 1.3530 + include/freetype/cache/ftccache.h, 1.3531 + include/freetype/cache/ftcmanag.h, 1.3532 + include/freetype/cache/ftcmru.h (added), 1.3533 + include/freetype/cache/ftlru.h (removed), 1.3534 + include/freetype/cache/ftcsbits.h, 1.3535 + include/freetype/cache/ftcimage.h, 1.3536 + include/freetype/cache/ftcglyph.h, 1.3537 + src/cache/ftcmru.c, 1.3538 + src/cache/ftcmanag.c, 1.3539 + src/cache/ftccache.c, 1.3540 + src/cache/ftcglyph.c, 1.3541 + src/cache/ftcimage.c, 1.3542 + src/cache/ftcsbits.c, 1.3543 + src/cache/ftccmap.c, 1.3544 + src/cache/ftcbasic.c (added), 1.3545 + src/cache/ftclru.c (removed): 1.3546 + 1.3547 + *Complete* rewrite of the cache sub-system to `solve' the 1.3548 + following points: 1.3549 + 1.3550 + - all public APIs have been moved to FT_CACHE_H, everything 1.3551 + under `include/freetype/cache' is only needed by client 1.3552 + applications that want to implement their own caches 1.3553 + 1.3554 + - a new function named FTC_Manager_RemoveFaceID to deal 1.3555 + with the uninstallation of FaceIDs 1.3556 + 1.3557 + - the image and sbit cache are now abstract classes, that 1.3558 + can be extended much more easily by client applications 1.3559 + 1.3560 + - better performance in certain areas. Further optimizations 1.3561 + to come shortly anyway... 1.3562 + 1.3563 + - the FTC_CMapCache_Lookup function has changed its signature, 1.3564 + charmaps can now only be retrieved by index 1.3565 + 1.3566 + - FTC_Manager_Lookup_Face => FTC_Manager_LookupFace 1.3567 + FTC_Manager_Lookup_Size => FTC_Manager_LookupSize (still in 1.3568 + private header for the moment) 1.3569 + 1.3570 +2003-12-21 Werner Lemberg <wl@gnu.org> 1.3571 + 1.3572 + * src/type1/t1load.c (parse_dict): Stop parsing if `eexec' keyword 1.3573 + is encountered. 1.3574 + 1.3575 +2003-12-19 Werner Lemberg <wl@gnu.org> 1.3576 + 1.3577 + * src/cff/cfftypes.h (CFF_MAX_CID_FONTS): Increase to 32. For 1.3578 + example, the Japanese Hiragino font already contains 15 subfonts. 1.3579 + 1.3580 + * src/cff/cffload.c (cff_font_load): Deallocate `sids' array for 1.3581 + CID-keyed fonts. 1.3582 + 1.3583 + * devel/ftoption.h: Define FT_DEBUG_MEMORY. 1.3584 + 1.3585 +2003-12-18 Werner Lemberg <wl@gnu.org> 1.3586 + 1.3587 + * include/freetype/ttnameid.h (TT_ADOBE_ID_LATIN_1): New macro. 1.3588 + * src/type1/t1objs.c (T1_Face_Init): Use TT_ADOBE_ID* values. 1.3589 + 1.3590 +2003-12-18 Werner Lemberg <wl@gnu.org> 1.3591 + 1.3592 + * src/cff/cfftypes.h (CFF_FontRecDictRec): Change type of 1.3593 + `cid_count' to `FT_ULong'. 1.3594 + 1.3595 + * src/cff/cffgload.c (cff_slot_load): Take care of empty `cids' 1.3596 + array. 1.3597 + 1.3598 + * src/cff/cffload.c (cff_charset_done): Free `cids' array. 1.3599 + (cff_font_load): Create cids array only for CID-keyed fonts which 1.3600 + are subsetted. 1.3601 + 1.3602 + * src/cff/cffobjs.c (cff_face_init): Check the availability of 1.3603 + the PSNames modules for non-pure CFFs also. 1.3604 + Set FT_FACE_FLAG_GLYPH_NAMES for a non-pure CFF also if it isn't 1.3605 + CID-keyed. 1.3606 + 1.3607 + * src/cff/rules.mk (CFF_DRV_H): Add cfftypes.h. 1.3608 + 1.3609 +2003-12-17 Werner Lemberg <wl@gnu.org> 1.3610 + 1.3611 + * src/sfnt/sfobjs.c (sfnt_init_face): Don't set 1.3612 + FT_FACE_FLAG_GLYPH_NAMES if the font contains a version 3.0 `post' 1.3613 + table. 1.3614 + 1.3615 + * docs/CHANGES: Updated. 1.3616 + 1.3617 +2003-12-17 Masatake YAMATO <jet@gyve.org> 1.3618 + 1.3619 + Add new function FT_Get_CMap_Language_ID to extract the language ID 1.3620 + for TrueType/sfnt fonts. 1.3621 + 1.3622 + * include/freetype/internal/services/svttcmap.h: New file. 1.3623 + * include/freetype/internal/ftserv.h (FT_SERVICE_TT_CMAP_H): Add 1.3624 + svttcmap.h. 1.3625 + 1.3626 + * src/sfnt/sfdriver.c: Include ttcmap0.h. 1.3627 + (tt_service_get_cmap_info): New service. 1.3628 + (sfnt_services): Updated. 1.3629 + 1.3630 + * src/sfnt/ttcmap0.c (tt_cmap*_get_info): New functions. 1.3631 + (tt_cmap*_class_rec): Add tt_cmap*_get_info members. 1.3632 + (tt_get_cmap_info): New function. 1.3633 + * src/sfnt/ttcmap0.h: Include FT_SERVICE_TT_CMAP_H. 1.3634 + (TT_CMap_ClassRec): New field `get_cmap_info'. 1.3635 + (tt_get_cmap_info): New declaration. 1.3636 + 1.3637 + * src/base/ftobjs.c: Include FT_SERVICE_TT_CMAP_H. 1.3638 + (FT_Get_CMap_Language_ID): New function implementation. 1.3639 + * include/freetype/tttables.h (FT_Get_CMap_Language_ID): New 1.3640 + function declaration. 1.3641 + 1.3642 +2003-12-16 Werner Lemberg <wl@gnu.org> 1.3643 + 1.3644 + * src/sfnt/ttcmap.c, src/sfnt/ttcmap.h: Removed. Obsolete. 1.3645 + 1.3646 + * include/freetype/internal/sfnt.h (SFNT_Interface): Remove 1.3647 + obsolete fields `load_charmap' and `free_charmap'. 1.3648 + (TT_CharMap_Load_Func, TT_CharMap_Free_Func): Removed. 1.3649 + * src/sfnt/sfnt.c: Don't include ttcmap.c. 1.3650 + * src/sfnt/rules.mk (SFNT_DRV_SRC): Don't include ttcmap.c. 1.3651 + * src/sfnt/ttload.c: Don't include ttcmap.h. 1.3652 + * src/sfnt/sfdriver.c: Don't include ttcmap.h. 1.3653 + (sfnt_interface): Updated. 1.3654 + 1.3655 + * include/freetype/internal/tttypes.h (TT_TableDirRec, 1.3656 + TT_CMapDirRec, TT_CMapDirEntryRec, TT_CMap0, TT_CMap2SubHeaderRec, 1.3657 + TT_CMap2Rec, TT_CMap4Segment, TT_CMap4Rec, TT_CMap6, 1.3658 + TT_CMapGroupRec, TT_CMap8_12Rec, TT_CMap10Rec, TT_CharMap_Func, 1.3659 + TT_CharNext_Func, TT_CMapTableRec, TT_CharMapRec): Removed. 1.3660 + Obsolete. 1.3661 + * src/cff/cffobjs.h (CFF_CharMapRec): Removed. Obsolete. 1.3662 + 1.3663 +2003-12-15 Werner Lemberg <wl@gnu.org> 1.3664 + 1.3665 + * docs/CHANGES: Updated. 1.3666 + 1.3667 +2003-12-15 Wolfgang Domröse <porthos.domroese@harz.de> 1.3668 + 1.3669 + * builds/atari/*: New directory for building FreeType 2 on Atari 1.3670 + with the PureC compiler. 1.3671 + 1.3672 +2003-12-12 Wolfgang Domröse <porthos.domroese@harz.de> 1.3673 + 1.3674 + * src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String): Add 1.3675 + cast. 1.3676 + * src/cff/cffdrivr.c (cff_ps_has_glyph_names): Assure that return 1.3677 + value is either 0 or 1. 1.3678 + 1.3679 +2003-12-12 Werner Lemberg <wl@gnu.org> 1.3680 + 1.3681 + * src/cff/cffdrivr.c (cff_get_glyph_name): Improve error message. 1.3682 + (cff_get_name_index): Return if no PSNames service is available. 1.3683 + (cff_ps_has_glyph_names): Handle CID-keyed fonts correctly. 1.3684 + * src/cff/cfftypes.h (CFF_CharsetRec): New field `cids', used for 1.3685 + CID-keyed fonts. This is the inverse mapping of `sids'. 1.3686 + * src/cff/cffload.c (cff_charset_load): New argument `invert'. 1.3687 + Initialize charset->cids if `invert' is set. 1.3688 + (cff_font_load): In call to cff_charset_load, set `invert' to true 1.3689 + for CID-keyed fonts. 1.3690 + * src/cff/cffgload.c (cff_slot_load): Handle glyph index as CID 1.3691 + and map it to the real glyph index. 1.3692 + 1.3693 + * docs/CHANGES: Updated. 1.3694 + 1.3695 +2003-12-11 Werner Lemberg <wl@gnu.org> 1.3696 + 1.3697 + * src/cff/cffobjs.c (cff_face_init): Don't set 1.3698 + FT_FACE_FLAG_GLYPH_NAMES for CID-keyed fonts. 1.3699 + Don't construct a cmap for CID-keyed fonts. 1.3700 + 1.3701 +2003-12-10 Werner Lemberg <wl@gnu.org> 1.3702 + 1.3703 + Use implementation specific SID value 0xFFFF to indicate that 1.3704 + a dictionary element is missing. 1.3705 + 1.3706 + * src/cff/cffload.c (cff_subfont_load): Initialize all fields 1.3707 + which hold SIDs to 0xFFFF. 1.3708 + (cff_index_get_sid_string): Handle SID value 0xFFFF. 1.3709 + Handle case where `psnames' is zero. 1.3710 + (cff_font_load): Updated. 1.3711 + Don't load encoding for CID-keyed CFFs. 1.3712 + 1.3713 + * src/cff/cffobjs.c (cff_face_init): Updated. 1.3714 + Don't check for PSNames module if font is CID-keyed. 1.3715 + Compute style name properly (using the same algorithm as in the 1.3716 + CID driver). 1.3717 + Fix computation of style flags. 1.3718 + 1.3719 + * src/cff/cfftoken.h: Comment out handling of base_font_name. 1.3720 + Rename `postscript' field to `embedded_postscript' 1.3721 + * src/cff/cfftypes.h (CFF_FontRecDictRec): Remove `base_font_name' 1.3722 + and `postscript'. 1.3723 + 1.3724 +2003-12-10 Detlef Würkner <TetiSoft@apg.lahn.de> 1.3725 + 1.3726 + * src/pcf/pcfdrivr.c (pcf_get_charset_id): New function (a clone 1.3727 + of the similar BDF function). 1.3728 + (pcf_service_bdf): Use it. 1.3729 + 1.3730 +2003-12-09 Werner Lemberg <wl@gnu.org> 1.3731 + 1.3732 + * src/sfnt/sfobjs.c (sfnt_load_face): Set FT_FACE_FLAG_GLYPH_NAMES 1.3733 + only if a `post' table is present. 1.3734 + 1.3735 +2003-12-09 George Williams <gww@silcom.com> 1.3736 + 1.3737 + * src/base/ftobjs.c (load_mac_face): Recent versions of Linux 1.3738 + support Mac's HFS+ file system, thus enable code to read /rsrc on 1.3739 + non-Macintosh platforms also. 1.3740 + 1.3741 +2003-12-08 Werner Lemberg <wl@gnu.org> 1.3742 + 1.3743 + * include/freetype/internal/psaux.h (PS_TableRec): Change type 1.3744 + of `lengths' to FT_PtrDist. 1.3745 + (T1_DecoderRec): Change type of `subrs_len' to FT_PtrDist. 1.3746 + * include/freetype/internal/t1types.h (T1_FontRec): Change type 1.3747 + of `subrs_len' and `charstrings_len' to FT_PtrDist. 1.3748 + 1.3749 + * src/base/ftobjs.c (Mac_Read_POST_Resource): Replace `junk' 1.3750 + variable with better solution. 1.3751 + (IsMacResource): Remove unused variable `map_len'. 1.3752 + Replace `junk' variable with better solution. 1.3753 + (FT_Open_Face) [!FT_MACINTOSH]: Add conditional 1.3754 + FT_CONFIG_OPTION_MAC_FONTS. 1.3755 + 1.3756 +2003-12-08 Wolfgang Domröse <porthos.domroese@harz.de> 1.3757 + 1.3758 + * src/autohint/ahhint.c (ah_hinter_hint_edges, 1.3759 + ah_hinter_align_strong_points): Add some casts. 1.3760 + 1.3761 + * src/base/ftoutln.c (FT_OrientationExtremumRec): Change type 1.3762 + of `pos' to FT_Long. 1.3763 + 1.3764 + * src/base/ftobjs.c (Mac_Read_POST_Resource, 1.3765 + Mac_Read_sfnt_Resource): Change type of `len' to FT_Long. 1.3766 + 1.3767 + * src/type42/t42parse.c (t42_parse_dict): Add cast for `n_keywords'. 1.3768 + 1.3769 +2003-12-07 Werner Lemberg <wl@gnu.org> 1.3770 + 1.3771 + * docs/raster.txt: New file, taken from FreeType 1 and completely 1.3772 + revised. 1.3773 + 1.3774 +2003-12-04 Masatake YAMATO <jet@gyve.org> 1.3775 + 1.3776 + * src/type1/t1driver.c (Get_Interface): Remove FT_UNUSED for 1.3777 + t1_interface. t1_interface is used. 1.3778 + 1.3779 +2003-11-27 David Turner <david@freetype.org> 1.3780 + 1.3781 + * src/pfr/pfrdrivr.c (pfr_get_metrics): Revert incorrect change of 1.3782 + 2003-11-23: For PFR fonts, metrics->x_scale and metrics->y_scale are 1.3783 + the scaling values for outline units, not for metric units. 1.3784 + 1.3785 +2003-11-25 Werner Lemberg <wl@gnu.org> 1.3786 + 1.3787 + * src/base/ftcalc.c, include/freetype/internal/ftcalc.h 1.3788 + (FT_MulDiv_No_Round): Surround code with `#ifdef 1.3789 + TT_CONFIG_OPTION_BYTECODE_INTERPRETER ... #endif'. 1.3790 + 1.3791 +2003-11-23 Werner Lemberg <wl@gnu.org> 1.3792 + 1.3793 + * src/base/ftcalc.c (FT_MulDiv_No_Round): New function (32 and 1.3794 + 64 bit version). 1.3795 + * include/freetype/internal/ftcalc.h: Updated. 1.3796 + 1.3797 + * src/truetype/ttinterp.c (TT_MULDIV_NO_ROUND): New macro. 1.3798 + (TT_INT64): Removed. 1.3799 + (DO_DIV): Use TT_MULDIV_NO_ROUND. 1.3800 + 1.3801 + * src/pfr/pfrdrivr.c (pfr_get_metrics): Directly use 1.3802 + metrics->x_scale and metrics->y_scale. 1.3803 + 1.3804 +2003-11-22 Rogier van Dalen <R.C.van.Dalen@umail.leidenuniv.nl> 1.3805 + 1.3806 + * src/truetype/ttinterp.c (CUR_Func_move_orig): New macro. 1.3807 + (Direct_Move_Orig, Direct_Move_Orig_X, Direct_Move_Orig_Y): New 1.3808 + functions. Similar to Direct_Move, Direct_Move_X, and 1.3809 + Direct_Move_Y but without touching. 1.3810 + (Compute_Funcs): Use new functions. 1.3811 + 1.3812 + (Round_None, Round_To_Grid, Round_To_Half_Grid, Round_Down_To_Grid, 1.3813 + Round_Up_To_Grid, Round_To_Double_Grid, Round_Super, 1.3814 + Round_Super_45): Fix rounding of value zero. 1.3815 + 1.3816 + (DO_DIV): Don't use TT_MULDIV. 1.3817 + 1.3818 + (Ins_SHC): This instruction actually touches the points. 1.3819 + (Ins_MSIRP): Fix undocumented behaviour. 1.3820 + 1.3821 + * src/truetype/ttinterp.h (TT_ExecContextRec): Updated. 1.3822 + 1.3823 +2003-11-22 Werner Lemberg <wl@gnu.org> 1.3824 + 1.3825 + * docs/VERSION.DLL, docs/CHANGES: Updated. 1.3826 + 1.3827 + * src/base/ftobjs.c (FT_Set_Char_Size): Make metrics->x_scale and 1.3828 + metrics->y_scale really precise. 1.3829 + 1.3830 + (FT_Load_Glyph): Update computation of linearHoriAdvance and 1.3831 + linearVertAdvance. 1.3832 + 1.3833 + * src/truetype/ttinterp.c (Update_Max): Use FT_REALLOC. 1.3834 + 1.3835 +2003-11-22 David Turner <david@freetype.org> 1.3836 + 1.3837 + * src/autofit/*: More updates. 1.3838 + 1.3839 + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 8. 1.3840 + * builds/unix/configure.ac (version_info): Set to 9:6:3. 1.3841 + * README: Updated. 1.3842 + 1.3843 +2003-11-13 John A. Boyd Jr. <jaboydjr@netwalk.com> 1.3844 + 1.3845 + * src/bdf/bdfdrivr.c (bdf_interpret_style), src/pcf/pcfread.c 1.3846 + (pcf_interpret_style): Replace spaces with dashes in properties 1.3847 + SETWIDTH_NAME and ADD_STYLE_NAME to simplify parsing. 1.3848 + 1.3849 +2003-11-11 Werner Lemberg <wl@gnu.org> 1.3850 + 1.3851 + * docs/CHANGES: Updated. 1.3852 + 1.3853 +2003-11-11 John A. Boyd Jr. <jaboydjr@netwalk.com> 1.3854 + 1.3855 + Handle SETWIDTH_NAME and ADD_STYLE_NAME properties for BDF and PCF 1.3856 + fonts. 1.3857 + 1.3858 + * src/bdf/bdfdrivr.c (bdf_interpret_style): New auxiliary function. 1.3859 + (BDF_Face_Init): Don't handle style properties but call 1.3860 + bdf_interpret_style. 1.3861 + 1.3862 + * src/pcf/pcfread.c (pcf_interpret_style): New auxiliary function. 1.3863 + (pcf_load_font): Don't handle style properties but call 1.3864 + pcf_interpret_style. 1.3865 + 1.3866 +2003-11-07 Werner Lemberg <wl@gnu.org> 1.3867 + 1.3868 + 1.3869 + * Version 2.1.7 released. 1.3870 + ========================= 1.3871 + 1.3872 + 1.3873 + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 7. 1.3874 + 1.3875 + * builds/unix/ft2unix.h: Fix comments. 1.3876 + 1.3877 + * builds/unix/ftconfig.in: Synchronized with ANSI version. 1.3878 + Use `#undef' in templates as recommended in the autoconf 1.3879 + documentation. 1.3880 + Since real `#undef' lines don't survive during configuration, use 1.3881 + `/undef' instead; the postprocessing facility of the 1.3882 + AC_CONFIG_HEADERS autoconf macro converts them to `#undef'. 1.3883 + 1.3884 + * builds/unix/install.mk (install): Install Unix version of 1.3885 + `ftconfig.h'. 1.3886 + 1.3887 + * builds/unix/unix-cc.in (CFLAGS): Set FT_CONFIG_CONFIG_H macro 1.3888 + to include the correct `ftconfig.h' file. 1.3889 + 1.3890 + * builds/unix/ft-munmap.m4 (FT_MUNMAP_DECL): Removed. 1.3891 + (FT_MUNMAP_PARAM): Updated syntax to autoconf 2.59. 1.3892 + 1.3893 + * builds/unix/freetype2.m4: Updated syntax to autoconf 2.59. 1.3894 + 1.3895 + * builds/unix/configure.ac: Use AC_CONFIG_HEADERS instead of 1.3896 + AC_CONFIG_HEADER to create ftconfig.h, and use second argument 1.3897 + to replace `/undef' with `#undef'. 1.3898 + Don't use FT_MUNMAP_DECL but AC_CHECK_DECLS to check for munmap. 1.3899 + Use AS_HELP_STRING in AC_ARG_WITH. 1.3900 + Update syntax to autoconf 2.59. 1.3901 + 1.3902 + * builds/unix/ltmain.sh: Regenerated with `libtoolize --force 1.3903 + --copy' from libtool 1.5. 1.3904 + * builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from 1.3905 + automake 1.7.8. 1.3906 + * builds/unix/configure: Regenerated with autoconf 2.59. 1.3907 + * builds/unix/config.guess, builds/unix/config.sub: Updated from 1.3908 + `config' CVS module at subversions.gnu.org 1.3909 + * builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from 1.3910 + `texinfo' CVS module at subversions.gnu.org. 1.3911 + 1.3912 + * builds/vms/ftconfig.h: Synchronized with ANSI version. 1.3913 + 1.3914 + * docs/CUSTOMIZE: Fix documentation error. 1.3915 + * docs/CHANGES, docs/VERSION.DLL, docs/release: Updated. 1.3916 + 1.3917 + * builds/freetype.mk (refdoc): Updated --title. 1.3918 + 1.3919 +2003-11-07 David Turner <david@freetype.org> 1.3920 + 1.3921 + 1.3922 + * Version 2.1.6 released. 1.3923 + ========================= 1.3924 + 1.3925 + 1.3926 + * install: Removed. Obsolete. 1.3927 + 1.3928 +2003-11-04 Werner Lemberg <wl@gnu.org> 1.3929 + 1.3930 + * src/sfnt/sfdriver.c: Include FT_SERVICE_SFNT_H. 1.3931 + (sfnt_service_sfnt_table): New service. 1.3932 + (sfnt_services): Updated. 1.3933 + 1.3934 + * docs/license.txt: Reworded. 1.3935 + 1.3936 +2003-11-03 Werner Lemberg <wl@gnu.org> 1.3937 + 1.3938 + * include/freetype/*: Add a guard to all public header files which 1.3939 + load FT_FREETYPE_H to reject freetype.h from FreeType 1. 1.3940 + 1.3941 +2003-11-02 Patrick Welche <prlw1@newn.cam.ac.uk> 1.3942 + 1.3943 + * builds/unix/freetype2.m4, builds/unix/ft-munmap.m4: Protect 1.3944 + first argument of AC_DEFUN with brackets to avoid possible 1.3945 + expansion. 1.3946 + 1.3947 +2003-11-02 Werner Lemberg <wl@gnu.org> 1.3948 + 1.3949 + * include/freetype/cache/ftcglyph.h: Don't include stddef.h. 1.3950 + 1.3951 + * include/freetype/freetype.h: Fix check for ft2build.h. 1.3952 + 1.3953 +2003-11-01 Werner Lemberg <wl@gnu.org> 1.3954 + 1.3955 + * include/freetype/freetype.h: Check that ft2build.h has been 1.3956 + loaded first. 1.3957 + 1.3958 + * src/base/fttype1.c (FT_Get_PS_Font_Info): Fix incorrectly applied 1.3959 + patch. 1.3960 + 1.3961 +2003-10-31 Detlef Würkner <TetiSoft@apg.lahn.de> 1.3962 + 1.3963 + * src/base/fttype1.c (FT_Get_PS_Font_Info, FT_Has_PS_Glyph_Names): 1.3964 + Fix parameter order in calls to FT_FACE_FIND_SERVICE. 1.3965 + 1.3966 +2003-10-31 Werner Lemberg <wl@gnu.org> 1.3967 + 1.3968 + * include/freetype/internal/ftserv.h 1.3969 + (FT_SERVICE_POSTSCRIPT_NAMES_H): Removed. Unused. 1.3970 + 1.3971 + * src/type42/t42drivr.c (t42_services): Updated. 1.3972 + 1.3973 +2003-10-29 David Turner <david@freetype.org> 1.3974 + 1.3975 + * include/freetype/internal/bdftypes.h: Removed. Obsolete. 1.3976 + * src/base/ftbdf.c: Updated. 1.3977 + 1.3978 + * include/freetype/internal/cfftypes.h: Moved to... 1.3979 + * src/cff/cfftypes.h: This place since no other module needs to 1.3980 + know about those types. 1.3981 + 1.3982 + * include/freetype/internal/t42types.h: Moved to... 1.3983 + * src/type42/t42types.h: This place since no other module needs to 1.3984 + know about those types. 1.3985 + 1.3986 + * include/freetype/internal/services/svbdf.h: Include FT_BDF_H. 1.3987 + 1.3988 + * include/freetype/internal/services/svpsname.h: Renamed to... 1.3989 + * include/freetype/internal/services/svpscmap.h: This. 1.3990 + Updated `FT_Service_PsNames' -> `FT_Service_PsCMaps' and 1.3991 + `POSTSCRIPT_NAMES' -> `POSTSCRIPT_CMAPS' everywhere. 1.3992 + 1.3993 + * include/freetype/internal/services/svpsinfo.h: New file, providing 1.3994 + PostScript info service. 1.3995 + 1.3996 + * include/freetype/internal/ftserv.h (FT_SERVICE_POSTSCRIPT_CMAPS_H, 1.3997 + FT_SERVICE_POSTSCRIPT_INFO_H): New macros for svpscmap.h and 1.3998 + svpsinfo.h. 1.3999 + * include/freetype/internal/internal.h (FT_INTERNAL_TYPE42_TYPES_H, 1.4000 + FT_INTERNAL_CFF_TYPES_H, FT_INTERNAL_BDF_TYPES_H): Removed. 1.4001 + 1.4002 + * src/base/fttype1.c: Don't include FT_INTERNAL_TYPE1_TYPES_H and 1.4003 + FT_INTERNAL_TYPE42_TYPES_H but FT_INTERNAL_SERVICE_H and 1.4004 + FT_SERVICE_POSTSCRIPT_INFO_H. 1.4005 + (FT_Get_PS_Font_Info, FT_Has_PS_Glyph_Names): Use new 1.4006 + POSTSCRIPT_INFO service. 1.4007 + 1.4008 + * src/cff/cffdrivr.c: Include FT_SERVICE_POSTSCRIPT_INFO_H. 1.4009 + (cff_ps_has_glyph_names): New function. 1.4010 + (cff_service_ps_info): New service. 1.4011 + (cff_services): Updated. 1.4012 + 1.4013 + * src/cff/cffload.h, src/cff/cffobjs.h, src/cff/cffparse.h: Don't 1.4014 + include FT_INTERNAL_CFF_TYPES_H but cfftypes.h directly. 1.4015 + 1.4016 + * src/cif/cidriver.c: Include FT_SERVICE_POSTSCRIPT_INFO_H. 1.4017 + (cid_ps_get_font_info): New function. 1.4018 + (cid_service_ps_info): New service. 1.4019 + (cid_services): Updated. 1.4020 + 1.4021 + * src/type1/t1driver.c: Include FT_SERVICE_POSTSCRIPT_INFO_H. 1.4022 + (t1_ps_get_font_info, t1_ps_has_glyph_names): New functions. 1.4023 + (t1_service_ps_info): New service. 1.4024 + (t1_services): Updated. 1.4025 + 1.4026 + * src/type42/t42drivr.c: Include FT_SERVICE_POSTSCRIPT_INFO_H. 1.4027 + (t42_ps_get_font_info, t42_ps_has_glyph_names): New functions. 1.4028 + (t42_service_ps_info): New service. 1.4029 + 1.4030 + * src/type42/t42objs.h: Don't include FT_INTERNAL_TYPE42_TYPES_H 1.4031 + but t42types.h directly. 1.4032 + 1.4033 + * src/psnames/psmodule.c (psnames_interface, psnames_services): 1.4034 + Renamed to... 1.4035 + (pscmaps_interface, pscmaps_services): This. 1.4036 + Updated all users. 1.4037 + 1.4038 + 1.4039 + * src/gzip/infblock.c (inflate_blocks): Remove compiler warning. 1.4040 + 1.4041 +2003-10-22 Werner Lemberg <wl@gnu.org> 1.4042 + 1.4043 + * src/type1/t1load.c (parse_encoding): Handle `/Encoding [ ... ]'. 1.4044 + 1.4045 + * src/type1/t1parse.c (T1_Get_Private_Dict): Test whether `eexec' 1.4046 + is real. 1.4047 + 1.4048 + * src/type42/t42parse.c (t42_parse_encoding): Improve boundary 1.4049 + checking while parsing. 1.4050 + 1.4051 + * docs/CHANGES: Updated. 1.4052 + 1.4053 +2003-10-21 Josselin Mouette <joss@debian.org> 1.4054 + 1.4055 + * include/freetype/internal/t1types.h (T1_FontRec): `paint_type' 1.4056 + and `stroke_width' aren't pointers. 1.4057 + 1.4058 + * src/type42/t42objs.c (T42_Face_Done), src/type1/t1objs.c 1.4059 + (T1_Face_Done): Don't free `paint_type' and `stroke_width'. 1.4060 + 1.4061 +2003-10-20 Graham Asher <graham.asher@btinternet.com> 1.4062 + 1.4063 + * src/winfonts/winfnt.c (fnt_cmap_class): Fix position of `const'. 1.4064 + 1.4065 +2003-10-19 Werner Lemberg <wl@gnu.org> 1.4066 + 1.4067 + * src/autohint/ahhint.c (ah_hinter_load_glyph): Patch from 1.4068 + 2003-08-18 introduced a severe bug (FT_Render_Glyph was called 1.4069 + twice under some circumstances, causing strange results). This 1.4070 + is fixed now by clearing the FT_LOAD_RENDER bit of `load_flags'. 1.4071 + 1.4072 + * src/base/ftpfr.c (FT_Get_PFR_Metrics): Initialize `error'. 1.4073 + * src/psaux/psobjs.c (ps_tobytes): Initialize `n'. 1.4074 + * src/type42/t42parse.c (t42_parse_sfnts): Initialize `string_size'. 1.4075 + 1.4076 +2003-10-16 Werner Lemberg <wl@gnu.org> 1.4077 + 1.4078 + Completely revised Type 42 parser. It now handles both fonts 1.4079 + produced with ttftot42 (tested version 0.3.1) and 1.4080 + TrueTypeToType42.ps (tested version May 2001; it is necessary to 1.4081 + fix the broken header comment to be `%!PS-TrueTypeFont...'). 1.4082 + 1.4083 + * src/type42/t42objs.c (T42_GlyphSlot_Load): Change fourth 1.4084 + parameter to `FT_UInt'. 1.4085 + * src/type42/t42objs.h: Updated. 1.4086 + 1.4087 + * src/type42/t42parse.h (T42_ParserRec): Change type of `in_memory' 1.4088 + to FT_Bool. 1.4089 + (T42_Loader): Change type of `num_chars' and `num_glyphs' to 1.4090 + FT_UInt. 1.4091 + Add `swap_table' element. 1.4092 + * src/type42/t42parse.c (T42_KEYWORD_COUNT, T1_ToFixed, 1.4093 + T1_ToCoordArray, T1_ToTokenArray): Removed. 1.4094 + (T1_ToBytes): New macro. 1.4095 + (t42_is_alpha, t42_hexval): Removed. 1.4096 + (t42_is_space): Handle `\0'. 1.4097 + (t42_parse_encoding): Updated to use new PostScript parser routines 1.4098 + from psaux. 1.4099 + Handle `/Encoding [ ... ]' also. 1.4100 + (T42_Load_Status): New enumeration. 1.4101 + (t42_parse_sfnts): Updated to use new PostScript parser routines 1.4102 + from psaux. 1.4103 + (t42_parse_charstrings): Updated to use new PostScript parser 1.4104 + routines from psaux. 1.4105 + Handle `/CharStrings << ... >>' also. 1.4106 + Don't expect that /.notdef is the first element in dictionary. Copy 1.4107 + code from type1 module to handle this. 1.4108 + (t42_parse_dict): Updated to use new PostScript parser routines 1.4109 + from psaux. 1.4110 + Remove code for synthetic fonts (which can't occur in Type 42 1.4111 + fonts). 1.4112 + (t42_loader_done): Release `swap_table'. 1.4113 + 1.4114 + * src/psaux/psobjs.c (skip_string): Increase `cur' properly. 1.4115 + 1.4116 + * src/type1/t1load.c (parse_charstrings): Make test for `.notdef' 1.4117 + faster. 1.4118 + 1.4119 +2003-10-15 Graham Asher <graham.asher@btinternet.com> 1.4120 + 1.4121 + * src/autohint/ahglobal.c (blue_chars), src/winfonts/winfnt.c 1.4122 + (fnt_cmap_class_rec, fnt_cmap_class), src/bdf/bdflib.c (empty, 1.4123 + _num_bdf_properties), src/gzip/infutil.c (inflate_mask), 1.4124 + src/gzip/inffixed.h (fixed_bl, fixed_bd, fixed_tl, fixed_td), 1.4125 + src/gzip/inftrees.h (inflate_trees_fixed), srf/gzip/inftrees.c 1.4126 + (inflate_trees_fixed): Decorate with more `const' to avoid 1.4127 + writable global variables which are disallowed on ARM. 1.4128 + 1.4129 +2003-10-08 Werner Lemberg <wl@gnu.org> 1.4130 + 1.4131 + * src/type1/t1load.c (parse_font_matrix, parse_charstrings): Remove 1.4132 + code specially for synthetic fonts; this is handled elsewhere. 1.4133 + (parse_encoding): Remove code specially for synthetic fonts; this is 1.4134 + handled elsewhere. 1.4135 + Improve boundary checking while parsing. 1.4136 + (parse_dict): Improve boundary checking while parsing. 1.4137 + Use ft_memcmp to simplify code. 1.4138 + 1.4139 +2003-10-07 Werner Lemberg <wl@gnu.org> 1.4140 + 1.4141 + * src/type1/t1load.c (parse_subrs, parse_dict): Handle synthetic 1.4142 + fonts properly. 1.4143 + (parse_charstrings): Copy correct number of characters into 1.4144 + `name_table'. 1.4145 + 1.4146 +2003-10-06 Werner Lemberg <wl@gnu.org> 1.4147 + 1.4148 + Heavy modification of the PS parser to handle comments and strings 1.4149 + correctly. This doesn't slow down the loading of PS fonts 1.4150 + significantly since charstrings aren't affected. 1.4151 + 1.4152 + * include/freetype/config/ftstdlib.h (ft_xdigit): Renamed to... 1.4153 + (ft_isxdigit): This. Updated all callers. 1.4154 + (ft_isdigit): New alias to `isdigit'. 1.4155 + 1.4156 + * include/freetype/internal/psaux.h (PS_Parser_FuncsRec): Renamed 1.4157 + `skip_alpha' to `skip_PS_token'. 1.4158 + Add parameter to `to_bytes' and change some argument types. 1.4159 + 1.4160 + * src/psaux/psauxmod.c (ps_parser_funcs): Updated. 1.4161 + * src/psaux/psobjs.c (ft_char_table): New array to map character 1.4162 + codes (ASCII and EBCDIC) of digits to numbers. 1.4163 + (OP): New auxiliary macro holding either `>=' or `<' depending on 1.4164 + the character encoding. 1.4165 + (skip_comment): New function. 1.4166 + (skip_spaces): Use it. 1.4167 + (skip_alpha): Removed. 1.4168 + (skip_literal_string, skip_string): New functions. 1.4169 + (ps_parser_skip_PS_token): New function. This is a better 1.4170 + replacement of... 1.4171 + (ps_parser_skip_alpha): Removed. 1.4172 + (ps_parser_to_token, ps_parser_to_token_array): Updated. 1.4173 + (T1Radix): Rewritten, using `ft_char_table'. 1.4174 + (t1_toint): Renamed to... 1.4175 + (ps_toint): This. Update all callers. 1.4176 + Use `ft_char_table'. 1.4177 + (ps_tobytes): Add parameter to handle delimiters and change some 1.4178 + argument types. 1.4179 + Use `ft_char_table'. 1.4180 + (t1_tofixed): Renamed to... 1.4181 + (ps_tofixed): This. Update all callers. 1.4182 + Use `ft_char_table'. 1.4183 + (t1_tocoordarray): Renamed and updated to... 1.4184 + (ps_tocoordarray): This. Update all callers. 1.4185 + (t1_tofixedarray): Renamed and updated to... 1.4186 + (ps_tofixedarray): This. Update all callers. 1.4187 + (t1_tobool): Renamed to... 1.4188 + (ps_tobool): This. Update all callers. 1.4189 + (ps_parser_load_field): Updated. 1.4190 + (ps_parser_load_field_table): Use `T1_MAX_TABLE_ELEMENTS' 1.4191 + everywhere. 1.4192 + (ps_parser_to_int, ps_parser_to_fixed, ps_parser_to_coord_array, 1.4193 + ps_parser_to_fixed_array): Skip spaces. Updated. 1.4194 + (ps_parser_to_bytes): Add parameter to handle delimiters and change 1.4195 + some argument types. Updated. 1.4196 + * src/psaux/psobjs.h: Updated. 1.4197 + 1.4198 + * src/cid/cidload.c (cid_parse_dict): Updated. 1.4199 + * src/cid/cidparse.c (cid_parser_new): Check whether the `StartData' 1.4200 + token was really found. 1.4201 + * src/cid/cidparse.h (cid_parser_skip_alpha): Updated and renamed 1.4202 + to... 1.4203 + (cid_parser_skip_PS_token): This. 1.4204 + 1.4205 + * src/type1/t1parse.h (T1_ParserRec): Use `FT_Bool' for boolean 1.4206 + fields. 1.4207 + (T1_Skip_Alpha): Replaced with... 1.4208 + (T1_Skip_PS_Token): This new macro. 1.4209 + * src/type1/t1parse.c (hexa_value): Removed. 1.4210 + (T1_Get_Private_Dict): Use `ft_isxdigit' and 1.4211 + `psaux->ps_parser_funcs_to_bytes' for handling ASCII hexadecimal 1.4212 + encoding. 1.4213 + After decrypting, replace the four random bytes at the beginning 1.4214 + with whitespace. 1.4215 + * src/type1/t1load.c (t1_allocate_blend): Use proper error values. 1.4216 + (parser_blend_design_positions, parse_blend_design_map, 1.4217 + parse_weight_vector): Updated. 1.4218 + (is_space): Handle `\f' also. 1.4219 + (is_name_char): Removed. 1.4220 + (read_binary_data): Updated. 1.4221 + (parse_encoding): Use `ft_isdigit'. 1.4222 + Updated. 1.4223 + (parse_subrs): Updated. 1.4224 + (TABLE_EXTEND): New macro. 1.4225 + (parse_charstrings): Updated. 1.4226 + Provide a workaround for buggy fonts which have more entries in the 1.4227 + /CharStrings dictionary then expected; the function now adds some 1.4228 + slots and skips entries which still exceed the new limit. 1.4229 + (parse_dict): Updated. 1.4230 + Terminate on the token `closefile'. 1.4231 + 1.4232 + * src/type42/t42parse.c (T1_Skip_Alpha): Replaced with... 1.4233 + (T1_Skip_PS_Token): This new macro. Updated all callers. 1.4234 + (t42_parse_encoding): Use `ft_isdigit'. 1.4235 + 1.4236 + 1.4237 + * src/base/ftmm.c (ft_face_get_mm_service): Return FT_Err_OK if 1.4238 + success. 1.4239 + 1.4240 +2003-10-05 Werner Lemberg <wl@gnu.org> 1.4241 + 1.4242 + * include/freetype/ftmodule.h: Renamed to... 1.4243 + * include/freetype/ftmodapi.h: This to avoid duplicate file names. 1.4244 + * include/freetype/config/ftheader.h (FT_MODULE_H): Updated. 1.4245 + 1.4246 +2003-10-04 Werner Lemberg <wl@gnu.org> 1.4247 + 1.4248 + * src/base/ftoutln.c (FT_OrientationExtremumRec, 1.4249 + FT_Outline_Get_Orientation): Trivial typo fixes to make it compile. 1.4250 + 1.4251 +2003-10-02 Markus F.X.J. Oberhumer <markus@oberhumer.com> 1.4252 + 1.4253 + * src/winfonts/winfnt.c (FT_WinFNT_HeaderRec): `color_table_offset' 1.4254 + has four bytes, not two. 1.4255 + Fix all users. 1.4256 + (fnt_font_load, FNT_Load_Glyph): Add more font validity tests. 1.4257 + 1.4258 +2003-10-01 David Turner <david@freetype.org> 1.4259 + 1.4260 + * src/autofit/*: Adding first source files of the new multi-script 1.4261 + `auto-fitter'. 1.4262 + 1.4263 + * include/freetype/ftoutln.h (FT_Orientation): New enumeration. 1.4264 + (FT_Outline_Get_Orientation): New declaration. 1.4265 + 1.4266 + * src/base/ftoutln.c (FT_OrientationExtremumRec): New structure. 1.4267 + (ft_orientation_extremum_compute): New auxiliary function. 1.4268 + (FT_Outline_Get_Orientation): New function to compute the fill 1.4269 + orientation of a given glyph outline. 1.4270 + 1.4271 + * include/freetype/internal/ftserv.h (FT_FACE_LOOKUP_SERVICE): Fixed 1.4272 + trivial bug which could crash the font engine when a cached service 1.4273 + pointer was retrieved. 1.4274 + 1.4275 +2003-09-30 Werner Lemberg <wl@gnu.org> 1.4276 + 1.4277 + * src/cid/cidload.c (cid_parse_dict): Skip token if no keyword is 1.4278 + found. 1.4279 + 1.4280 + * src/type1/t1parse.c (IS_T1_WHITESPACE, IS_T1_LINESPACE, 1.4281 + IS_T1_SPACE): Removed. 1.4282 + (PFB_Tag): Removed. 1.4283 + (read_pfb_tag): Don't use PFB_Tag. 1.4284 + 1.4285 + * src/type42/t42parse.c (t42_is_space): Handle `\f' also. 1.4286 + (t42_parse_encoding): Handle synthetic fonts. 1.4287 + 1.4288 +2003-09-29 Werner Lemberg <wl@gnu.org> 1.4289 + 1.4290 + * include/freetype/internal/t1types.h: Don't include 1.4291 + FT_INTERNAL_OBJECTS_H but FT_INTERNAL_SERVICE_H. 1.4292 + * src/truetype/ttobjs.c: Don't include 1.4293 + FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4294 + 1.4295 +2003-09-29 David Turner <david@freetype.org> 1.4296 + 1.4297 + Added new service to handle glyph name dictionaries, replacing the 1.4298 + old internal header named `psnames.h' by `services/svpsname.h'. 1.4299 + Note that this is different from `services/svpostnm.h' which only 1.4300 + handles the retrieval of PostScript font names for a given face. 1.4301 + (Should we merge these two services into a single header?) 1.4302 + 1.4303 + * include/freetype/internal/psnames.h: Removed. Most of its 1.4304 + contents is moved to... 1.4305 + * include/freetype/internal/services/svpsname.h: New file. 1.4306 + 1.4307 + * include/freetype/internal/services/svpostnm.h 1.4308 + (FT_SERVICE_ID_POSTSCRIPT_NAME): Replaced with... 1.4309 + (FT_SERVICE_ID_POSTSCRIPT_FONT_NAME): New macro. 1.4310 + (PsName): Service named changed to... 1.4311 + (PsFontName): This. 1.4312 + Updated `FT_Service_PsName' -> `FT_Service_PsFontName' and 1.4313 + `POSTSCRIPT_NAME' -> `POSTSCRIPT_FONT_NAME' everywhere. 1.4314 + 1.4315 + * include/freetype/internal/internal.h 1.4316 + (FT_INTERNAL_POSTSCRIPT_NAMES_H): Removed. 1.4317 + * include/freetype/internal/psaux.h: Include 1.4318 + FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4319 + (T1_DecoderRec): Updated type of `psnames'. 1.4320 + * include/freetype/internal/t1types.h: Don't include 1.4321 + FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4322 + Include FT_INTERNAL_OBJECTS_H. 1.4323 + * include/freetype/internal/t42types.h: Don't include 1.4324 + FT_INTERNAL_POSTSCRIPT_NAMES_H. 1.4325 + * include/freetype/internal/tttypes.h (TT_FaceRec): Updated. 1.4326 + 1.4327 + * include/freetype/internal/ftserv.h (FT_FACE_FIND_SERVICE): Changed 1.4328 + order of parameters. All callers updated. 1.4329 + (FT_FACE_FIND_GLOBAL_SERVICE): New macro to look up a service 1.4330 + globally, checking all modules. 1.4331 + (FT_ServiceCacheRec): Updated. 1.4332 + (FT_SERVICE_POSTSCRIPT_NAMES_H): New macro for accessing 1.4333 + `svpsname.h'. 1.4334 + 1.4335 + * include/freetype/internal/ftobjs.h, src/base/ftobjs.c 1.4336 + (ft_module_get_service): New function. 1.4337 + 1.4338 + * src/cff/cffdrivr.c: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H 1.4339 + but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4340 + (cff_get_glyph_name, cff_get_name_index): Use new POSTSCRIPT_NAMES 1.4341 + service. 1.4342 + * src/cff/cffcmap.c (cff_cmap_unicode_init): Updated. 1.4343 + * src/cff/cffload.c, src/cff/cffload.h: Don't include 1.4344 + FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4345 + (cff_index_get_sid_string): Updated. 1.4346 + * src/cff/cffobjs.c: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H 1.4347 + but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4348 + (cff_face_init): Use new POSTSCRIPT_NAMES service. 1.4349 + * src/cff/cffobjs.h: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H 1.4350 + but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4351 + 1.4352 + * src/cid/cidobjs.c: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H 1.4353 + but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4354 + (cid_face_init): Use new POSTSCRIPT_NAMES service. 1.4355 + * src/cid/cidriver.c: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H. 1.4356 + 1.4357 + * src/psaux/t1cmap.c (t1_cmap_std_init, t1_cmap_unicode_init): Use 1.4358 + new POSTSCRIPT_NAMES service. 1.4359 + * src/psaux/t1decode.h (t1_lookup_glyph_by_stdcharcode, 1.4360 + t1_decode_init): Use new POSTSCRIPT_NAMES service. 1.4361 + * src/psaux/t1cmap.h, src/psaux/t1decode.h: Dont' include 1.4362 + FT_INTERNAL_POSTSCRIPT_NAMES_H. 1.4363 + 1.4364 + * src/psnames/psmodule.c: Don't include 1.4365 + FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4366 + (ps_build_unicode_table): Renamed to... 1.4367 + (ps_unicodes_init): This. 1.4368 + (ps_lookup_unicode): Renamed to... 1.4369 + (ps_unicodes_char_index): This. 1.4370 + (ps_next_unicode): Renamed to... 1.4371 + (ps_unicodes_char_next): This. 1.4372 + (psnames_interface): Updated. 1.4373 + (psnames_services): New services list. 1.4374 + (psnames_get_service): New function. 1.4375 + (psnames_module_class): Updated. 1.4376 + 1.4377 + * src/sfnt/sfobjs.c: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H 1.4378 + but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4379 + (sfnt_init_face): Use new POSTSCRIPT_NAMES service. 1.4380 + * src/sfnt/ttpost.c: Don't include FT_INTERNAL_POSTSCRIPT_NAMES_H 1.4381 + but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4382 + (tt_face_get_ps_name): Updated. 1.4383 + 1.4384 + * src/truetype/ttobjs.c: Don't include 1.4385 + FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4386 + 1.4387 + * src/type1/t1driver.c: Don't include 1.4388 + FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4389 + * src/type1/t1objs.c: Don't include 1.4390 + FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4391 + (T1_Face_Init): Use new POSTSCRIPT_NAMES service. 1.4392 + 1.4393 + * src/type42/t42drivr.c (t42_get_ps_name): Renamed to... 1.4394 + (t42_get_ps_font_name): This. 1.4395 + (t42_service_ps_name): Renamed to... 1.4396 + (t42_service_ps_font_name): This. 1.4397 + (t42_services): Updated. 1.4398 + * src/type42/t42objs.c (T42_Face_Init): Use new POSTSCRIPT_NAMES 1.4399 + service. 1.4400 + * src/type42/t42objs.h: Don't include 1.4401 + FT_INTERNAL_POSTSCRIPT_NAMES_H but FT_SERVICE_POSTSCRIPT_NAMES_H. 1.4402 + 1.4403 + 1.4404 + * src/base/ftglyph.c (FT_Get_Glyph): Don't access `slot' before 1.4405 + testing its validity. Reported by Henry Maddocks 1.4406 + <maddocks@metservice.com>. 1.4407 + 1.4408 +2003-09-21 Werner Lemberg <wl@gnu.org> 1.4409 + 1.4410 + * include/freetype/internal/ftserv.h (FT_FACE_FIND_SERVICE): 1.4411 + Fix compilation warning (s/pptr/Pptr/). 1.4412 + 1.4413 + * include/freetype/internal/internal.h (FT_INTERNAL_PFR_H, 1.4414 + FT_INTERNAL_FNT_TYPES_H): Removed. 1.4415 + 1.4416 +2003-09-21 David Turner <david@freetype.org> 1.4417 + 1.4418 + Migrating the PFR and WINFNT drivers to the new service-based 1.4419 + internal API. 1.4420 + 1.4421 + * include/freetype/internal/fnttypes.h: Removed. Most of its data 1.4422 + are moved to winfnt.h and... 1.4423 + * include/freetype/internal/services/svwinfnt.h: New file. 1.4424 + 1.4425 + * include/freetype/internal/pfr.h: Removed. Most of its data are 1.4426 + moved to... 1.4427 + * include/freetype/internal/services/svpfr.h: New file. 1.4428 + 1.4429 + * include/freetype/internal/ftserv.h (FT_FACE_FIND_SERVICE, 1.4430 + FT_FACE_LOOKUP_SERVICE): Simplify fix of 2003-09-16 by removing 1.4431 + pointer type argument. 1.4432 + Updated all callers. 1.4433 + Update macro names of services header files. 1.4434 + 1.4435 + * src/base/ftobjs.c (FT_Get_Name_Index): Simplified code. 1.4436 + 1.4437 + * src/base/ftpfr.c: Include FT_SERVICE_PFR_H instead of 1.4438 + FT_INTERNAL_PFR_H. 1.4439 + (ft_pfr_check, FT_Get_PFR_Metrics, FT_Get_PFR_Kerning, 1.4440 + FT_Get_PFR_Advance): Use services provided in `PFR_METRICS'. 1.4441 + 1.4442 + * src/base/ftwinfnt.c: Include FT_SERVICE_WINFNT_H instead of 1.4443 + FT_INTERNAL_FNT_TYPES_H. 1.4444 + (FT_Get_WinFNT_Header): Use service provided in `WINFNT'. 1.4445 + 1.4446 + * src/pfr/pfrdrivr.c: Include FT_SERVICE_PFR_H and 1.4447 + FT_SERVICE_XFREE86_NAME_H instead of FT_INTERNAL_PFR_H. 1.4448 + (pfr_service_bdf): Updated. 1.4449 + (pfr_services): New services list. 1.4450 + (pfr_get_service): New function. 1.4451 + (pfr_driver_class): Updated. 1.4452 + 1.4453 + * src/winfonts/winfnt.c: Include FT_SERVICE_WINFNT_H and 1.4454 + FT_SERVICE_XFREE86_NAME_H instead of FT_INTERNAL_FNT_TYPES_H. 1.4455 + (winfnt_get_header, winfnt_get_service): New functions. 1.4456 + (winfnt_service_rec): New structure providing WINFNT services. 1.4457 + (winfnt_services): New services list. 1.4458 + (winfnt_driver_class): Updated. 1.4459 + * src/winfonts/winfnt.h: Add most of the removed fnttypes.h data. 1.4460 + 1.4461 + * src/sfnt/sfdriver.c (sfnt_service_ps_name): Fix typo. 1.4462 + 1.4463 + * src/type1/t1driver.c (t1_service_ps_name): Fix typo. 1.4464 + 1.4465 + * src/cff/cffobjs.c, src/cid/cidobjs.c, src/pfr/pfrsbit.c, 1.4466 + src/psaux/psobjs.c, src/sfnt/sfobjs.c, src/truetype/ttobjs.c, 1.4467 + src/type1/t1objs.c, src/type42/t42objs.c: Removing various compiler 1.4468 + warnings. 1.4469 + 1.4470 +2003-09-19 David Bevan <dbevan@emtex.com> 1.4471 + 1.4472 + * src/type1/t1parse.c (pfb_tag_fields): Removed. 1.4473 + (read_pfb_tag): Fix code so that it doesn't fail on end-of-file 1.4474 + indicator (0x8003). 1.4475 + * docs/CHANGES: Updated. 1.4476 + 1.4477 +2003-09-16 Werner Lemberg <wl@gnu.org> 1.4478 + 1.4479 + * include/freetype/internal/ftserv.h (FT_FACE_FIND_SERVICE, 1.4480 + FT_FACE_LOOKUP_SERVICE): Add parameter to pass pointer type. 1.4481 + Ugly, I know, but this is needed for compilation with C++ -- 1.4482 + maybe someone knows a better solution? 1.4483 + Updated all callers. 1.4484 + 1.4485 + * src/base/ftobjs.c (FT_Get_Name_Index, FT_Get_Glyph_Name): Remove 1.4486 + C++ compiler warnings. 1.4487 + 1.4488 + * src/base/ftbdf.c (FT_Get_BDF_Charset_ID, FT_Get_BDF_Property): 1.4489 + Fix order of arguments passed to FT_FACE_FIND_SERVICE. 1.4490 + 1.4491 +2003-09-15 Werner Lemberg <wl@gnu.org> 1.4492 + 1.4493 + Avoid header files with identical names. 1.4494 + 1.4495 + * include/freetype/internal/services/bdf.h: Renamed to... 1.4496 + * include/freetype/internal/services/svbdf.h: This. 1.4497 + Add copyright notice. 1.4498 + * include/freetype/internal/services/glyfdict.h: Renamed to... 1.4499 + * include/freetype/internal/services/svgldict.h: This. 1.4500 + Add copyright notice. 1.4501 + * include/freetype/internal/services/multmast.h: Renamed to... 1.4502 + * include/freetype/internal/services/svmm.h: This. 1.4503 + Add copyright notice. 1.4504 + Add FT_BEGIN_HEADER and FT_END_HEADER. 1.4505 + * include/freetype/internal/services/sfnt.h: Renamed to... 1.4506 + * include/freetype/internal/services/svsfnt.h: This. 1.4507 + Add copyright notice. 1.4508 + * include/freetype/internal/services/postname.h: Renamed to... 1.4509 + * include/freetype/internal/services/svpostnm.h: This. 1.4510 + Add copyright notice. 1.4511 + * include/freetype/internal/services/xf86name.h: Renamed to... 1.4512 + * include/freetype/internal/services/svxf86nm.h: This. 1.4513 + Add copyright notice. 1.4514 + 1.4515 + * include/freetype/internal/ftserv.h: Add FT_BEGIN_HEADER and 1.4516 + FT_END_HEADER. 1.4517 + Add copyright notice. 1.4518 + Update macro names of services header files. 1.4519 + 1.4520 + * builds/freetype.mk (SERVICES_DIR): New variable. 1.4521 + (BASE_H): Add services header files. 1.4522 + 1.4523 +2003-09-11 Werner Lemberg <wl@gnu.org> 1.4524 + 1.4525 + * builds/toplevel.mk (distclean): Remove `builds/unix/freetype2.pc'. 1.4526 + 1.4527 + * src/cff/cffdrivr.c: Don't load headers twice. 1.4528 + 1.4529 + * include/freetype/internal/ftserv.h (FT_SERVICE_SFNT_H): New macro. 1.4530 + * src/base/ftobjs.c: Include FT_SERVICE_SFNT_H. 1.4531 + 1.4532 + * src/cff/cffcmap.c: Include `cfferrs.h'. 1.4533 + * src/pfr/pfrdrivr.c: Include `pfrerror.h'. 1.4534 + * src/sfnt/sfdriver.c: Include `sferrors.h'. 1.4535 + * src/psaux/psobjs.h: Add declaration for `ps_parser_to_bytes'. 1.4536 + 1.4537 +2003-09-11 David Turner <david@freetype.org> 1.4538 + 1.4539 + Introducing the concept of `module services'. This is the first 1.4540 + step towards a massive simplification of the engine's internals, in 1.4541 + order to get rid of various numbers of hacks. 1.4542 + 1.4543 + Note that these changes will break source & binary compatibility for 1.4544 + authors of external font drivers. 1.4545 + 1.4546 + * include/freetype/config/ftconfig.h (FT_BEGIN_STMNT, FT_END_STMNT, 1.4547 + FT_DUMMY_STMNT): New macros. 1.4548 + 1.4549 + * include/freetype/internal/ftserv.h: New file, containing the new 1.4550 + structures and macros to provide `services'. 1.4551 + 1.4552 + * include/freetype/internal/internal.h (FT_INTERNAL_EXTENSION_H, 1.4553 + FT_INTERNAL_EXTEND_H, FT_INTERNAL_HASH_H, FT_INTERNAL_OBJECT_H): 1.4554 + Removed, obsolete. 1.4555 + (FT_INTERNAL_SERVICE_H): New macro for `ftserv.h'. 1.4556 + 1.4557 + * include/freetype/internal/services/bdf.h, 1.4558 + include/freetype/internal/services/glyfdict.h, 1.4559 + include/freetype/internal/services/postname.h, 1.4560 + include/freetype/internal/services/xf86name.h: New files. 1.4561 + 1.4562 + * include/freetype/ftmm.h (FT_Get_MM_Func, FT_Set_MM_Design_Func, 1.4563 + FT_Set_MM_Blend_Func): Function pointers moved (in modified form) 1.4564 + to... 1.4565 + * include/freetype/internal/services/multmast.h: New file. 1.4566 + 1.4567 + * include/freetype/internal/sfnt.h (SFNT_Interface): `get_interface' 1.4568 + is now of type `FT_Module_Requester'. 1.4569 + (SFNT_Get_Interface_Func, SFNT_Load_Table_Func): Function pointers 1.4570 + moved (in modified form) to... 1.4571 + * include/freetype/internal/services/sfnt.h: New file. 1.4572 + 1.4573 + * include/freetype/tttables.h (FT_Get_Sfnt_Table_Func): Function 1.4574 + pointer moved (in modified form) to `services/sfnt.h'. 1.4575 + 1.4576 + * include/freetype/ftmodule.h (FT_Module_Interface): Make it a 1.4577 + a typedef to `FT_Pointer'. 1.4578 + 1.4579 + * include/freetype/internal/tttypes.h (TT_FaceRec): Add 1.4580 + `postscript_name'. 1.4581 + * include/freetype/internal/ftobjs.h (FT_Face_InternalRec): Remove 1.4582 + `postscript_name'. 1.4583 + Add `services' element. 1.4584 + (FT_LibraryRec): Remove `meta_class'. 1.4585 + 1.4586 + * src/base/ftbdf.c: Include FT_SERVICE_BDF_H. 1.4587 + (test_font_type): Removed. 1.4588 + (FT_Get_BDF_Charset_ID, FT_Get_BDF_Property): Use services 1.4589 + provided in `FT_SERVICE_ID_BDF'. 1.4590 + 1.4591 + * src/base/ftmm.c: Include FT_SERVICE_MULTIPLE_MASTERS_H. 1.4592 + (ft_face_get_mm_service): New auxiliary function to get services 1.4593 + from `FT_SERVICE_ID_MULTI_MASTERS'. 1.4594 + (FT_Get_Multi_Master, FT_Set_MM_Design_Coordinates, 1.4595 + FT_Set_MM_Blend_Coordinates): Use `ft_face_get_mm_service'. 1.4596 + 1.4597 + * src/base/ftobjs.c: Include FT_SERVICE_POSTSCRIPT_NAME_H and 1.4598 + FT_SERVICE_GLYPH_DICT_H. 1.4599 + (ft_service_list_lookup): New function to get a specific service. 1.4600 + (destroy_face): Updated. 1.4601 + (Mac_Read_POST_Resource): Simplify some code. 1.4602 + (IsMacResource): Fix warnings. 1.4603 + (FT_Get_Name_Index, FT_Get_Glyph_Name): Use services provided in 1.4604 + `FT_SERVICE_ID_GLYPH_DICT'. 1.4605 + (FT_Get_Postscript_Name): Use service provided in 1.4606 + `FT_SERVICE_ID_POSTSCRIPT_NAME'. 1.4607 + (FT_Get_Sfnt_Table, FT_Load_Sfnt_Table): Use services provided in 1.4608 + `FT_SERVICE_ID_SFNT_TABLE'. 1.4609 + 1.4610 + * src/base/ftxf86.c: Include FT_SERVICE_XFREE86_NAME_H. 1.4611 + (FT_Get_X11_Font_Format): Use service provided in 1.4612 + `FT_SERVICE_ID_XF86_NAME'. 1.4613 + 1.4614 + * src/bdf/bdfdrivr.c: Include FT_SERVICE_BDF_H and 1.4615 + FT_SERVICE_XFREE86_NAME_H. 1.4616 + (bdf_get_charset_id): New function. 1.4617 + (bdf_service_bdf): New structure providing BDF services. 1.4618 + (bdf_services): New services list. 1.4619 + (bdf_driver_requester): Use `ft_service_list_lookup'. 1.4620 + 1.4621 + * src/cff/cffdrivr.c: Include FT_SERVICE_XFREE86_NAME_H and 1.4622 + FT_SERVICE_GLYPH_DICT_H. 1.4623 + (cff_service_glyph_dict): New structure providing CFF services. 1.4624 + (cff_services): New services list. 1.4625 + (cff_get_interface): Use `ft_service_list_lookup'. 1.4626 + 1.4627 + * src/cid/cidriver.c: Include FT_SERVICE_POSTSCRIPT_NAME_H and 1.4628 + FT_SERVICE_XFREE86_NAME_H. 1.4629 + (cid_service_ps_name): New structure providing CID services. 1.4630 + (cid_services): New services list. 1.4631 + (cid_get_interface): Use `ft_service_list_lookup'. 1.4632 + 1.4633 + * src/pcf/pcfdrivr.c: Include FT_SERVICE_BDF_H and 1.4634 + FT_SERVICE_XFREE86_NAME_H. 1.4635 + (pcf_service_bdf): New structure providing PCF services. 1.4636 + (pcf_services): New services list. 1.4637 + (pcf_driver_requester): Use `ft_service_list_lookup'. 1.4638 + 1.4639 + * src/sfnt/sfdriver.c: Include FT_SERVICE_GLYPH_DICT_H and 1.4640 + FT_SERVICE_POSTSCRIPT_NAME_H. 1.4641 + (get_sfnt_glyph_name): Renamed to... 1.4642 + (sfnt_get_glyph_name): This. 1.4643 + (get_sfnt_postscript_name): Renamed to... 1.4644 + (sfnt_get_ps_name): This. 1.4645 + Updated. 1.4646 + (sfnt_service_glyph_dict, sfnt_service_ps_name): New structures 1.4647 + providing services. 1.4648 + (sfnt_services): New services list. 1.4649 + (sfnt_get_interface): Use `ft_service_list_lookup'. 1.4650 + 1.4651 + * src/truetype/ttdriver.c: Include FT_SERVICE_XFREE86_NAME_H. 1.4652 + (tt_services): New services list. 1.4653 + (tt_get_interface): Use `ft_service_list_lookup'. 1.4654 + 1.4655 + * src/type1/t1driver.c: Include FT_SERVICE_MULTIPLE_MASTERS_H, 1.4656 + FT_SERVICE_GLYPH_DICT_H, FT_SERVICE_XFREE86_NAME_H, and 1.4657 + FT_SERVICE_POSTSCRIPT_NAME_H. 1.4658 + (t1_service_glyph_dict, t1_service_ps_name, 1.4659 + t1_service_multi_masters): New structures providing Type 1 services. 1.4660 + (t1_services): New services list. 1.4661 + (Get_Interface): Use `ft_service_list_lookup'. 1.4662 + 1.4663 + * src/type42/t42drivr.c: Include FT_SERVICE_XFREE86_NAME_H, 1.4664 + FT_SERVICE_GLYPH_DICT_H, and FT_SERVICE_POSTSCRIPT_NAME_H. 1.4665 + (t42_service_glyph_dict, t42_service_ps_name): New strucures 1.4666 + providing Type 42 services. 1.4667 + (t42_services): New services list. 1.4668 + (T42_Get_Interface): Use `ft_service_list_lookup'. 1.4669 + 1.4670 + 1.4671 + * README, docs/CHANGES: Updating version numbers for 2.1.6, and 1.4672 + removing obsolete warnings in the documentation. 1.4673 + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 6. 1.4674 + * builds/unix/configure.ac (version_info): Set to 9:5:3. 1.4675 + * builds/unix/configure: Regenerated. 1.4676 + 1.4677 + * include/freetype/internal/ftcore.h, 1.4678 + include/freetype/internal/ftexcept.h, 1.4679 + include/freetype/internal/fthash.h, 1.4680 + include/freetype/internal/ftobject.h: Removed. Obsolete. 1.4681 + 1.4682 +2003-09-09 David Turner <david@freetype.org> 1.4683 + 1.4684 + Fixing PFR kerning support. The tables within the font file contain 1.4685 + (charcode,charcode) kerning pairs, we need to convert them to 1.4686 + (gindex,gindex). 1.4687 + 1.4688 + * src/base/ftpfr.c (ft_pfr_check): Fix serious typo. 1.4689 + * src/pfr/prfload.c: Remove dead code. 1.4690 + (pfr_get_gindex, pfr_compare_kern_pairs, pfr_sort_kerning_pairs): 1.4691 + New functions. 1.4692 + (pfr_phy_font_done): Free `kern_pairs'. 1.4693 + (pfr_phy_font_load): Call `pfr_sort_kerning_pairs'. 1.4694 + * src/pfr/pfrobjs.c (pfr_face_get_kerning): Fix kerning extraction. 1.4695 + * src/pfr/pfrtypes.h (PFR_KERN_PAIR_INDEX): New macro. 1.4696 + (PFR_KernPairRec): Make `kerning' an FT_Int. 1.4697 + (PFR_PhyFontRec): New element `kern_pairs'. 1.4698 + (PFR_KernFlags): Values of PFR_KERN_2BYTE_CHAR and 1.4699 + PFR_KERN_2BYTE_ADJ were erroneously reversed. 1.4700 + 1.4701 + * include/freetype/ftoption.h: Commenting out the macro 1.4702 + TT_CONFIG_OPTION_BYTECODE_INTERPRETER. 1.4703 + 1.4704 +2003-09-02 David Turner <david@freetype.org> 1.4705 + 1.4706 + 1.4707 + * Version 2.1.5 released. 1.4708 + ========================= 1.4709 + 1.4710 + 1.4711 +2003-08-31 Manish Singh <yosh@gimp.org> 1.4712 + 1.4713 + * src/bdf/bdflib.c (_bdf_readstream): Don't use FT_MEM_COPY but 1.4714 + FT_MEM_MOVE. 1.4715 + 1.4716 +2003-08-30 Werner Lemberg <wl@gnu.org> 1.4717 + 1.4718 + * include/freetype/freetype.h (FT_ENCODING_SJIS, FT_ENCODING_GB2312, 1.4719 + FT_ENCODING_BIG5, FT_ENCODING_WANSUNG, FT_ENCODING_JOHAB): New 1.4720 + enumerations of FT_Encoding. The FT_ENCODING_MS_* variants except 1.4721 + FT_ENCODING_MS_SYMBOL are now deprecated. 1.4722 + Updated all users. 1.4723 + * docs/CHANGES: Document it. 1.4724 + 1.4725 +2003-08-27 Werner Lemberg <wl@gnu.org> 1.4726 + 1.4727 + * src/bdf/bdfdrivr.c (BDF_Face_Init): Accept lowercase characters 1.4728 + for spacing. 1.4729 + 1.4730 +2003-08-27 Mike FABIAN <mfabian@suse.de> 1.4731 + 1.4732 + * src/pcf/pcfread.c (pcf_load_font), src/bdf/bdfdrivr.c 1.4733 + (BDF_Face_Init): Accept lowercase characters for slant and weight. 1.4734 + 1.4735 +2003-08-18 David Turner <david@freetype.org> 1.4736 + 1.4737 + * include/freetype/config/ftoption.h: Disabling TrueType bytecode 1.4738 + interpreter until the UNPATENTED_HINTING works as advertised. 1.4739 + 1.4740 + * src/autohint/ahhint.c (ah_hinter_load_glyph): Use `|' for 1.4741 + setting `load_flags'. 1.4742 + 1.4743 + * Jamfile: Adding the `refdoc' target to the Jamfile in order to 1.4744 + build the API Reference in `docs/reference' automatically. 1.4745 + 1.4746 + * include/freetype/t1tables.h (PS_FontInfoRec), src/cid/cidtoken.h, 1.4747 + src/type1/t1tokens.h, src/type42/t42parse.c: Resetting the types of 1.4748 + `italic_angle', `underline_position', and `underline_thickness' to 1.4749 + their previous values (i.e., long, short, and ushort) in order to 1.4750 + avoid breaking binary compatibility. 1.4751 + 1.4752 + * include/freetype/ttunpat.h: Fixing documentation comment. 1.4753 + 1.4754 + * include/freetype/config/ftoption.h, devel/ftoption.h 1.4755 + (TT_CONFIG_OPTION_OPTION_COMPILE_UNPATENTED_HINTING): Replaced 1.4756 + with... 1.4757 + (TT_CONFIG_OPTION_UNPATENTED_HINTING): This. Updated all users. 1.4758 + (TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING): Removed. 1.4759 + 1.4760 + * include/freetype/internal/ftobjs.h (FT_DEBUG_HOOK_TYPE1): Removed. 1.4761 + (FT_DEBUG_HOOK_UNPATENTED_HINTING): New macro. Use this with 1.4762 + `FT_Set_Debug_Hook' to get the same effect as the removed 1.4763 + TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING. 1.4764 + 1.4765 + * src/truetype/ttobjs.c (tt_face_init): Use 1.4766 + `FT_DEBUG_HOOK_UNPATENTED_HINTING'. 1.4767 + 1.4768 +2003-08-06 Werner Lemberg <wl@gnu.org> 1.4769 + 1.4770 + * src/type1/t1gload.c (T1_Load_Glyph), src/cff/cffgload.c 1.4771 + (cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph): Fix 1.4772 + previous change. 1.4773 + 1.4774 +2003-08-05 Werner Lemberg <wl@gnu.org> 1.4775 + 1.4776 + * src/type1/t1gload.c (T1_Load_Glyph), src/cff/cffgload.c 1.4777 + (cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph): Apply 1.4778 + font matrix to advance width also. 1.4779 + * docs/CHANGES: Updated. 1.4780 + 1.4781 +2003-07-26 Werner Lemberg <wl@gnu.org> 1.4782 + 1.4783 + * builds/unix/configure.ac (version_info): Set to 9:4:3. 1.4784 + * builds/unix/configure: Updated. 1.4785 + * docs/CHANGES, docs/VERSION.DLL: Updated. 1.4786 + 1.4787 + * include/freetype/freetype.h (FT_GlyphSlot): Change 2003-06-16 1.4788 + also breaks binary compatibility. Reintroduce an unsigned integer 1.4789 + at the old position of `flags' called `reserved'. 1.4790 + 1.4791 +2003-07-25 Werner Lemberg <wl@gnu.org> 1.4792 + 1.4793 + Make API reference valid HTML 4.01 transitional. 1.4794 + 1.4795 + * src/tools/docmaker/tohtml.py (html_header_1): Add doctype 1.4796 + and charset. 1.4797 + (html_header_2): Fix style elements and add some more. 1.4798 + Fix syntax. 1.4799 + (block_header, block_footer, description_header, description_footer, 1.4800 + marker_header, marker_footer, source_header, source_footer, 1.4801 + chapter_header): Don't use <center>...</center> but `align=center' 1.4802 + table attribute. 1.4803 + (chapter_inter, chapter_footer): Add <li> and use special <ul> 1.4804 + class. 1.4805 + Use double quotes around table widths given in percent. 1.4806 + (keyword_prefix, keyword_suffix): Don't change font colour directly 1.4807 + but use a new <span> class. 1.4808 + (section_synopsis_header, section_synopsis_footer): Don't change 1.4809 + colour. 1.4810 + (code_header, code_footer): Don't change font colour directly but 1.4811 + use a special <pre> class. 1.4812 + (print_html_field): <tr> gets the `valign' attribute, not <table>. 1.4813 + (print_html_field_list): Ditto. 1.4814 + (index_exit): Don't use <center>...</center> but `align=center' 1.4815 + table attribute. 1.4816 + (section_enter): Ditto. 1.4817 + (toc_exit): Don't emit </table>. 1.4818 + (block_enter): Use <h4><a>, not <a><h4>. 1.4819 + (__init__): Fix tag order in self.html_footer. 1.4820 + 1.4821 +2003-07-25 David Turner <david@freetype.org> 1.4822 + 1.4823 + This change reimplements fix from 2003-05-30 without breaking 1.4824 + binary compatibility. 1.4825 + 1.4826 + * include/freetype/t1tables.h (PS_FontInfoRec): `italic_angle', 1.4827 + `is_fixed_pitch', `underline_position', `underline_thickness' are 1.4828 + reverted to be normal values. 1.4829 + 1.4830 + * include/freetype/internal/psaux.h (T1_FieldType): Remove 1.4831 + `T1_FIELD_TYPE_BOOL_P', `T1_FIELD_TYPE_INTEGER_P', 1.4832 + `T1_FIELD_TYPE_FIXED_P', `T1_FIELD_TYPE_FIXED_1000_P'. 1.4833 + (T1_FIELD_TYPE_BOOL_P, T1_FIELD_NUM_P, T1_FIELD_FIXED_P, 1.4834 + T1_FIELD_FIXED_1000_P): Removed. 1.4835 + (T1_FIELD_TYPE_BOOL): Renamed to... 1.4836 + (T1_FIELD_BOOL): New macro. Updated all callers. 1.4837 + 1.4838 + * src/type42/t42parse.c: `italic_angle', `is_fixed_pitch', 1.4839 + `underline_position', `underline_thickness', `paint_type', 1.4840 + `stroke_width' are reverted to be normal values. 1.4841 + (T42_KEYWORD_COUNT): New macro. 1.4842 + (t42_parse_dict): New array `keyword_flags' to mark that a value has 1.4843 + already been assigned to a dictionary entry. 1.4844 + * src/type42/t42objs.c (T42_Face_Init, T42_Face_Done): Updated. 1.4845 + 1.4846 + * src/cid/cidtoken.h: `italic_angle', `is_fixed_pitch', 1.4847 + `underline_position', `underline_thickness' are reverted to be 1.4848 + normal values. 1.4849 + * src/cid/cidobjs.c (cid_face_done, cid_face_init): Updated. 1.4850 + 1.4851 + * src/psaux/psobjs.c (ps_parser_load_field): Updated. 1.4852 + 1.4853 + * src/type1/t1tokens.h: `italic_angle', `is_fixed_pitch', 1.4854 + `underline_position', `underline_thickness', `paint_type', 1.4855 + `stroke_width' are reverted to be normal values. 1.4856 + * src/type1/t1objs.c (T1_Face_Done, T1_Face_Init): Updated. 1.4857 + * src/type1/t1load.c (T1_FIELD_COUNT): New macro. 1.4858 + (parse_dict): Add parameter for keyword flags. 1.4859 + Record only first instance of a field. 1.4860 + (T1_Open_Face): New array `keyword_flags'. 1.4861 + 1.4862 +2003-07-24 Werner Lemberg <wl@gnu.org> 1.4863 + 1.4864 + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 5. 1.4865 + * builds/unix/configure.ac (version_info): Set to 10:0:3. 1.4866 + * builds/unix/configure: Updated. 1.4867 + * builds/freetype.mk (refdoc): Fix --title. 1.4868 + 1.4869 + * docs/CHANGES, docs/VERSION.DLL, README: Updated. 1.4870 + 1.4871 + * src/tools/docmaker/sources.py (re_crossref): Fix regular 1.4872 + expression to handle trailing punctuation characters. 1.4873 + * src/tools/docmaker/tohtml.py (make_html_word): Updated. 1.4874 + 1.4875 + * docs/release: New file. 1.4876 + 1.4877 +2003-07-23 YAMANO-UCHI Hidetoshi <mer@din.or.jp> 1.4878 + 1.4879 + * include/freetype/internal/psaux.h (PS_Parser_FuncsRec): New 1.4880 + member function `to_bytes'. 1.4881 + 1.4882 + * src/psaux/psauxmod.c (ps_parser_funcs): New member 1.4883 + `ps_parser_to_bytes'. 1.4884 + (psaux_module_class): Increase version to 0x20000L. 1.4885 + 1.4886 + * src/psaux/psobjs.c (IS_T1_LINESPACE): Add \f. 1.4887 + (IS_T1_NULLSPACE): New macro. 1.4888 + (IS_T1_SPACE): Add it. 1.4889 + (skip_spaces, skip_alpha): New functions. 1.4890 + (ps_parser_skip_spaces, ps_parser_skip_alpha): Use them. 1.4891 + (ps_tobytes, ps_parser_to_bytes): New functions. 1.4892 + 1.4893 +2003-07-07 Werner Lemberg <wl@gnu.org> 1.4894 + 1.4895 + * builds/freetype.mk (DOC_DIR): New variable. 1.4896 + (refdoc): Use *_DIR variables. 1.4897 + (distclean): Remove documentation files. 1.4898 + 1.4899 + * builds/detect.mk (std_setup, dos_setup): Mention `make refdoc'. 1.4900 + 1.4901 + * configure: Set DOC_DIR variable. 1.4902 + 1.4903 +2003-07-07 Patrik Hägglund <patrik.hagglund@bredband.net> 1.4904 + 1.4905 + * builds/freetype.mk (refdoc): New target to build the 1.4906 + documentation. 1.4907 + (.PHONY): Updated. 1.4908 + 1.4909 + * include/freetype/freetype.h: Improve documentation of FT_CharMap. 1.4910 + * include/freetype/ftimage,h: Fix documentation of FT_OUTLINE_FLAGS. 1.4911 + * include/freetype/tttables.h: Document FT_Sfnt_Tag. 1.4912 + 1.4913 +2003-07-06 Werner Lemberg <wl@gnu.org> 1.4914 + 1.4915 + * src/bdf/bdfdrivr.c (BDF_Face_Init), src/pcf/pcfread.c 1.4916 + (pcf_load_font): Fix computation of height if PIXEL_SIZE property is 1.4917 + missing. 1.4918 + 1.4919 +2003-07-01 Werner Lemberg <wl@gnu.org> 1.4920 + 1.4921 + * src/cache/ftcsbits.c (ftc_sbit_node_compare): Only add `size' if 1.4922 + there is no error. Reported by Knut St. Osmundsen 1.4923 + <bird-freetype@anduin.net>. 1.4924 + 1.4925 +2003-06-30 Werner Lemberg <wl@gnu.org> 1.4926 + 1.4927 + A new try to synchronize bitmap font access. 1.4928 + 1.4929 + * include/freetype/freetype.h (FT_Bitmap_Size): `height' is now 1.4930 + defined to return the baseline-to-baseline distance. This was 1.4931 + already the value returned by the BDF and PCF drivers. 1.4932 + 1.4933 + The `width' field now gives the average width. I wasn't able to 1.4934 + find something better. It should be taken as informative only. 1.4935 + 1.4936 + New fields `size', `x_ppem', and `y_ppem'. 1.4937 + 1.4938 + * src/pcf/pcfread.c (pcf_load_font): Updated to properly fill 1.4939 + FT_Bitmap_Size. 1.4940 + Do proper rounding and conversion from 72.27 to 72 points. 1.4941 + 1.4942 + * src/bdf/bdfdrivr.c (BDF_Face_Init): Updated to properly fill 1.4943 + FT_Bitmap_Size. 1.4944 + Do proper rounding and conversion from 72.27 to 72 points. 1.4945 + 1.4946 + * src/sfnt/sfobjs.c (sfnt_load_face): Updated to properly fill 1.4947 + FT_Bitmap_Size. 1.4948 + 1.4949 + * src/winfonts/winfnt.c (FNT_Face_Init): Updated to properly fill 1.4950 + FT_Bitmap_Size. 1.4951 + 1.4952 +2003-06-29 Werner Lemberg <wl@gnu.org> 1.4953 + 1.4954 + Redesigning the FNT driver to return multiple faces, not multiple 1.4955 + strikes. At least one font (app850.fon from WinME) contains 1.4956 + different FNT charmaps for its subfonts. Consequently, the previous 1.4957 + design of having multiple bitmap strikes in a single font face fails 1.4958 + since we have only one charmap per face. 1.4959 + 1.4960 + * include/freetype/internal/fnttypes.h (FNT_Size_Rec): Removed. 1.4961 + (FNT_FaceRec): Remove `num_fonts' field and replace `fonts' with 1.4962 + `font'. 1.4963 + 1.4964 + * src/base/ftwinfnt.c (FT_Get_WinFNT_Header): Updated. 1.4965 + 1.4966 + * src/winfonts/winfnt.c (fnt_font_load): Don't set pixel_width equal 1.4967 + to pixel_height. 1.4968 + (fnt_face_done_fonts): Removed. 1.4969 + (fnt_face_get_dll_fonts): Renamed to... 1.4970 + (fnt_face_get_dll_font): This. Add second function argument to 1.4971 + select face index. 1.4972 + Updated to load just one subfont. 1.4973 + (fnt_font_done, FNT_Face_Done): Updated. 1.4974 + (FNT_Face_Init): Handle `face_index'. 1.4975 + Updated. 1.4976 + (FNT_Size_Set_Pixels): Simplified; similar to BDF and PCF, the 1.4977 + bitmap width is now ignored. 1.4978 + (FNT_Load_Glyph): Updated. 1.4979 + Fix glyph index computation. 1.4980 + (winfnt_driver_class): Updated. 1.4981 + 1.4982 +2003-06-25 Owen Taylor <otaylor@redhat.com> 1.4983 + 1.4984 + * src/sfnt/ttload.c (tt_face_load_hdmx): Don't assign 1.4985 + num_records until we actually decide to load the table, 1.4986 + otherwise, we'll segfault in tt_face_free_hdmx. 1.4987 + 1.4988 +2003-06-24 Werner Lemberg <wl@gnu.org> 1.4989 + 1.4990 + * src/cff/cffdrivr.c (cff_get_glyph_name): Protect against zero 1.4991 + glyph name pointer. Reported by Mikey Anbary <manbary@vizrt.com>. 1.4992 + 1.4993 +2003-06-23 Werner Lemberg <wl@gnu.org> 1.4994 + 1.4995 + * src/tools/glnames.py: Updated to AGL 2.0. 1.4996 + * src/psnames/pstables.h: Regenerated. 1.4997 + 1.4998 +2003-06-22 Werner Lemberg <wl@gnu.org> 1.4999 + 1.5000 + * include/freetype/cache/ftcglyph.h, include/freetype/ttnameid.h, 1.5001 + src/base/ftcalc.c, src/base/fttrigon.c, src/cff/cffgload.c, 1.5002 + src/otlayout/otlgsub.c, src/pshinter/pshrec.c, 1.5003 + src/psnames/psmodule.c, src/sfnt/sfobjs.c, src/truetype/ttdriver.c: 1.5004 + Decorate constants with `U' and `L' if appropriate. 1.5005 + 1.5006 + * include/freetype/ftmoderr.h: Updated to include recent module 1.5007 + additions. 1.5008 + 1.5009 + * src/pshinter/pshnterr.h (FT_ERR_BASE): Define as 1.5010 + `FT_Mod_Err_PShinter'. 1.5011 + * src/type42/t42error.h (FT_ERR_BASE): Define as 1.5012 + `FT_Mod_Err_Type42'. 1.5013 + 1.5014 + * src/pshinter/pshrec.h (PS_HINTS_MAGIC): Removed. Not used. 1.5015 + 1.5016 + * include/freetype/config/ftconfig.h [__MWERKS__]: Define FT_LONG64 1.5017 + and FT_INT64. 1.5018 + 1.5019 +2003-06-21 Werner Lemberg <wl@gnu.org> 1.5020 + 1.5021 + * src/winfonts/winfnt.c (FNT_Load_Glyph): Use first_char in 1.5022 + computation of glyph_index. 1.5023 + (FNT_Size_Set_Pixels): To find a strike, first check pixel_height 1.5024 + only, then try to find a better hit by comparing pixel_width also. 1.5025 + Without this fix it isn't possible to access all strikes. 1.5026 + Also compute metrics.max_advance to be in sync with other bitmap 1.5027 + drivers. 1.5028 + 1.5029 + * src/base/ftobjs.c (FT_Set_Char_Size): Remove redundant code. 1.5030 + (FT_Set_Pixel_Size): Assign value to `metrics' after validation of 1.5031 + arguments. 1.5032 + 1.5033 +2003-06-20 Werner Lemberg <wl@gnu.org> 1.5034 + 1.5035 + Synchronize computation of height and width for bitmap strikes. The 1.5036 + `width' field in the FT_Bitmap_Size structure is now only useful to 1.5037 + enumerate different strikes. The `max_advance' field of the 1.5038 + FT_Size_Metrics structure should be used to get the (maximum) width 1.5039 + of a strike. 1.5040 + 1.5041 + * src/bdf/bdfdrivr.c (BDF_Face_Init): Don't use AVERAGE_WIDTH for 1.5042 + computing `available_sizes->width' but make it always equal to 1.5043 + `available_sizes->height'. 1.5044 + 1.5045 + * src/pcf/pcfread.c (pcf_load_font): Don't use RESOLUTION_X for 1.5046 + computing `available_sizes->width' but make it always equal to 1.5047 + `available_sizes->height'. 1.5048 + 1.5049 + * src/truetype/ttdriver.c (Set_Pixel_Sizes): Pass only single 1.5050 + argument to function. 1.5051 + 1.5052 + * src/psnames/psmodule.c (ps_unicode_value): Handle `.' after 1.5053 + `uniXXXX' and `uXXXX[X[X]]'. 1.5054 + 1.5055 +2003-06-19 Werner Lemberg <wl@gnu.org> 1.5056 + 1.5057 + * src/bdf/bdfdrivr.c: s/FT_Err_/BDF_Err/. 1.5058 + * src/cache/ftccache.c, src/cache/ftcsbits.c, src/cache/ftlru.c: 1.5059 + s/FT_Err_/FTC_Err_/. 1.5060 + * src/cff/cffcmap.c: s/FT_Err_/CFF_Err_/. 1.5061 + * src/pcf/pcfdrivr.c: s/FT_Err_/PCF_Err_/. 1.5062 + * src/psaux/t1cmap.c: Include psauxerr.h. 1.5063 + s/FT_Err_/PSaux_Err_/. 1.5064 + * src/pshinter/pshnterr.h: New file. 1.5065 + * src/pshinter/rules.mk: Updated. 1.5066 + * src/pshinter/pshalgo.c, src/pshinter/pshrec.c: Include pshnterr.h. 1.5067 + s/FT_Err_/PSH_Err_/. 1.5068 + * src/pfr/pfrdrivr.c, src/pfr/pfrobjs.c, src/pfr/pfrsbit.c: 1.5069 + s/FT_Err_/PFR_Err_/. 1.5070 + * src/sfnt/sfdriver.c, src/sfnt/sfobjs.c, src/sfnt/ttcmap0.c, 1.5071 + src/sfnt/ttload.c: s/FT_Err_/SFNT_Err_/. 1.5072 + * src/truetype/ttgload.c: s/FT_Err_/TT_Err_/. 1.5073 + * src/gzip/ftgzip.c: Load FT_MODULE_ERRORS_H and define 1.5074 + FT_ERR_PREFIX and FT_ERR_BASE. 1.5075 + s/FT_Err_/Gzip_Err_/. 1.5076 + 1.5077 +2003-06-19 Dirck Blaskey <listtarget@danbala.com> 1.5078 + 1.5079 + * src/cff/cffload (cff_encoding_load): `nleft' must be FT_UInt, 1.5080 + otherwise adding 1 might wrap the result. 1.5081 + 1.5082 +2003-06-18 Werner Lemberg <wl@gnu.org> 1.5083 + 1.5084 + * src/psnames/psmodule.c (ps_unicode_value): Add support to 1.5085 + recognize `uXXXX[X[X]]' glyph names. 1.5086 + Don't handle glyph names starting with `uni' which have more than 1.5087 + four digits. 1.5088 + 1.5089 +2003-06-16 Werner Lemberg <wl@gnu.org> 1.5090 + 1.5091 + * include/freetype/freetype.h (FT_Open_Flags): Replaced with 1.5092 + #defines for the constants. 1.5093 + (FT_Open_Args): Change type of `flags' to FT_UInt. 1.5094 + (FT_GlyphSlot): Move `flags' to FT_Slot_Internal. 1.5095 + 1.5096 + * include/freetype/ftimage.h (FT_Outline_Flags, FT_Raster_Flag): 1.5097 + Replaced with #defines for the constants. 1.5098 + 1.5099 + * include/freetype/internal/ftobjs.h (FT_Slot_Internal): New 1.5100 + field `flags' (from FT_GlyphSlot). 1.5101 + Updated all affected source files. 1.5102 + (FT_GLYPH_OWN_BITMAP): New macro (from ftgloadr.h). 1.5103 + 1.5104 + * include/freetype/internal/ftgloadr.h (FT_GLYPH_OWN_BITMAP): Moved 1.5105 + to ftobjs.h. 1.5106 + 1.5107 + * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Use dummy 1.5108 + FT_GlyphSlot_Internal object. 1.5109 + 1.5110 +2003-06-15 Werner Lemberg <wl@gnu.org> 1.5111 + 1.5112 + * builds/compiler/gcc.mk, builds/compiler/gcc-dev.mk (CFLAGS): 1.5113 + Add -fno-strict-aliasing to get rid of zillion warnings from gcc 1.5114 + version 3.3. 1.5115 + 1.5116 +2003-06-14 Werner Lemberg <wl@gnu.org> 1.5117 + 1.5118 + * include/freetype/ftglyph.h (ft_glyph_bbox_unscaled, 1.5119 + ft_glyph_bbox_subpixels, ft_glyph_bbox_gridfit, 1.5120 + ft_glyph_bbox_truncate, ft_glyph_bbox_pixels): Replaced with 1.5121 + FT_GLYPH_BBOX_UNSCALED, FT_GLYPH_BBOX_SUBPIXELS, 1.5122 + FT_GLYPH_BBIX_GRIDFIT, FT_GLYPH_BBOX_TRUNCATE, FT_GLYPH_BBOX_PIXELS. 1.5123 + The lowercase variants are now (deprecated aliases) to the uppercase 1.5124 + versions. 1.5125 + Updated all other files. 1.5126 + 1.5127 + * include/freetype/ftmodule.h (ft_module_font_driver, 1.5128 + ft_module_renderer, ft_module_hinter, ft_module_styler, 1.5129 + ft_module_driver_scalable, ft_module_driver_no_outlines, 1.5130 + ft_module_driver_has_hinter): Replaced with FT_MODULE_FONT_DRIVER, 1.5131 + FT_MODULE_RENDERER, FT_MODULE_HINTER, FT_MODULE_STYLER, 1.5132 + FT_MODULE_DRIVER_SCALABLE, FT_MODULE_DRIVER_NO_OUTLINES, 1.5133 + FT_MODULE_DRIVER_HAS_HINTER. 1.5134 + The lowercase variants are now (deprecated aliases) to the uppercase 1.5135 + versions. 1.5136 + Updated all other files. 1.5137 + 1.5138 + * src/base/ftglyph.c (FT_Glyph_Get_CBox): Handle bbox_mode better 1.5139 + as enumeration. 1.5140 + 1.5141 + * src/pcf/pcfdrivr.c (pcf_driver_class), src/winfonts/winfnt.c 1.5142 + (winfnt_driver_class), src/bdf/bdfdrivr.c (bdf_driver_class): Add 1.5143 + the FT_MODULE_DRIVER_NO_OUTLINES flag. 1.5144 + 1.5145 +2003-06-13 Detlef Würkner <TetiSoft@apg.lahn.de> 1.5146 + 1.5147 + * src/pfr/pfrobjs.c (pfr_slot_load): Apply font matrix. 1.5148 + 1.5149 +2003-06-13 Werner Lemberg <wl@gnu.org> 1.5150 + 1.5151 + * builds/dos/detect.mk: Test not only for `Dos' but for `DOS' also. 1.5152 + 1.5153 + * builds/dos/dos-emx.mk, builds/compiler/emx.mk: New files for 1.5154 + EMX gcc compiler. 1.5155 + * builds/dos/detect.mk: Add target `emx'. 1.5156 + 1.5157 + * builds/compiler/watcom.mk (LINK_LIBRARY): GNU Make for DOS doesn't 1.5158 + like a trailing semicolon; add a dummy command. 1.5159 + 1.5160 + * src/cid/cidload.c: Remove parse_font_bbox code (already enclosed 1.5161 + with #if 0 ... #endif). 1.5162 + 1.5163 + * src/type1/t1tokens.h: Handle /FontName. 1.5164 + * src/type1/t1load.c (parse_font_name): Removed. 1.5165 + Remove parse_font_bbox code (already enclosed with #if 0 ... 1.5166 + #endif). 1.5167 + 1.5168 + * src/type42/t42parse.c (t42_parse_font_name): Removed. 1.5169 + Remove t42_parse_font_bbox code (already enclosed with #if 0 ... 1.5170 + #endif). 1.5171 + (t42_keywords): Handle /FontName with T1_FIELD_KEY. 1.5172 + 1.5173 +2003-06-12 Werner Lemberg <wl@gnu.org> 1.5174 + 1.5175 + * include/freetype/internal/psaux.h (T1_FieldType): Add 1.5176 + T1_FIELD_TYPE_KEY. 1.5177 + (T1_FIELD_KEY): New macro. 1.5178 + * src/psaux/psobjs.c (ps_parser_load_field): Handle 1.5179 + T1_FIELD_TYPE_KEY. 1.5180 + 1.5181 + * src/cid/cidtoken.h: Use T1_FIELD_KEY for /CIDFontName. 1.5182 + 1.5183 +2003-06-11 Alexander Malmberg <alexander@malmberg.org> 1.5184 + 1.5185 + * src/cache/ftlru.c (FT_LruList_Remove_Selection): Decrease 1.5186 + number of nodes. 1.5187 + (FT_LruList_Lookup): Fix assertion for out-of-memory case. 1.5188 + 1.5189 +2003-06-11 Werner Lemberg <wl@gnu.org> 1.5190 + 1.5191 + * src/cid/cidload.c (cid_decrypt): Removed. 1.5192 + (cid_read_subrs): Use t1_decrypt from psaux module. 1.5193 + * src/cid/cidload.h: Updated. 1.5194 + * src/cid/cidgload.c (cid_load_glyph): Use t1_decrypt from psaux 1.5195 + module. 1.5196 + 1.5197 +2003-06-10 Werner Lemberg <wl@gnu.org> 1.5198 + 1.5199 + * src/cid/cidobjs.c: Apply change 2003-05-31 from <Ron.Dev@gmx.de>. 1.5200 + Compute style flags. 1.5201 + Fix computation of root->height. 1.5202 + * src/cid/cidtoken.h: Handle FontBBox. 1.5203 + * src/cid/cidload.c (cid_load_keyword): Handle 1.5204 + T1_FIELD_LOCATION_BBOX. 1.5205 + (parse_font_bbox): Commented out. 1.5206 + (cid_field_record): Comment out element for parsing FontBBox. 1.5207 + 1.5208 + * src/type42/t42parse.c (t42_parse_font_bbox): Commented out. 1.5209 + (t42_keywords): Handle FontBBox with T1_FIELD_BBOX, not with 1.5210 + T1_FIELD_CALLBACK. 1.5211 + (t42_parse_font_bbox): Commented out. 1.5212 + (t42_load_keyword): Handle T1_FIELD_LOCATION_BBOX. 1.5213 + * src/type42/t42objs.c (T42_Face_Init): Apply change 2003-05-31 1.5214 + from <Ron.Dev@gmx.de>. 1.5215 + 1.5216 +2003-06-09 George Williams <gww@silcom.com> 1.5217 + 1.5218 + * src/truetype/ttinterp.c (SetSuperRound) <0x30>: Follow Apple's 1.5219 + TrueType specification. 1.5220 + (Ins_MDRP, Ins_MIRP): Fix single width cut-in test. 1.5221 + 1.5222 +2003-06-09 Detlef Würkner <TetiSoft@apg.lahn.de> 1.5223 + 1.5224 + * src/gzip/ftgzip.c: (inflate_mask): Replaced with... 1.5225 + (NO_INFLATE_MASK): This. 1.5226 + * src/gzip/infutil.h: Declare `inflate_mask' conditionally by 1.5227 + NO_INFLATE_MASK. 1.5228 + 1.5229 +2003-06-09 Alexis S. L. Carvalho <alexis@cecm.usp.br> 1.5230 + 1.5231 + * src/gzip/ftgzip.c (ft_gzip_file_fill_output): Handle Z_STREAM_END 1.5232 + correctly. 1.5233 + 1.5234 +2003-06-09 Wolfgang Domröse <porthos.domroese@harz.de> 1.5235 + 1.5236 + * src/pshinter/pshglob.c (psh_globals_new): Change calculation of 1.5237 + dim->stdw.count to avoid compiler problem. 1.5238 + 1.5239 + * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Move the block 1.5240 + variables to the beginning of the function to avoid compiler 1.5241 + problems. 1.5242 + Add casts necessary for 16bit compilers. 1.5243 + 1.5244 +2003-06-09 Werner Lemberg <wl@gnu.org> 1.5245 + 1.5246 + * src/pfr/rules.mk (PFR_DRV_SRC): Add pfrsbit.c. 1.5247 + (PFR_DRV_H): Add pfrtypes.h. 1.5248 + 1.5249 + * include/freetype/config/ftconfig.h: s/__MWKS__/__MWERKS__/. 1.5250 + 1.5251 +2003-06-08 Karl Schultz <kschultz@rsinc.com> 1.5252 + 1.5253 + * src/pfr/pfrsbit.c (pfr_bitwriter_init): Change type of third 1.5254 + argument to FT_Bool. 1.5255 + (pfr_lookup_bitmap_data): Change type of third and fourth argument 1.5256 + to FT_UInt. Updated caller. 1.5257 + (pfr_load_bitmap_bits): Change type of fourth argument to FT_Bool. 1.5258 + 1.5259 +2003-06-08 Werner Lemberg <wl@gnu.org> 1.5260 + 1.5261 + Completely revised FreeType's make management. 1.5262 + 1.5263 + . In all makefiles `/' is used as the path separator. The 1.5264 + conversion to the real path separators is done as late as 1.5265 + possible using $(subst ...). 1.5266 + 1.5267 + . $(HOSTSEP) no longer exists. Now, $(SEP) gives the path separator 1.5268 + for the operating system, and the new $(COMPILER_SEP) the path 1.5269 + separator for the compiler tools. 1.5270 + 1.5271 + . $(BUILD) has been renamed to $(BUILD_DIR). In general, all 1.5272 + directory variables end with `_DIR'. The variants ending in `_' 1.5273 + (like `BASE_' have been removed). 1.5274 + 1.5275 + The following ChangeLog entries only describe changes which are 1.5276 + not related to the redesign. 1.5277 + 1.5278 + * builds/beos/beos-def.mk (BUILD_DIR): Fix typo. 1.5279 + * builds/compiler/watcom.mk (LINK_LIBRARY): Fix linker call to avoid 1.5280 + overlong arguments as suggested by J. Ali Harlow 1.5281 + <ali@avrc.city.ac.uk>. 1.5282 + * builds/dos/dos-wat.mk: New file. 1.5283 + * builds/freetype.mk (FREETYPE_H): Include header files from the 1.5284 + `devel' subdirectory. 1.5285 + 1.5286 + * builds/os2/os2-dev.mk, builds/unix/unixddef.mk, 1.5287 + builds/unix/unixddef.mk, builds/win32/w32-bccd.mk, 1.5288 + builds/win32/w32-dev.mk (BUILD_DIR): Fix path. 1.5289 + 1.5290 + * builds/unix/configure.ac, builds/unix/configure: Updated. 1.5291 + * builds/unix/unix-def.in (DISTCLEAN): Add `freetype2.pc'. 1.5292 + 1.5293 +2003-06-07 Werner Lemberg <wl@gnu.org> 1.5294 + 1.5295 + * src/base/ftmac.c (FT_New_Face_From_SFNT): s/rlen/sfnt_size/ to 1.5296 + make it compile. 1.5297 + 1.5298 + * devel/ftoption.h: Updated. 1.5299 + 1.5300 +2003-06-07 Detlef Würkner <TetiSoft@apg.lahn.de> 1.5301 + 1.5302 + * include/freetype/internal/psaux.h, src/truetype/ttgload.h: 1.5303 + s/index/idx/ to fix compiler warnings. 1.5304 + 1.5305 + * src/sfnt/ttcmap0.c (tt_face_build_cmaps): Use more `volatile' to 1.5306 + fix compiler warning. 1.5307 + 1.5308 + * src/gzip/ftgzip.c (BUILDFIXED): Removed. 1.5309 + * src/gzip/inftrees.c (inflate_trees_fixed) [!BUILDFIXED]: Use 1.5310 + FT_UNUSED to remove compiler warning. 1.5311 + 1.5312 +2003-06-06 Werner Lemberg <wl@gnu.org> 1.5313 + 1.5314 + * include/freetype/ftstroker.h: Renamed to... 1.5315 + * include/freetype/ftstroke.h: This. 1.5316 + 1.5317 + * src/base/ftstroker.c: Renamed to... 1.5318 + * src/base/ftstroke.c: This. 1.5319 + 1.5320 + * include/freetype/config/ftheader.h (FT_STROKER_H): Updated. 1.5321 + 1.5322 + * src/base/descrip.mms, src/base/Jamfile, src/base/rules.mk: 1.5323 + Updated. 1.5324 + 1.5325 + * src/pcf/pcfdriver.c: Renamed to... 1.5326 + * src/pcf/pcfdrivr.c: This. 1.5327 + * src/pcf/pcfdriver.h: Renamed to... 1.5328 + * src/pcf/pcfdrivr.h: This. 1.5329 + 1.5330 + * src/pcf/Jamfile, src/pcf/rules.mk: Updated. 1.5331 + 1.5332 +2003-06-05 Wenlin Institute (Tom Bishop) <wenlin@wenlin.com> 1.5333 + 1.5334 + * src/base/ftmac.c (file_spec_from_path) [TARGET_API_MAC_CARBON]: 1.5335 + Add `#if !defined(__MWERKS__)'. 1.5336 + 1.5337 +2003-06-05 Werner Lemberg <wl@gnu.org> 1.5338 + 1.5339 + * include/freetype/internal/psaux.h (T1_FieldType): Add 1.5340 + T1_FIELD_TYPE_FIXED_1000 and T1_FIELD_TYPE_FIXED_1000_P. 1.5341 + (T1_FIELD_FIXED_1000, T1_FIELD_FIXED_1000_P): New macros. 1.5342 + * src/psaux/psobjs.c (ps_parser_load_field): Handle 1.5343 + T1_FIELD_TYPE_FIXED_1000 and T1_FIELD_TYPE_FIXED_1000_P. 1.5344 + 1.5345 + * src/cff/cffparse.c (cff_kind_fixed_thousand): New enumeration. 1.5346 + (CFF_FIELD_FIXED_1000): New macro. 1.5347 + (cff_parser_run): Handle cff_kind_fixed_thousand. 1.5348 + * src/cff/cfftoken.h: Use CFF_FIELD_FIXED_1000 for blue_scale. 1.5349 + * src/cff/cffload (cff_subfont_load): Fix default values of 1.5350 + expansion_factor and blue_scale. 1.5351 + 1.5352 + * src/cif/cidtoken.h, src/type1/t1tokens.h: Use T1_FIELD_FIXED_1000 1.5353 + for blue_scale. 1.5354 + 1.5355 + * src/pshinter/pshglob.c (psh_globals_new): Fix default value of 1.5356 + blue_scale. 1.5357 + 1.5358 +2003-06-04 Wolfgang Domröse <porthos.domroese@harz.de> 1.5359 + 1.5360 + * include/freetype/internal/ftdriver.h, 1.5361 + include/freetype/internal/ftobjs.h, 1.5362 + include/freetype/internal/psaux.h, src/cid/cidgload.c, 1.5363 + src/psaux/psobjs.c, src/psaux/t1decode.c, src/psaux/psobjs.h, 1.5364 + src/pshinter/pshrec.c, src/pshinter/pshalgo.c, 1.5365 + src/psnames/psmodule.c, src/raster/ftraster.c, src/sfnt/sfobjs.c, 1.5366 + src/smooth/ftgrays.c, src/smooth/ftsmooth.c, src/truetype/ttobjs.c, 1.5367 + src/truetype/ttdriver.c, src/truetype/ttgload.c, src/type1/t1afm.c, 1.5368 + src/type1/t1gload.c, src/type1/t1gload.h, src/type1/t1load.c, 1.5369 + src/type1/t1objs.c, src/type42/t42parse.c, src/type42/t42parse.h: 1.5370 + Many casts and slight argument type changes to make it work with 1.5371 + a 16bit compiler. 1.5372 + 1.5373 +2003-06-04 Werner Lemberg <wl@gnu.org> 1.5374 + 1.5375 + * include/freetype/config/ftoption.h: Defining 1.5376 + TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING by default is a bad idea 1.5377 + since some fonts (e.g. Arial) produce worse results than without 1.5378 + hinting. Reverted. 1.5379 + 1.5380 +2003-06-04 Werner Lemberg <wl@gnu.org> 1.5381 + 1.5382 + * src/truetype/ttgload.c (load_truetype_glyph) 1.5383 + [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Call 1.5384 + FT_GlyphLoader_CheckPoints before adding phantom points. This fixes 1.5385 + a segfault bug with fonts (e.g. htst3.ttf) which have nested 1.5386 + subglyphs more than one level deep. Reported by Anthony Fok. 1.5387 + 1.5388 + * include/freetype/config/ftoption.h: Define 1.5389 + TT_CONFIG_OPTION_BYTECODE_INTERPRETER, 1.5390 + TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING, and 1.5391 + TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING to make it the new 1.5392 + default. 1.5393 + 1.5394 +2003-06-03 Werner Lemberg <wl@gnu.org> 1.5395 + 1.5396 + * src/autohint/ahhint.c (ah_hinter_hint_edges): Removed. Just a 1.5397 + wrapper for ah_hint_edges. 1.5398 + (ah_hint_edges): Renamed to... 1.5399 + (ah_hinter_hint_edges): This. 1.5400 + 1.5401 + * src/base/ftobjs.c (FT_Set_Hint_Flags): Removed. Unused. 1.5402 + 1.5403 + * include/freetype/internal/ftobjs.h (FT_Face_InternalRec), 1.5404 + include/freetype/internal/psaux.h (T1_DecoderRec), 1.5405 + src/cff/cffgload.h (CFF_Builder): Remove `hint_flags' field. 1.5406 + Unused. 1.5407 + 1.5408 + * src/cff/cffgload.c (cff_builder_init): Updated. 1.5409 + (cff_decoder_parse_charstrings) <cff_op_endchar>: Call hinter->apply 1.5410 + with decoder->hint_mode instead of builder->hint_flags. 1.5411 + * src/psaux/t1decode.c (t1_decoder_init): Updated. 1.5412 + 1.5413 + * src/base/ftstroker.c (ft_stroke_border_export): s/index/idx/. 1.5414 + 1.5415 + * src/sfnt/sfobjs.c (sfnt_load_face): Commented out code which 1.5416 + increased root->height by 15% if the line gap was zero. There exist 1.5417 + fonts (containing e.g. form drawing characters) which intentionally 1.5418 + have a zero line gap value. 1.5419 + 1.5420 + * src/truetype/ttinterp.c (Free_Project, CUR_Func_freeProj): 1.5421 + Removed. Unused. 1.5422 + Updated all callers. 1.5423 + 1.5424 +2003-06-02 Werner Lemberg <wl@gnu.org> 1.5425 + 1.5426 + * src/cff/cffobjs.c (cff_face_init): Use symbolic names for 1.5427 + Adobe specific encoding IDs (there was a wrong EID value for custom 1.5428 + encoding). 1.5429 + 1.5430 + * src/cff/cffcmap.h (CFF_CMapStdRec): Remove `count'. 1.5431 + * src/cff/cffcmap.c (cff_cmap_encoding_init, 1.5432 + cff_cmap_encoding_done): Updated. 1.5433 + (cff_cmap_encoding_char_index, cff_cmap_encoding_char_next): Use 1.5434 + 256 as limit for character code. 1.5435 + 1.5436 +2003-06-01 Werner Lemberg <wl@gnu.org> 1.5437 + 1.5438 + * src/winfonts/winfnt.c (FNT_Load_Glyph): Revert change from 1.5439 + 2003-03-20. 1.5440 + 1.5441 +2003-05-31 Werner Lemberg <wl@gnu.org> 1.5442 + 1.5443 + * include/freetype/fttrigon.h (FT_Vector_Normalize): Removed. 1.5444 + 1.5445 +2003-05-31 <Ron.Dev@gmx.de> 1.5446 + 1.5447 + * src/type1/t1objs.c (T1_Face_Init): Improve algorithm for guessing 1.5448 + the font style by ignoring spaces and hyphens. 1.5449 + 1.5450 + * builds/unix/freetype2.in: Fix `Version' field. 1.5451 + 1.5452 +2003-05-30 Werner Lemberg <wl@gnu.org> 1.5453 + 1.5454 + Avoid overwriting of numeric font dictionary entries for synthetic 1.5455 + fonts. Additionally, some entries were handled as `integer' instead 1.5456 + of `number'. 1.5457 + 1.5458 + * include/freetype/internal/psaux.h (T1_FieldType): Add 1.5459 + T1_FIELD_TYPE_BOOL_P, T1_FIELD_TYPE_INTEGER_P, and 1.5460 + T1_FIELD_TYPE_FIXED_P. 1.5461 + (T1_FIELD_BOOL_P, T1_FIELD_NUM_P, T1_FIELD_FIXED_P): New macros. 1.5462 + * src/psaux/psobjs.c (ps_parser_load_field): Handle new field types. 1.5463 + 1.5464 + * include/freetype/internal/cfftypes.h (CFF_FontRecDict), 1.5465 + src/cff/cfftoken.h: Change type of underline_position and 1.5466 + underline_thickness to FT_Fixed. 1.5467 + * src/cff/cffload.c (cff_subfont_load): Fix default values of 1.5468 + underline_position and underline_thickness. 1.5469 + * src/cff/cffobjs.c (cff_face_init): Set underline_position 1.5470 + and underline_thickness in `root'. 1.5471 + 1.5472 + * include/freetype/internal/t1types.h (T1_Font): Change point_type 1.5473 + and stroke_width to pointers. 1.5474 + * include/freetype/t1tables.h (PS_FontInfo): Change italic_angle, 1.5475 + is_fixed_pitch, underline_position, and underline_thickness to 1.5476 + pointers. 1.5477 + * src/type1/t1tokens.h: Change italic_angle, is_fixed_pitch, 1.5478 + underline_position, and underline_thickness to pointers. Change 1.5479 + the type of the latter two to `fixed'. 1.5480 + Change type of stroke_width to `fixed' and make it a pointer. 1.5481 + Change paint_type to pointer. 1.5482 + * src/type1/t1objs.c (T1_Face_Done): Updated. 1.5483 + (T1_Face_Init): Updated. 1.5484 + Fix assignment of underline_position and underline_thickness. 1.5485 + 1.5486 + * src/cid/cidtoken.h: Change italic_angle, is_fixed_pitch, 1.5487 + underline_position, and underline_thickness to pointers. Change 1.5488 + the type of the latter two to `fixed'. 1.5489 + Change type of stroke_width to `fixed'. 1.5490 + * src/cid/cidobjs.c (cid_face_done): Updated. 1.5491 + (cid_face_init): Updated. 1.5492 + Fix assignment of underline_position and underline_thickness. 1.5493 + 1.5494 + * src/type42/t42parse.c: Change italic_angle, is_fixed_pitch, 1.5495 + underline_position, and underline_thickness to pointers. Change the 1.5496 + type of the latter two to `fixed'. 1.5497 + Change type of stroke_width to `fixed' and make it a pointer. 1.5498 + Change paint_type to pointer. 1.5499 + * src/type42/t42objs.c (T42_Face_Init): Updated. 1.5500 + Fix assignment of underline_position and underline_thickness. 1.5501 + (T42_Face_Done): Updated. 1.5502 + 1.5503 + * src/base/ftobjs.c (open_face_from_buffer): Fix compiler warning. 1.5504 + * src/pshinter/pshglob.c, src/pshinter/pshglob.h 1.5505 + (psh_globals_set_scale): Make it a local function. 1.5506 + 1.5507 + * test/gview.c: Fix renaming ps3->ps typo. 1.5508 + Formatting. 1.5509 + 1.5510 +2003-05-29 Werner Lemberg <wl@gnu.org> 1.5511 + 1.5512 + * src/pshinter/pshalgo1.[ch], src/pshinter/pshalgo2.[ch]: Removed. 1.5513 + * src/pshinter/pshalgo.h: Removed. 1.5514 + 1.5515 + * src/pshinter/pshalgo3.[ch]: Renamed to... 1.5516 + * src/pshinter/pshalgo.[ch]: New files. 1.5517 + s/PSH3/PSH/. 1.5518 + s/psh3/psh/. 1.5519 + s/ps3/ps/. 1.5520 + 1.5521 + * src/pshinter/pshrec.c, src/pshinter/pshinter.c: Updated. 1.5522 + * src/pshinter/rules.mk, src/pshinter/Jamfile: Updated. 1.5523 + 1.5524 + * src/pshinter/pshglob.[ch] (psh_dimension_snap_width): Commented 1.5525 + out. 1.5526 + 1.5527 + * tests/gview.c: Remove code for pshalgo1 and pshalgo2. 1.5528 + Updated. 1.5529 + 1.5530 +2003-05-28 Martin Zinser <zinser@decus.de> 1.5531 + 1.5532 + * vms_make.com: Reworked support for shareable images on VMS. The 1.5533 + first version was kind of a hack; the current implementation of the 1.5534 + procedure to extract the required symbols is much cleaner. 1.5535 + 1.5536 + Reworked creation of MMS files, avoiding a number of temporary files 1.5537 + which were created in the previous version. 1.5538 + 1.5539 + Further work on creating descrip.mms files on the fly. 1.5540 + 1.5541 + * builds/vms/descrip.mms, src/autohint/descrip.mms, 1.5542 + src/type1/descrip.mms: Removed. 1.5543 + 1.5544 +2003-05-28 Werner Lemberg <wl@gnu.org> 1.5545 + 1.5546 + * src/pshinter/pshalgo3.c (psh3_glyph_compute_extrema): Skip 1.5547 + contours with only a single point to avoid segfault. 1.5548 + 1.5549 + * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Activate code for 1.5550 + handling `origin'. 1.5551 + 1.5552 +2003-05-24 Werner Lemberg <wl@gnu.org> 1.5553 + 1.5554 + * src/autohint/ahtypes.h (AH_OPTION_NO_STRONG_INTERPOLATION): 1.5555 + Removed since unused. 1.5556 + 1.5557 +2003-05-21 Werner Lemberg <wl@gnu.org> 1.5558 + 1.5559 + * include/freetype/config/ftstdlib.h (ft_strcat): New wrapper macro 1.5560 + for strcat. 1.5561 + 1.5562 + * src/base/ftmac.c (create_lwfn_name): s/isupper/ft_isupper/. 1.5563 + (parse_font): s/memcpy/ft_memcpy/. 1.5564 + (is_dfont) [TARGET_API_MAC_CARBON]: s/memcmp/ft_memcmp/. 1.5565 + * src/base/ftobjs.c (load_mac_face) [FT_MACINTOSH]: 1.5566 + s/strlen/ft_strlen/. 1.5567 + s/strcat/ft_strcat/. 1.5568 + s/strcpy/ft_strcpy/. 1.5569 + * src/gzip/zutil.h: s/memset/ft_memset/. 1.5570 + s/memcmp/ft_memcmp/. 1.5571 + 1.5572 + * src/bdf/bdfdrivr.c (BDF_Face_Init), src/pcf/pcfdriver.c 1.5573 + (PCF_Face_Init): Test for charset registry case-insensitively. 1.5574 + 1.5575 + * src/gzip/ftgzip.c (ft_gzip_fil_io): Revert change from yesterday; 1.5576 + it has already been fixed differently. 1.5577 + 1.5578 + * src/truetype/ttinterp.c (DO_SFVTL): Add missing braces around 1.5579 + if-clause. 1.5580 + 1.5581 +2003-05-21 Martin Zinser <zinser@decus.de> 1.5582 + 1.5583 + * t1load.c (parse_blend_axis_types): Fix compiler warning. 1.5584 + 1.5585 + * descrip.mms: Removed. Now created by... 1.5586 + 1.5587 + * vms_make.com: New file. 1.5588 + 1.5589 +2003-05-21 Weiqi Gao <weiqigao@networkusa.net> 1.5590 + 1.5591 + * src/gzip/ftgzip.c (ft_gzip_file_io): Avoid zero value of `delta' 1.5592 + to prevent infinite loop. 1.5593 + 1.5594 +2003-05-21 Lars Clausen <lrclause@cs.uiuc.edu> 1.5595 + 1.5596 + * docs/VERSION.DLL: Provide better autoconf snippet to check 1.5597 + FreeType version. 1.5598 + 1.5599 +2003-05-21 Werner Lemberg <wl@gnu.org> 1.5600 + 1.5601 + * src/base/ftobjs.c (open_face): Free `internal' not 1.5602 + `face->internal' in case of error to avoid possible segfault. 1.5603 + 1.5604 + * src/pshinter/pshalgo3.c (ps3_hints_apply): Check whether we 1.5605 + actually have an outline. 1.5606 + 1.5607 +2003-05-20 David Chester <davidchester@qmx.net> 1.5608 + 1.5609 + * src/pshinter/pshalgo3.c (ps3_hints_apply): Try to optimize 1.5610 + y_scale so that the top of non-capital letters is aligned on a pixel 1.5611 + boundary whenever possible. 1.5612 + 1.5613 + * src/autohint/ahhint.c (ah_hint_edges): Make sure that lowercase 1.5614 + m's maintain their symmetry. 1.5615 + 1.5616 +2003-05-20 Werner Lemberg <wl@gnu.org> 1.5617 + 1.5618 + * src/autohint/ahhint.c (ah_hinter_load_glyph): Oops! David's 1.5619 + patch from yesterday has been resolved already in a different 1.5620 + way. Reverted. 1.5621 + 1.5622 +2003-05-19 David Chester <davidchester@qmx.net> 1.5623 + 1.5624 + * src/autohint/ahhint.c (ah_hinter_load_glyph): Don't scale 1.5625 + y_scale locally but face->size->metrics.y_scale. 1.5626 + 1.5627 +2003-05-19 David Turner <david@freetype.org> 1.5628 + 1.5629 + * src/sfnt/ttcmap0.c (tt_cmap4_char_next): Select proper start 1.5630 + value for `hi' to avoid infinite loop. 1.5631 + 1.5632 +2003-05-18 Yong Sun <sunyong@njstar.com> 1.5633 + 1.5634 + * src/raster/ftraster.c (Insert_Y_Turn): Fix overflow test. 1.5635 + 1.5636 +2003-05-18 Werner Lemberg <wl@gnu.org> 1.5637 + 1.5638 + * include/freetype/config/ftoption.h [FT_CONFIG_OPTION_MAC_FONTS]: 1.5639 + New macro. 1.5640 + * src/base/ftobjs.c: Use it to control mac font support on non-mac 1.5641 + platforms. 1.5642 + 1.5643 +2003-05-17 George Williams <gww@silcom.com> 1.5644 + 1.5645 + Implement partial support of Mac fonts on non-Mac platforms. 1.5646 + 1.5647 + * src/base/ftobjs.c (memory_stream_close, new_memory_stream, 1.5648 + open_face_from_buffer, Mac_Read_POST_Resource, 1.5649 + Mac_Read_sfnt_Resource, IsMacResource, IsMacBinary, load_mac_face) 1.5650 + [!FT_MACINTOSH]: New functions. 1.5651 + (FT_Open_Face) [!FT_MACINTOSH]: Use load_mac_face. 1.5652 + 1.5653 +2003-05-17 Werner Lemberg <wl@gnu.org> 1.5654 + 1.5655 + * src/base/ftobjs.c (FT_Load_Glyph): Scale linear advance width only 1.5656 + if FT_FACE_FLAG_SCALABLE is set (otherwise we have a division by 1.5657 + zero since FNT and friends don't define `face->units_per_EM'). 1.5658 + 1.5659 +2003-05-15 David Turner <david@freetype.org> 1.5660 + 1.5661 + * src/base/fttrigon.c (FT_Vector_Rotate): Avoid rounding errors 1.5662 + for small values. 1.5663 + 1.5664 +2003-05-15 Werner Lemberg <wl@gnu.org> 1.5665 + 1.5666 + * src/autohint/ahtypes.h (AH_PointRec): Remove unused `in_angle' 1.5667 + and `out_angle' fields. 1.5668 + 1.5669 +2003-05-14 George Williams <gww@silcom.com> 1.5670 + 1.5671 + * src/base/ftmac.c (FT_New_Face_From_SFNT): Handle CFF files also. 1.5672 + 1.5673 +2003-05-14 Werner Lemberg <wl@gnu.org> 1.5674 + 1.5675 + * include/freetype/freetype.h: Fix typo in comment 1.5676 + (FT_HAS_FIXED_SIZES). 1.5677 + 1.5678 +2003-05-10 Dan Williams <dan@bigw.org> 1.5679 + 1.5680 + * builds/unix/aclocal.m4: Comment out definition of 1.5681 + `allow_undefined_flag' for Darwin 1.3. 1.5682 + * builds/unix/configure.ac: Add option --with-old-mac-fonts. 1.5683 + * builds/unix/ltmain.sh: Fix version numbering for Darwin 1.3. 1.5684 + * builds/unix/configure: Regenerated. 1.5685 + 1.5686 + * include/freetype/config/ftconfig.h: Fix conditions for defining 1.5687 + `FT_MACINTOSH'. 1.5688 + * src/base/ftbase.c: Include `ftmac.c' conditionally. 1.5689 + * src/base/ftmac.c: Handle __GNUC__. 1.5690 + 1.5691 +2003-05-07 YAMANO-UCHI Hidetoshi <mer@din.or.jp> 1.5692 + 1.5693 + * src/cid/cidload.c (is_alpha): Removed. 1.5694 + (cid_parse_dict): Use `cid_parser_skip_alpha' instead of `is_alpha'. 1.5695 + 1.5696 +2003-05-07 Werner Lemberg <wl@gnu.org> 1.5697 + 1.5698 + * src/autohint/ahoptim.c, src/autohint/ahoptim.h: Obsolete, removed. 1.5699 + 1.5700 +2003-05-07 David Turner <david@freetype.org> 1.5701 + 1.5702 + * src/autohint/ahglyph.c (ah_setup_uv): Exchange `for' loop and 1.5703 + `switch' statement to make it run faster. 1.5704 + (ah_outline_compute_segments): Reset `segment->score' and 1.5705 + `segment->link'. 1.5706 + (ah_outline_link_segments): Provide alternative code which does 1.5707 + the same but runs much faster. 1.5708 + Handle major direction also. 1.5709 + (ah_outline_compute_edges): Scale `edge_distance_threshold' down 1.5710 + after rounding instead of scaling comparison value in loop. 1.5711 + 1.5712 + * src/autohint/ahhint.c (ah_hinter_align_stong_points): Provide 1.5713 + alternative code which runs faster. 1.5714 + Handle `before->scale == 0'. 1.5715 + 1.5716 + * src/autohint/ahtypes.h (AH_SegmentRec): Move some fields down. 1.5717 + (AH_EdgeRec): Move some fields in structure. 1.5718 + New field `scale'. 1.5719 + 1.5720 + * src/sfnt/ttcmap0.c (tt_cmap4_char_next): Use binary search. 1.5721 + 1.5722 +2003-05-02 Werner Lemberg <wl@gnu.org> 1.5723 + 1.5724 + * src/autohint/ahoptim.c (LOG): Renamed to... 1.5725 + (AH_OPTIM_LOG): This. 1.5726 + (AH_Dump_Springs): Fix log message format. 1.5727 + 1.5728 + * src/autohint/ahhint.c (ah_hint_edges_3): Renamed to... 1.5729 + (ah_hint_edges): This. 1.5730 + 1.5731 +2002-05-02 Keith Packard <keithp@keithp.com> 1.5732 + 1.5733 + * src/bdf/bdfdrivr.c (BDF_Set_Pixel_Size): Initialize `max_advance'. 1.5734 + 1.5735 +2003-05-01 Werner Lemberg <wl@gnu.org> 1.5736 + 1.5737 + * src/autohint/ahglyph.c (ah_test_extrema): Renamed to... 1.5738 + (ah_test_extremum): This. 1.5739 + 1.5740 +2003-04-28 Werner Lemberg <wl@gnu.org> 1.5741 + 1.5742 + * builds/unix/configure.ac: Generate `freetype.pc' from 1.5743 + `freetype.in'. 1.5744 + * builds/unix/configure: Regenerated. 1.5745 + * builds/unix/install.mk (install, uninstall): Handle `freetype.pc'. 1.5746 + 1.5747 +2003-04-28 Gustavo J. A. M. Carneiro <gjc@inescporto.pt> 1.5748 + 1.5749 + * builds/unix/freetype2.in: New file. Contains building information 1.5750 + for the `pkg-config' package. 1.5751 + 1.5752 +2003-04-28 David Turner <david@freetype.org> 1.5753 + 1.5754 + * src/base/ftobjs.c (FT_Load_Glyph): Fix boundary check for 1.5755 + `glyph_index'. 1.5756 + 1.5757 +2003-04-25: Graham Asher <graham.asher@btinternet.com> 1.5758 + 1.5759 + Added the optional unpatented hinting system for TrueType. It 1.5760 + allows typefaces which need hinting to produce correct glyph forms 1.5761 + (e.g., Chinese typefaces from Dynalab) to work acceptably without 1.5762 + infringing Apple patents. This system is compiled only if 1.5763 + TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING is defined in 1.5764 + ftoption.h. 1.5765 + 1.5766 + * include/freetype/ttunpat.h: New file. Defines 1.5767 + FT_PARAM_TAG_UNPATENTED_HINTING. 1.5768 + 1.5769 + * include/freetype/config/ftheader.h (FT_TRUETYPE_UNPATENTED_H): New 1.5770 + macro to use when including ttunpat.h. 1.5771 + 1.5772 + * include/freetype/config/ftoption.h 1.5773 + (TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING, 1.5774 + TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING): New configuration macros 1.5775 + (not defined, but in comments) for the unpatented hinting system. 1.5776 + 1.5777 + * include/freetype/internal/tttypes.h (TT_FaceRec) 1.5778 + [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: New element `FT_Bool 1.5779 + unpatented_hinting'. 1.5780 + 1.5781 + * src/truetype/ttinterp.c (NO_APPLE_PATENT, APPLE_THRESHOLD): 1.5782 + Removed. 1.5783 + (GUESS_VECTOR): New macro. 1.5784 + (TT_Run_Context) [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: 1.5785 + Set `both_x_axis'. 1.5786 + (tt_default_graphics_state) 1.5787 + [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Updated. 1.5788 + (Current_Ratio) [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: 1.5789 + Handle `unpatented_hinting'. 1.5790 + (Direct_Move) [NO_APPLE_PATENT]: Removed. 1.5791 + [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Insert assertion. 1.5792 + (Project, FreeProject) 1.5793 + [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Insert assertion. 1.5794 + (Compute_Funcs) [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: 1.5795 + Implement unpatented hinting. 1.5796 + (DO_SPVTCA, DO_SFVTCA, DO_SPVTL, DO_SFVTL, DO_SPVFS, DO_SFVFS, 1.5797 + Ins_SDPVTL): Call `GUESS_VECTOR'. 1.5798 + (DO_GPV, DO_GFV) [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: 1.5799 + Handle `unpatented_hinting'. 1.5800 + (Compute_Point_Displacement) [NO_APPLE_PATENT]: Removed. 1.5801 + [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Implement unpatented 1.5802 + hinting. 1.5803 + (Move_Zp2_Point, Ins_SHPIX, Ins_DELTAP, Ins_DELTAC) 1.5804 + [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Implement unpatented 1.5805 + hinting. 1.5806 + (TT_RunIns): Updated. 1.5807 + 1.5808 + * src/truetype/ttobjs.c 1.5809 + [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Include 1.5810 + FT_TRUETYPE_UNPATENTED_H. 1.5811 + (tt_face_init) [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING, 1.5812 + TT_CONFIG_OPTION_FORCE_UNPATENTED_HINTING]: Check 1.5813 + FT_PARAM_TAG_UNPATENTED_HINTING. 1.5814 + 1.5815 + * src/truetype/ttobjs.h (TT_GraphicsState) 1.5816 + [TT_CONFIG_OPTION_COMPILE_UNPATENTED_HINTING]: Add `both_x_axis'. 1.5817 + 1.5818 +2003-04-25 Werner Lemberg <wl@gnu.org> 1.5819 + 1.5820 + * src/bdf/bdflib.c (hash_bucket, hash_lookup): Use `const' for first 1.5821 + argument. 1.5822 + (bdf_get_font_property): Use `const' for third argument. 1.5823 + Updated all callers. 1.5824 + * src/bdf/bdfdrivr.c (BDF_Face_Init): Set pixel width and height 1.5825 + similar to the PCF driver. 1.5826 + * src/bdf/bdf.h (_hashnode): Use `const' for `key'. 1.5827 + Updated. 1.5828 + 1.5829 + * src/gzip/ftgzip.c: C++ doesn't like that the array `inflate_mask' 1.5830 + is declared twice. It is perhaps better to modify the zlib source 1.5831 + files directly instead of this hack. 1.5832 + (zcalloc, zfree, ft_gzip_stream_close, ft_gzip_stream_io): Add casts 1.5833 + to make build with g++ successful. 1.5834 + 1.5835 +2003-04-24 Manish Singh <yosh@gimp.org> 1.5836 + 1.5837 + * src/cid/cidobjs.c (cid_face_init), src/type1/t1objs.c 1.5838 + (T1_Face_Init), src/type42/t42objs.c (T42_Face_Init): Split on `-' 1.5839 + also for searching the style name. 1.5840 + 1.5841 +2003-04-24 David Turner <david@freetype.org> 1.5842 + 1.5843 + * src/pcf/pcfread.c (pcf_load_font): Fixed the computation of 1.5844 + face->num_glyphs. We must increase the value by 1 to respect the 1.5845 + convention that glyph index 0 always corresponds to the `missing 1.5846 + glyph'. 1.5847 + 1.5848 +2003-04-24 Werner Lemberg <wl@gnu.org> 1.5849 + 1.5850 + * builds/unix/unix-cc.in (CFLAGS): Add @CPPFLAGS@. 1.5851 + 1.5852 +2003-04-24 Dieter Baron <dillo@netbsd.org> 1.5853 + 1.5854 + * builds/unix/freetype-config.in (cflags): Emit FreeType 2's include 1.5855 + files first. Otherwise there are conflicts with FreeType 1 1.5856 + installed simultaneously. 1.5857 + 1.5858 +2003-04-23 Werner Lemberg <wl@gnu.org> 1.5859 + 1.5860 + Fixing bugs reported by Nelson Beebe. 1.5861 + 1.5862 + * src/base/ftstroker.c (FT_Stroker_ParseOutline): Remove unused 1.5863 + variable `in_path'. 1.5864 + 1.5865 + * src/base/ftobjs (ft_glyphslot_set_bitmap): Change type of 1.5866 + second argument to `FT_Byte*'. 1.5867 + * include/freetype/internal/ftobjs.h: Updated. 1.5868 + 1.5869 + * src/bdf/bdflib.c (_bdf_readstream): Remove unused variable `res'. 1.5870 + (_bdf_parse_glyphs): Remove unused variable `next'. 1.5871 + Mark `call_data' as unused. 1.5872 + 1.5873 + * src/cache/ftlru.c (FT_LruList_Lookup): Remove unused variable 1.5874 + `plast'. 1.5875 + 1.5876 + * src/pcf/pcfread.c (pcf_seek_to_table_type): Slight recoding to 1.5877 + actually use `error'. 1.5878 + (pcf_load_font): Remove unused variable `avgw'. 1.5879 + 1.5880 + * src/pfr/pfrobjs.c (pfr_face_get_kerning): Change return type 1.5881 + to `void'. 1.5882 + Mark `error' as unused. 1.5883 + * src/pfr/pfrobjs.h: Updated. 1.5884 + * src/pfr/pfrdrivr.c (pfr_get_kerning): Updated. 1.5885 + 1.5886 + * src/sfnt/ttload.c (sfnt_dir_check): Remove unused variable 1.5887 + `format_tag'. 1.5888 + 1.5889 + * src/sfnt/ttcmap0.c (tt_cmap6_validate, tt_cmap10_validate): Remove 1.5890 + unused variable `start'. 1.5891 + (tt_cmap10_char_next): Remove unused variable `result' 1.5892 + 1.5893 + * src/sfnt/sfobjs.c (tt_face_get_name): Mark `error' as unused. 1.5894 + 1.5895 + * src/sfnt/sfdriver.c (get_sfnt_postscript_name): Mark `error' as 1.5896 + unused. 1.5897 + 1.5898 + * src/type1/t1objs.c (T1_Face_Init): Remove unused variable 1.5899 + `pshinter'. 1.5900 + 1.5901 + * src/type1/t1gload.c (T1_Load_Glyph): Use `glyph_data_loaded' 1.5902 + only for FT_CONFIG_OPTION_INCREMENTAL. 1.5903 + 1.5904 +2003-04-23 Akito Hirai <akito@kde.gr.jp> 1.5905 + 1.5906 + * src/sfnt/ttcmap0.c (tt_cmap4_validate): Provide a weak variant 1.5907 + of the glyph ID bounding check if FT_VALIDATE_TIGHT is not active. 1.5908 + Without this change, many CJK fonts from Dynalab are rejected. 1.5909 + 1.5910 +2003-04-23 Joe Marcus Clarke <marcus@FreeBSD.org> 1.5911 + 1.5912 + * src/base/ftbdf.c (FT_Get_BDF_Property): Check for valid 1.5913 + `get_interface'. 1.5914 + 1.5915 +2003-04-23 Paul Miller <paulm@profoundeffects.com> 1.5916 + 1.5917 + * src/base/ftmac.c (parse_fond): Fix handling of style names. 1.5918 + 1.5919 +2003-04-23 Werner Lemberg <wl@gnu.org> 1.5920 + 1.5921 + * src/pfr/pfrload.c (pfr_extra_item_load_font_id): Use FT_PtrDist 1.5922 + instead of FT_Uint for `len'. 1.5923 + 1.5924 +2003-04-22 Werner Lemberg <wl@gnu.org> 1.5925 + 1.5926 + * src/gzip/ftgzip.c (zcalloc) [!FT_CONFIG_OPTION_SYSTEM_ZLIB]: 1.5927 + Convert K&R format to modern C usage. 1.5928 + (FT_Stream_OpenGzip): Use long constant. 1.5929 + 1.5930 +2003-04-21 Werner Lemberg <wl@gnu.org> 1.5931 + 1.5932 + * src/cache/ftccache.c (ftc_cache_lookup): Remove shadow declaration 1.5933 + of `manager'. 1.5934 + 1.5935 +2003-04-20 Werner Lemberg <wl@gnu.org> 1.5936 + 1.5937 + * doc/INSTALL.UNX: Cleaned up. 1.5938 + 1.5939 +2003-04-09 Torrey Lyons <torrey@mrcla.com> 1.5940 + 1.5941 + * src/base/ftmac.c (open_face_from_buffer): Removed a double-free 1.5942 + bug that had nasty consequences when trying to open an `invalid' 1.5943 + font on a Mac. 1.5944 + 1.5945 +2003-04-09 Mike Fabian <mfabian@suse.de> 1.5946 + 1.5947 + * src/bdf/bdfdrivr.h (BDF_encoding_el), src/pcf/pcf.h 1.5948 + (PCF_EncodingRec): Changed FT_Short to FT_UShort in order to be able 1.5949 + to access more than 32768 glyphs in fonts. 1.5950 + 1.5951 +2003-04-08 David Turner <david@freetype.org> 1.5952 + 1.5953 + 1.5954 + * Version 2.1.4 released. 1.5955 + ========================= 1.5956 + 1.5957 + 1.5958 +2003-04-03 Martin Muskens <mmuskens@aurelon.com> 1.5959 + 1.5960 + * src/type1/t1load.c (T1_Open_Face): Fixed the code to make it 1.5961 + handle special cases where a font only contains a `.notdef' glyph 1.5962 + (happens in PDF-embedded fonts). Otherwise, FT_Panic was called. 1.5963 + 1.5964 +2003-03-27 David Turner <david@freetype.org> 1.5965 + 1.5966 + * README: Udpated. 1.5967 + 1.5968 + * README.UNX: Removed (now replaced by docs/INSTALL.UNX). 1.5969 + 1.5970 + * src/pshinter/pshalgo3.c: The hinter now performs as in 2.1.3 and 1.5971 + will ignore stem quantization only when FT_LOAD_TARGET_SMOOTH is 1.5972 + used. 1.5973 + (psh3_dimension_quantize_len): Enabled. 1.5974 + (psh3_hint_align): Enable commented code. 1.5975 + (psh3_hint_align_light): Commented out. 1.5976 + 1.5977 + * src/base/ftobjs.c (FT_Set_Char_Size): Changed the default 1.5978 + computations to include rounding in all cases; this is required to 1.5979 + provide accurate kerning data when native TrueType hinting is 1.5980 + enabled. 1.5981 + 1.5982 + * src/type1/t1load.c (is_name_char): The Type 1 loader now accepts 1.5983 + more general names according to the PostScript specification (the 1.5984 + previous one was too restrictive). 1.5985 + (parse_font_name, parse_encoding, parse_charstrings, parse_dict): 1.5986 + Use `is_name_char'. 1.5987 + (parse_subrs): Handle empty arrays. 1.5988 + 1.5989 +2003-03-20 David Turner <david@freetype.org> 1.5990 + 1.5991 + Serious rewriting of the documentation. 1.5992 + 1.5993 + * docs/BUGS, docs/BUILD: Removed. 1.5994 + * docs/DEBUG.TXT: Renamed to... 1.5995 + * docs/DEBUG: This. 1.5996 + * docs/CUSTOMIZE, docs/TRUETYPE, docs/UPGRADE.UNX: New files. 1.5997 + * docs/INSTALL.ANY, docs/INSTALL.UNX, docs/INSTALL.GNU New files, 1.5998 + containing platform specific information previously in INSTALL. 1.5999 + * docs/readme.vms: Renamed to... 1.6000 + * docs/INSTALL.VMS: This. 1.6001 + 1.6002 + * docs/*: Updated. 1.6003 + 1.6004 + Introduced three new functions to deal with glyph bitmaps within 1.6005 + FT_GlyphSlot objects: 1.6006 + 1.6007 + ft_glyphslot_free_bitmap 1.6008 + ft_glyphslot_alloc_bitmap 1.6009 + ft_glyphslot_set_bitmap 1.6010 + 1.6011 + These functions are much more convenient to use than managing the 1.6012 + FT_GLYPH_OWN_BITMAP flag manually. 1.6013 + 1.6014 + * include/freetype/internal/ftobjs.h (ft_glyphslot_free_bitmap, 1.6015 + ft_glyphslot_alloc_bitmap, ft_glyphslot_set_bitmap): New functions. 1.6016 + * src/base/ftobjs.c: Implement them. 1.6017 + (ft_glyphslot_done): Use ft_glyphslot_free_bitmap. 1.6018 + 1.6019 + * src/bdf/bdfdrivr.c (BDF_Glyph_Load), src/pcf/pcfdriver.c 1.6020 + (PCF_Glyph_Load): Remove unused variable `memory'. 1.6021 + Use `ft_glyphslot_*' functions. 1.6022 + Don't set `FT_GLYPH_OWN_BITMAP'. 1.6023 + 1.6024 + * src/pfr/pfrsbit.c (pfr_slot_load_bitmap): Use 1.6025 + `ft_glyphslot_alloc_bitmap'. 1.6026 + 1.6027 + * src/sfnt/ttsbit.c (Load_SBit_Image): Change 5th argument to type 1.6028 + `FT_GlyphSlot'. 1.6029 + Adding argument `depth' to handle recursive calls. 1.6030 + Use `ft_glyphslot_alloc_bitmap'. 1.6031 + (tt_face_load_sbit_image): Remove unused variable `memory'. 1.6032 + Don't handle `FT_GLYPH_OWN_BITMAP'. 1.6033 + Update call to Load_SBit_Image. 1.6034 + 1.6035 + * src/type42/t42objs.c (ft_glyphslot_clear): Renamed to... 1.6036 + (t42_glyphslot_clear): This. Updated caller. 1.6037 + Call `ft_glyphslot_free_bitmap'. 1.6038 + 1.6039 + * src/winfonts/winfnt.c (FNT_Load_Glyph): Use 1.6040 + `ft_glyphslot_set_bitmap'. 1.6041 + Don't handle `FT_GLYPH_OWN_BITMAP'. 1.6042 + 1.6043 + * src/cache/ftlru.c (FT_LruList_Lookup): Fixed an invalid assertion 1.6044 + check. 1.6045 + 1.6046 + * src/autohint/ahglyph.c (ah_outline_load): Add two scaling 1.6047 + arguments. 1.6048 + * src/autohint/ahglyph.h: Updated. 1.6049 + * src/autohint/ahhint.c (ah_hinter_load): Updated. 1.6050 + * src/autohint/ahglobal.c (ah_hinter_compute_widths): Updated. 1.6051 + 1.6052 + * src/cache/ftccache.c (ftc_family_done): Fixed small bug that could 1.6053 + crash the cache in rare circumstances (mostly with broken fonts). 1.6054 + 1.6055 +2003-03-15 David Turner <david@freetype.org> 1.6056 + 1.6057 + * src/truetype/ttdriver.c (Set_Char_Sizes): Fixed a small rounding 1.6058 + bug. Actually, it seems that previous versions of FreeType didn't 1.6059 + perform TrueType rounding exactly as appropriate. 1.6060 + 1.6061 +2003-03-14 David Turner <david@freetype.org> 1.6062 + 1.6063 + * src/truetype/ttdriver.c (Set_Char_Sizes): Fixing the small 1.6064 + TrueType native rendering glitches; they came from a small rounding 1.6065 + error. 1.6066 + 1.6067 +2003-03-13 David Turner <david@freetype.org> 1.6068 + 1.6069 + Added new environment variables to control memory debugging with 1.6070 + FreeType. See the description of `FT2_DEBUG_MEMORY', 1.6071 + `FT2_ALLOC_TOTAL_MAX' and `FT2_ALLOC_COUNT_MAX' in DEBUG.TXT. 1.6072 + 1.6073 + * src/base/ftdbgmem.c (FT_MemTableRec): Add `alloc_count', 1.6074 + `bound_total', `alloc_total_max', `bound_count', `alloc_count_max'. 1.6075 + (ft_mem_debug_alloc): Handle new variables. 1.6076 + (ft_mem_debug_init): s/FT_DEBUG_MEMORY/FT2_DEBUG_MEMORY/. 1.6077 + Handle new environment variables. 1.6078 + * docs/DEBUG.TXT: Updated. 1.6079 + 1.6080 + Fixed the cache sub-system to correctly deal with out-of-memory 1.6081 + conditions. 1.6082 + 1.6083 + * src/cache/ftccache.c (ftc_node_destroy): Comment out generic 1.6084 + check. 1.6085 + (ftc_cache_lookup): Implement loop. 1.6086 + * src/cache/ftccmap.c: Define FT_COMPONENT. 1.6087 + * src/cache/ftcsbits.c (ftc_sbit_node_load): Handle 1.6088 + FT_Err_Out_Of_Memory. 1.6089 + * src/cache/ftlru.c: Include FT_INTERNAL_DEBUG_H. 1.6090 + (FT_LruList_Lookup): Implement loop. 1.6091 + 1.6092 + * src/pfr/pfrobjs.c (pfr_face_done): Fix memory leak. 1.6093 + (pfr_face_init): Fixing compiler warnings. 1.6094 + 1.6095 + * src/psaux/psobjs.c (reallocate_t1_table): Fixed a bug (memory 1.6096 + leak) that only happened when a try to resize an array would end in 1.6097 + an out-of-memory condition. 1.6098 + 1.6099 + * src/smooth/ftgrays.c (gray_convert_glyph): Removed compiler 1.6100 + warnings / volatile bug. 1.6101 + 1.6102 + * src/truetype/ttobjs.c (tt_glyphzone_done): Removed segmentation 1.6103 + fault that happened in tight memory environments. 1.6104 + 1.6105 +2003-02-28 Pixel <pixel@mandrakesoft.com> 1.6106 + 1.6107 + * src/gzip/ftgzip.c (ft_gzip_file_done): Fixed memory leak: The ZLib 1.6108 + stream was not properly finalized. 1.6109 + 1.6110 +2003-02-25 Anthony Fok <anthony@thizlinux.com> 1.6111 + 1.6112 + * src/cache/ftccmap.c: Include FT_TRUETYPE_IDS_H. 1.6113 + (ftc_cmap_family_init): The cmap cache now 1.6114 + supports UCS-4 charmaps when available in Asian fonts. 1.6115 + 1.6116 + * src/sfnt/ttload.c, src/base/ftobjs.c: Changed `asian' to `Asian' 1.6117 + in comments. 1.6118 + 1.6119 +2003-02-25 David Turner <david@freetype.org> 1.6120 + 1.6121 + * src/gzip/ftgzip.c (ft_gzip_file_fill_output): Fixed a bug that 1.6122 + caused FreeType to loop endlessly when trying to read certain 1.6123 + compressed gzip files. The following test reveals the bug: 1.6124 + 1.6125 + touch 0123456789 ; gzip 0123456789 ; ftdump 0123456789.gz 1.6126 + 1.6127 + Several fixes to the PFR font driver: 1.6128 + 1.6129 + - The list of available embedded bitmaps was not correctly set in 1.6130 + the root FT_FaceRec structure describing the face. 1.6131 + 1.6132 + - The glyph loader always tried to load the outlines when 1.6133 + FT_LOAD_SBITS_ONLY was specified. 1.6134 + 1.6135 + - The table loaded now scans for *undocumented* elements of a 1.6136 + physical font's auxiliary data record. This is necessary to 1.6137 + retrieve the `real' family and style names. 1.6138 + 1.6139 + NOTE THAT THESE CHANGES THE FAMILY NAME OF MANY PFR FONTS! 1.6140 + 1.6141 + * src/pfr/pfrload.c (pfr_aux_name_load): New function. 1.6142 + (pfr_phy_font_done): Free `family_name' and `style_name' also. 1.6143 + Remove unused variables. 1.6144 + (pfr_phy_font_load): Extract useful information from the auxiliary 1.6145 + bytes. 1.6146 + 1.6147 + * src/pfr/pfrobjs.c (pfr_face_done): Set pointers to NULL. 1.6148 + (pfr_face_init): Provide fallback values for `family_name' and 1.6149 + `style_name'. 1.6150 + Handle strikes. 1.6151 + (pfr_slot_load): Handle FT_LOAD_SBITS_ONLY. 1.6152 + * src/pfr/pfrtypes.h (PFR_PhyFontRec): Add fields `ascent', 1.6153 + `descent', `leading', `family_name', and `style_name'. 1.6154 + 1.6155 + * src/truetype/ttdriver.c (Set_Char_Sizes): Fixed a rounding bug 1.6156 + when computing the scale factors for a given character size in 1.6157 + points with resolution. 1.6158 + 1.6159 + * devel/ft2build.h, devel/ftoption.h: New files (in a new directory) 1.6160 + which are special development versions of include/ft2build.h and 1.6161 + include/freetype/config/ftoption.h, respectively. 1.6162 + 1.6163 +2003-02-18 David Turner <david@freetype.org> 1.6164 + 1.6165 + Fixing the slight distortion problem that occurred due to the latest 1.6166 + auto-hinter changes. 1.6167 + 1.6168 + * src/base/ftobjs.c (ft_recompute_scaled_metrics): Fix rounding. 1.6169 + 1.6170 + * src/truetype/ttdriver.c (Set_Char_Sizes): New variable `metrics2'. 1.6171 + [!TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Removed. 1.6172 + 1.6173 + * src/truetype/ttobjs.h (TT_SizeRec): New field `metrics'. 1.6174 + * src/truetype/ttobjs.c (Reset_Outline_Size): Fix initialization of 1.6175 + `metrics'. 1.6176 + [FT_CONFIG_CHESTER_ASCENDER]: Code removed. 1.6177 + (Reset_SBit_Size): Fix initialization of `metrics'. 1.6178 + 1.6179 + * src/truetype/ttinterp.c (TT_Load_Context): Fix initialization of 1.6180 + `exec->metrics'. 1.6181 + 1.6182 + * src/autohint/ahhint.c (ah_hinter_load): Disabled the advance width 1.6183 + `correction' which seemed to provide more trouble than benefits. 1.6184 + 1.6185 +2003-02-13 Graham Asher <graham.asher@btinternet.com> 1.6186 + 1.6187 + Changed the incremental loading interface in a way that makes it 1.6188 + simpler and allows glyph metrics to be changed (e.g., by adding a 1.6189 + constant, as required by CFF fonts) rather than just overridden. 1.6190 + This was required to make the GhostScript-to-FreeType bridge work. 1.6191 + 1.6192 + * src/cff/cffgload.c (cff_slot_load) [FT_CONFIG_OPTION_INCREMENTAL]: 1.6193 + Allow metrics to be overridden. 1.6194 + * src/cid/cidgload.c (cid_load_glyph) [FT_CONFIG_OPTION_INCREMENTAL]: 1.6195 + Ditto. 1.6196 + 1.6197 + * src/truetype/ttgload.c (load_truetype_glyph) 1.6198 + [FT_CONFIG_OPTION_INCREMENTAL]: Simplify. 1.6199 + (compute_glyph_metrics) [FT_CONFIG_OPTION_INCREMENTAL]: Code block 1.6200 + moved down. 1.6201 + 1.6202 + * src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String) 1.6203 + [FT_CONFIG_OPTION_INCREMENTAL]: Updated. 1.6204 + 1.6205 + * include/freetype/ftincrem.h: Updated. 1.6206 + 1.6207 +2003-01-31 David Turner <david@freetype.org> 1.6208 + 1.6209 + * docs/CHANGES, docs/VERSION.DLL, docs/TODO: Updating documentation 1.6210 + for the 2.1.4 release. 1.6211 + 1.6212 + * builds/win32/visualc/freetype.dsp, 1.6213 + builds/win32/visualc/index.html: Updating the project file for 1.6214 + 2.1.4. 1.6215 + 1.6216 + * src/gzip/adler32.c, src/gzip/ftgzip.c, src/gzip/infblock.c, 1.6217 + src/gzip/infcodes.c, src/gzip/inflate.c, src/gzip/inftrees.c, 1.6218 + src/gzip/infutil.c: Removed old-style (K&R)function definitions. 1.6219 + This avoids warnings with Visual C++ at its most pedantic mode. 1.6220 + 1.6221 + * src/pfr/pfrsbit.c: Removed compiler warnings. 1.6222 + 1.6223 + * src/cache/ftccmap.c (ftc_cmap_family_init): Changed an FT_ERROR 1.6224 + into an FT_TRACE1 since it caused `ftview' and others to dump too 1.6225 + much junk when trying to display a waterfall with a font without a 1.6226 + Unicode charmap (e.g. SYMBOL.TTF). 1.6227 + 1.6228 + Implemented FT_CONFIG_CHESTER_BLUE_SCALE, corresponding to the last 1.6229 + patch from David Chester, but with a much simpler (and saner) 1.6230 + implementation. 1.6231 + 1.6232 + * src/autohint/ahhint.c (ah_hinter_load_glyph) 1.6233 + [FT_CONFIG_CHESTER_BLUE_SCALE]: Try to optimize the y_scale so that 1.6234 + the top of non-capital letters is aligned on a pixel boundary 1.6235 + whenever possible. 1.6236 + 1.6237 + * src/base/ftobjs.c (FT_Set_Char_Size) 1.6238 + [FT_CONFIG_CHESTER_BLUE_SCALE]: Round differently. 1.6239 + * src/truetype/ttdriver.c (Set_Char_Sizes) 1.6240 + [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Do some rounding only 1.6241 + if this macro is defined. 1.6242 + 1.6243 + * src/truetype/ttobjs.c (Reset_Outline_Size) 1.6244 + [FT_CONFIG_CHESTER_ASCENDER]: Round differently. 1.6245 + 1.6246 + * src/pshinter/pshalgo3.c: Improved the Postscript hinter. Getting 1.6247 + rid of stem snapping seems to work well here (though the stems are 1.6248 + still slightly moved to increase contrast). 1.6249 + (psh3_dimension_quantize_len): Commented out. 1.6250 + (psh3_hint_align_light): New function. 1.6251 + (psh3_hint_align): Comment out some code. 1.6252 + 1.6253 + THIS IMPROVES ANTI-ALIASED RENDERING, BUT MONOCHROME AND LCD MODES 1.6254 + STILL SUCK. 1.6255 + 1.6256 +2003-01-22 David Chester <davidchester@qmx.net> 1.6257 + 1.6258 + * src/autohint/ahhint.c (ah_compute_stem_width): Small fix to the 1.6259 + stem width optimization. 1.6260 + 1.6261 +2003-01-22 David Turner <david@freetype.org> 1.6262 + 1.6263 + Adding a new API `FT_Get_BDF_Property' to retrieve the BDF 1.6264 + properties of a given PCF or BDF font. 1.6265 + 1.6266 + * include/freetype/ftbdf.h (FT_PropertyType): New enumeration. 1.6267 + (BDF_Property, BDF_PropertyRec): New structure. 1.6268 + FT_Get_BDF_Property): New function. 1.6269 + * include/freetype/internal/bdftypes.h: Include FT_BDF_H. 1.6270 + (BDF_GetPropertyFunc): New function pointer. 1.6271 + 1.6272 + * src/base/ftbdf.c (test_font_type): New helper function. 1.6273 + (FT_Get_BDF_Charset_ID): Use `test_font_type'. 1.6274 + (FT_Get_BDF_Property): New function. 1.6275 + 1.6276 + * src/bdf/bdfdrivr.c: Include FT_BDF_H. 1.6277 + (bdf_get_bdf_property, bdf_driver_requester): New functions. 1.6278 + (bdf_driver_class): Use `bdf_driver_requester'. 1.6279 + 1.6280 + * src/pcf/pcfdrivr.c: Include FT_BDF_H. 1.6281 + (pcf_get_bdf_property, pdc_driver_requester): New functions 1.6282 + (pcf_driver_class): Use `pcf_driver_requester'. 1.6283 + 1.6284 + * src/pcf/pcfread.c: Include `pcfread.h'. 1.6285 + (pcf_find_property): Decorate it with FT_LOCAL_DEF. 1.6286 + * src/pcf/pcfread.h: New file, providing `pcf_find_property'. 1.6287 + 1.6288 + * src/sfnt/ttload.c (sfnt_dir_check): Relaxed the `head' table size 1.6289 + verification to accept a few broken fonts who pad the size 1.6290 + incorrectly (the table should be padded, but its `size' field 1.6291 + shouldn't according to the specification). 1.6292 + 1.6293 +2003-01-18 Werner Lemberg <wl@gnu.org> 1.6294 + 1.6295 + * builds/unix/ltmain.sh: Regenerated with `libtoolize --force 1.6296 + --copy' from libtool 1.4.3. 1.6297 + * builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from 1.6298 + automake 1.7.1. 1.6299 + * builds/unix/configure: Regenerated with autoconf 2.54. 1.6300 + * builds/unix/config.guess, builds/unix/config.sub: Updated from 1.6301 + `config' CVS module at subversions.gnu.org. 1.6302 + * builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from 1.6303 + `automake' CVS module at subversions.gnu.org. 1.6304 + 1.6305 +2003-01-15 David Turner <david@freetype.org> 1.6306 + 1.6307 + * include/freetype/freetype.h: Fixed documentation for 1.6308 + FT_Size_Metrics. 1.6309 + 1.6310 +2003-01-15 James Su <suzhe@turbolinux.com.cn> 1.6311 + 1.6312 + * src/gzip/ftgzip.c (ft_gzip_check_header): Bugfix: couldn't read 1.6313 + certain gzip-ed font files (typo: `&&' -> `&'). 1.6314 + 1.6315 +2003-01-15 Huw D M Davies <h.davies1@physics.ox.ac.uk> 1.6316 + 1.6317 + Added a Windows .FNT specific API (mostly for Wine). Also fixed a 1.6318 + nasty bug in the header loader which would cause invalid memory 1.6319 + overwrites. 1.6320 + 1.6321 + * include/freetype/config/ftheader.h (FT_WINFONTS_H): New macro 1.6322 + for ftwinfnt.h. 1.6323 + * include/freetype/internal/fnttypes.h: Include FT_WINFONTS_H. 1.6324 + (FNT_FontRec): Updated. 1.6325 + Move Windows FNT definition to... 1.6326 + * include/freetype/ftwinfnt.h: This new file. 1.6327 + (FT_WinFNT_HeaderRec): Rename `reserved2' to `reserved1'. 1.6328 + * src/base/ftwinfnt.c: New file, providing `FT_Get_WinFNT_Header'. 1.6329 + * src/winfonts/winfnt.c (winfnt_header_fields): Updated. 1.6330 + Rename `reserved2' to `reserved1'. 1.6331 + (fnt_font_load): Updated. 1.6332 + 1.6333 + * src/base/Jamfile, src/base/descrip.mms, src/base/rules.mk: 1.6334 + Updated. 1.6335 + 1.6336 +2003-01-14 Graham Asher <graham.asher@btinternet.com> 1.6337 + 1.6338 + * include/freetype/ftglyph.h, src/base/ftglyph.c: Added `const' to 1.6339 + the type of the first argument to FT_Matrix_Multiply, which isn't 1.6340 + changed -- this adds documentation and convenience. 1.6341 + 1.6342 +2003-01-13 Graham Asher <graham.asher@btinternet.com> 1.6343 + 1.6344 + * src/sfnt/ttload.c (tt_face_load_metrics) 1.6345 + [FT_CONFIG_OPTION_INCREMENTAL]: TrueType typefaces without 1.6346 + horizontal metrics (without the `hmtx' table) are now tolerated if 1.6347 + an incremental interface has been specified that has a 1.6348 + get_glyph_metrics function, implying that metrics will be supplied 1.6349 + from outside. This happens for certain Type 42 fonts passed from 1.6350 + GhostScript. 1.6351 + 1.6352 +2003-01-11 David Chester <davidchester@qmx.net> 1.6353 + 1.6354 + Patches to the auto-hinter in order to slightly improve the output. 1.6355 + Note that everything is controlled through the new 1.6356 + FT_CONFIG_OPTION_CHESTER_HINTS defined in `ftoption.h'. There are 1.6357 + also individual FT_CONFIG_CHESTER_XXX macros to control individual 1.6358 + `features'. 1.6359 + 1.6360 + Note that all improvements are enabled by default, but can be 1.6361 + tweaked for optimization and testing purposes. The configuration 1.6362 + macros will most likely disappear in the short future. 1.6363 + 1.6364 + * include/freetype/config/ftoption.h 1.6365 + (FT_CONFIG_OPTION_CHESTER_HINTS): New macro. 1.6366 + (FT_CONFIG_CHESTER_{SMALL_F,ASCENDER,SERIF,STEM,BLUE_SCALE}) 1.6367 + [FT_CONFIG_OPTION_CHESTER_HINTS]: New macros to control individual 1.6368 + features. 1.6369 + 1.6370 + * src/autohint/ahglobal.c (blue_chars) [FT_CONFIG_CHESTER_SMALL_F]: 1.6371 + Add blue zone for `fijkdbh'. 1.6372 + * src/autohint/ahglobal.h (AH_IS_TOP_BLUE) 1.6373 + [FT_CONFIG_CHESTER_SMALL_F]: Use `AH_BLUE_SMALL_F_TOP'. 1.6374 + * src/autohint/ahglyph.c (ah_outline_compute_edges) 1.6375 + [FT_CONFIG_CHESTER_SERIF]: Use `AH_EDGE_SERIF'. 1.6376 + (ah_outline_compute_blue_edges) [FT_CONFIG_CHESTER_SMALL_F]: 1.6377 + Increase threshold for `best_dist'. 1.6378 + * src/autohint/ahhint.c (ah_compute_stem_width) 1.6379 + [FT_CONFIG_CHESTER_SERIF]: Provide new version for improved serif 1.6380 + handling. 1.6381 + (ah_align_linked_edge) [FT_CONFIG_CHESTER_SERIF]: Use special 1.6382 + version of `ah_compute_stem_width'. 1.6383 + (ah_hint_edges_3) [FT_CONFIG_CHESTER_STEM]: A new algorithm for stem 1.6384 + alignment when stem widths are less than 1.5 pixels wide centers the 1.6385 + stem slightly off-center of the center of a pixel (this increases 1.6386 + sharpness and consistency). 1.6387 + [FT_CONFIG_CHESTER_SERIF]: Use special version of 1.6388 + `ah_compute_stem_width'. 1.6389 + * src/autohint/ahtypes.h [FT_CONFIG_CHESTER_SMALL_F]: Add 1.6390 + `AH_BLUE_SMALL_F_TOP'. 1.6391 + 1.6392 +2003-01-11 David Turner <david@freetype.org> 1.6393 + 1.6394 + * include/freetype/internal/fnttypes.h (WinFNT_HeaderRec): Increase 1.6395 + size of `reserved2' to avoid memory overwrites. 1.6396 + 1.6397 +2003-01-08 Huw Davies <huw@codeweavers.com> 1.6398 + 1.6399 + * src/winfonts/winfnt.c (winfnt_header_fields): Read 16 bytes into 1.6400 + `reserved2', not `reserved'. 1.6401 + 1.6402 + * src/base/ftobjs.c (find_unicode_charmap): Fixed the error code 1.6403 + returned when the font doesn't contain a Unicode charmap. This 1.6404 + allows FT2 to load `symbol.ttf' and a few others correctly since the 1.6405 + last release. 1.6406 + (open_face): Fix return value. 1.6407 + 1.6408 +2003-01-08 Owen Taylor <owen@redhat.com> 1.6409 + 1.6410 + Implemented the FT_RENDER_MODE_LIGHT hinting mode in the auto and 1.6411 + postscript hinters. 1.6412 + 1.6413 + * src/autohint/ahtypes.h (AH_HinterRec): Add `do_stem_adjust'. 1.6414 + * src/autohint/ahhint.c (ah_compute_stem_width): Handle 1.6415 + hinter->do_stem_adjust. 1.6416 + (ah_hinter_load_glyph): Set hinter->do_stem_adjust. 1.6417 + 1.6418 + * src/pshinter/pshalgo3.h (PSH3_GlyphRec): Add `do_stem_adjust'. 1.6419 + * src/pshinter/pshalgo3.c (psh3_hint_align): Use `do_stem_adjust'. 1.6420 + (ps3_hints_apply): Handle FT_RENDER_MODE_LIGHT. 1.6421 + 1.6422 + * include/freetype/freetype.h (FT_Render_Mode): Add 1.6423 + FT_RENDER_MODE_LIGHT. 1.6424 + 1.6425 + * src/truetype/ttgload.c: Fixing the TrueType loader to handle 1.6426 + invalid composites correctly by limiting the recursion depth. 1.6427 + (TT_MAX_COMPOSITE_RECURSE): New macro. 1.6428 + (load_truetype_glyph): Add argument `recurse_count'. 1.6429 + Load a composite only if the numbers of contours is -1, emit error 1.6430 + otherwise. 1.6431 + (TT_Load_Glyph): Updated. 1.6432 + 1.6433 +2003-01-08 David Turner <david@freetype.org> 1.6434 + 1.6435 + * Jamrules, Jamfile, Jamfile.in, src/*/Jamfile: Small changes to 1.6436 + support the compilation of FreeType 2 as part of larger projects 1.6437 + with their own configuration options (only with Jam). 1.6438 + 1.6439 +2003-01-07 David Turner <david@freetype.org> 1.6440 + 1.6441 + * src/base/ftstroker.c: Probably the last bug-fixes to the stroker; 1.6442 + the API is likely to change, however. 1.6443 + (ft_stroke_border_close): Don't record empty paths. 1.6444 + (ft_stroke_border_get_counts): Increase `num_points' also in for loop. 1.6445 + (ft_stroke_border_export): Don't increase `write' twice in for loops. 1.6446 + (ft_stroker_outside): Handle `phi' together with `theta'. 1.6447 + (FT_Stroker_ParseOutline): New function. 1.6448 + 1.6449 + * src/base/fttrigon.c (FT_Angle_Diff): Fixing function: It returned 1.6450 + invalid values for large negative angle differences (resulting in 1.6451 + incorrect stroker computations, among other things). 1.6452 + 1.6453 + * src/cache/ftccache.c (ftc_node_hash_unlink): Removing incorrect 1.6454 + assertion, and changing code to avoid hash table size contraction. 1.6455 + 1.6456 + * src/base/Jamfile, src/base/rules.mk, src/base/descrip.mms: Adding 1.6457 + `ftstroker' to default build, as optional component. 1.6458 + 1.6459 +2002-12-26 David Turner <david@freetype.org> 1.6460 + 1.6461 + * src/gzip/adler32.c, src/gzip/infblock.c, src/gzip/inflate.c, 1.6462 + src/gzip/inftrees.c, src/gzip/zconf.h, src/gzip/zlib.h, 1.6463 + src/gzip/zutil.h: Updates to allow compilation without compiler 1.6464 + warnings with LCC-Win32. 1.6465 + 1.6466 + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 4. 1.6467 + * builds/unix/configure.ac (version_info): Increased to 9:3:3. 1.6468 + * builds/unix/configure: Regenerated. 1.6469 + * docs/VERSION.DLL: Updated. 1.6470 + 1.6471 +2002-12-23 Anthony Fok <anthony@thizlinux.com> 1.6472 + 1.6473 + * builds/unix/configure.ac, builds/unix/unix-cc.in (LINK_LIBRARY), 1.6474 + builds/unix/unix-def.in (SYSTEM_ZLIB): Small fix to configure 1.6475 + sub-system on Unix to allow other programs to correctly link with 1.6476 + zlib when needed. 1.6477 + 1.6478 +2002-12-19 David Turner <david@freetype.org> 1.6479 + 1.6480 + * include/freetype/internal/sfnt.h (SFNT_Load_Table_Func): New 1.6481 + function pointer. 1.6482 + 1.6483 + * include/freetype/tttables.h (FT_Load_Sfnt_Table): New function. 1.6484 + * src/base/ftobjs.c: Implement it. 1.6485 + 1.6486 + * src/sfnt/sfdriver.c (sfnt_get_interface): Handle `load_sfnt' 1.6487 + module request. 1.6488 + 1.6489 +2002-12-17 David Turner <david@freetype.org> 1.6490 + 1.6491 + * src/base/ftobjs.c (find_unicode_charmap): Added some comments to 1.6492 + better explain what's happening there. 1.6493 + (open_face): Included Graham Asher's fix to prevent faces without 1.6494 + Unicode charmaps from loading. 1.6495 + 1.6496 + * src/winfonts/winfnt.c: Included George Williams's fix to support 1.6497 + version 2 fonts correctly. 1.6498 + (winfnt_header_fields): Updated. 1.6499 + (fnt_font_load): Handle version 2 fonts. 1.6500 + (FNT_Load_Glyph): Updated. 1.6501 + 1.6502 +2002-12-16 David Turner <david@freetype.org> 1.6503 + 1.6504 + * docs/VERSION.DLL: Updating document to better explain the 1.6505 + differences between the three version numbers being used on Unix, as 1.6506 + well as providing an autoconf fragment provided by Lars Clausen. 1.6507 + 1.6508 + * src/smooth/ftgrays.c (gray_render_conic): Fixed small bug that 1.6509 + prevented Bézier arcs with negative vertical coordinates to be 1.6510 + rendered appropriately. 1.6511 + 1.6512 +2002-12-02 Antoine Leca <Antoine-Freetype@Leca-Marti.org> 1.6513 + 1.6514 + * src/base/ftobjs.c: Modified the logic to get Unicode charmaps. 1.6515 + Now it loads UCS-4 charmaps when there is one. 1.6516 + (find_unicode_charmap): New function. 1.6517 + (open_face): Refer to the above one. 1.6518 + (FT_Select_Charmap): Idem. 1.6519 + 1.6520 +2002-11-29 Antoine Leca <Antoine-Freetype@Leca-Marti.org> 1.6521 + 1.6522 + * include/freetype/ftgzip.h: Correct the name of the controlling 1.6523 + macro (was __FTXF86_H__ ...). 1.6524 + 1.6525 +2002-11-27 Vincent Caron <v.caron@zerodeux.net> 1.6526 + 1.6527 + * builds/unix/unix-def.in, builds/unix/freetype-config.in, 1.6528 + builds/unix/configure.ac, src/gzip/rules.mk, src/gzip/ftgzip.c 1.6529 + [FT_CONFIG_OPTION_SYSTEM_ZLIB]: Adding support for system zlib 1.6530 + installations if available on the target platform (Unix only). 1.6531 + 1.6532 +2002-11-23 David Turner <david@freetype.org> 1.6533 + 1.6534 + * src/cff/cffload.c (cff_charset_load, cff_encoding_load): Modified 1.6535 + charset loader to accept pre-defined charsets, even when the font 1.6536 + contains fewer glyphs. Also enforced more checks to ensure that we 1.6537 + never overflow the character codes array in the encoding. 1.6538 + 1.6539 +2002-11-22 Antoine Leca <Antoine-Freetype@Leca-Marti.org> 1.6540 + 1.6541 + * include/freetype/ttnameid.h: Updated to latest OpenType 1.6542 + specification. 1.6543 + 1.6544 +2002-11-18 David Turner <david@freetype.org> 1.6545 + 1.6546 + 1.6547 + * Version 2.1.3 released. 1.6548 + ========================= 1.6549 + 1.6550 + 1.6551 +2002-11-07 David Turner <david@freetype.org> 1.6552 + 1.6553 + * src/cache/ftcsbit.c (ftc_sbit_node_load): Fixed a small bug that 1.6554 + caused problems with embedded bitmaps. 1.6555 + 1.6556 + * src/otlayout/otlayout.h, src/otlyaout/otlconf.h, 1.6557 + src/otlayout/otlgsub.c, src/otlayout/otlgsub.h, 1.6558 + src/otlayout/otlparse.c, src/otlayout/otlparse.h, 1.6559 + src/otlayout/otlutils.h: Updating the OpenType Layout code, adding 1.6560 + support for the first GSUB lookups. Nothing that really compiles 1.6561 + for now though. 1.6562 + 1.6563 + * src/autohint/ahhint.c (ah_align_serif_edge): Disabled serif stem 1.6564 + width quantization. It produces slightly better shapes though this 1.6565 + is not distinguishable with many fonts. 1.6566 + Remove other dead code. 1.6567 + 1.6568 + * src/Jamfile, src/*/Jamfile: Simplified. 1.6569 + Use $(FT2_SRC_DIR). 1.6570 + 1.6571 +2002-11-06 David Turner <david@freetype.org> 1.6572 + 1.6573 + * include/freetype/freetype.h (FT_LOAD_TARGET_LIGHT): New macro. 1.6574 + (FT_LOAD_TARGET, FT_LOAD_TARGET_MODE): Use `& 15' instead of `& 7'. 1.6575 + 1.6576 +2002-11-05 David Turner <david@freetype.org> 1.6577 + 1.6578 + * include/freetype/config/ftoption.h, src/gzip/ftgzip.c: Added 1.6579 + support for the FT_CONFIG_OPTION_SYSTEM_ZLIB option, used to specify 1.6580 + the use of system-wide zlib. 1.6581 + 1.6582 + Note that this macro, as well as 1.6583 + TT_CONFIG_OPTION_BYTECODE_INTERPRETER, is not #undef-ed anymore. 1.6584 + This allows the build system to define them depending on the 1.6585 + configuration (typically by adding -D flags at compile time). 1.6586 + 1.6587 + * src/sfnt/ttcmap0.c (tt_face_build_cmaps): Removed compiler 1.6588 + warnings in optimized mode relative to the `volatile' local 1.6589 + variables. This was not a compiler bug after all, but the fact that 1.6590 + a pointer to a volatile variable is not the same as a volatile 1.6591 + pointer to a variable :-) 1.6592 + 1.6593 + The fix was to change 1.6594 + `volatile FT_Byte* p' 1.6595 + into 1.6596 + `FT_Byte* volatile p'. 1.6597 + 1.6598 + * src/pfr/pfrload.c (pfr_phy_font_load), src/pfr/pfrdrivr.c 1.6599 + (pfr_get_metrics), src/gzip/inftrees.c: Removed compiler warnings in 1.6600 + optimized modes. 1.6601 + 1.6602 + * src/gzip/*.[hc]: Modified our zlib copy in order to prevent 1.6603 + exporting any zlib function names outside of the component. This 1.6604 + prevents linking problems on some platforms, when applications want 1.6605 + to link FreeType _and_ zlib together. 1.6606 + 1.6607 +2002-11-05 Juliusz <jch@pps.jussieu.fr> 1.6608 + 1.6609 + * src/psaux/psobjs.c (ps_table_add): Modified increment loop in 1.6610 + order to implement exponential behaviour. 1.6611 + 1.6612 +2002-11-01 David Turner <david@freetype.org> 1.6613 + 1.6614 + Added PFR-specific public API. Fixed the kerning retrievel routine 1.6615 + (it returned invalid values when the outline and metrics resolution 1.6616 + differ). 1.6617 + 1.6618 + * include/freetype/ftpfr.h, include/freetype/internal/pfr.h: New 1.6619 + files. 1.6620 + 1.6621 + * include/freetype/internal/internal.h (FT_INTERNAL_PFR_H): New 1.6622 + macro for pfr.h. 1.6623 + 1.6624 + * src/base/ftpfr.c: New file. 1.6625 + * src/base/Jamfile, src/base/descrip.mms: Updated. 1.6626 + 1.6627 + * src/pfr/pfrdrivr.c: Include FT_INTERNAL_PFR_H. 1.6628 + (pfr_get_kerning, pfr_get_advance, pfr_get_metrics): New functions. 1.6629 + (pfr_service_rec): New format interface. 1.6630 + (pfr_driver_class): Use `pfr_service_rec'. 1.6631 + Replace `pfr_face_get_kerning' with `pfr_get_kerning'. 1.6632 + * src/pfr/pfrobjs.c: Remove dead code. 1.6633 + 1.6634 + * src/base/ftobjs.c (ft_glyphslot_clear): Small internal fix to 1.6635 + better support bitmap-based font formats. 1.6636 + 1.6637 + * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Fix handling of 1.6638 + `scale'. 1.6639 + Fix arguments to `FT_Vector_From_Polar'. 1.6640 + 1.6641 +2002-10-31 David Turner <david@freetype.org> 1.6642 + 1.6643 + Add support for automatic handling of gzip-compressed PCF files. 1.6644 + 1.6645 + * src/gzip/*: New files, taken from the zlib package (except 1.6646 + ftgzip.c). 1.6647 + 1.6648 + * include/freetype/ftgzip.h, src/gzip/ftgzip.c: New files. 1.6649 + * include/freetype/config/ftheader.h (FT_GZIP_H): New macro for 1.6650 + `ftgzip.h'. 1.6651 + 1.6652 + * src/pcf/pcfdriver.c: Include FT_GZIP_H and FT_ERRORS_H. 1.6653 + (PCF_Face_Init): If normal open fails, try to open gzip stream. 1.6654 + (PCF_Face_Done): Close gzip stream. 1.6655 + 1.6656 + * include/freetype/internal/pcftypes.h (PCF_Public_FaceRec), 1.6657 + src/pcf/pcf.h (PCF_FaceRec): Add `gzip_stream' and `gzip_source'. 1.6658 + 1.6659 + * include/freetype/config/ftoption.h (FT_CONFIG_OPTION_USE_ZLIB): 1.6660 + New macro. 1.6661 + (T1_CONFIG_OPTION_DISABLE_HINTER, FT_CONFIG_OPTION_USE_CMAPS 1.6662 + FT_CONFIG_OPTION_NO_CONVENIENCE_FUNCS, 1.6663 + FT_CONFIG_OPTION_ALTERNATE_GLYPH_FORMATS): Removed. 1.6664 + 1.6665 + (FT_EXPORT, FT_EXPORT_DEF, FT_DEBUG_LEVEL_ERROR, 1.6666 + FT_DEBUG_LEVEL_TRACE, FT_DEBUG_MEMORY): Comment out definitions so 1.6667 + that platform specific configuration file can override. 1.6668 + 1.6669 + * include/freetype/internal/ftstream.h: Include FT_SYSTEM_H. 1.6670 + 1.6671 +2002-10-30 David Turner <david@freetype.org> 1.6672 + 1.6673 + * FreeType 2.1.3rc3 released. 1.6674 + 1.6675 +2002-10-25 David Turner <david@freetype.org> 1.6676 + 1.6677 + * include/freetype/ftcache.h (FT_POINTER_TO_ULONG): New macro. 1.6678 + (FTC_FACE_ID_HASH): Rewritten, using FT_POINTER_TO_ULONG. 1.6679 + 1.6680 +2002-10-22 Giuseppe Ghibò <ghibo@mandrakesoft.com> 1.6681 + 1.6682 + * include/freetype/freetype.h (FT_Encoding): Fix entry for latin-2. 1.6683 + 1.6684 +2002-10-07 Werner Lemberg <wl@gnu.org> 1.6685 + 1.6686 + * include/freetype/freetype.h (FT_Open_Face): Use `const' for `args' 1.6687 + (suggested by Graham). 1.6688 + * src/base/ftobjs.c (FT_Open_Face): Updated. 1.6689 + (ft_input_stream_new): Ditto. 1.6690 + 1.6691 +2002-10-05 David Turner <david@freetype.org> 1.6692 + 1.6693 + Adding support for embedded bitmaps to the PFR driver, and rewriting 1.6694 + its kerning loader/handler to use all kerning pairs in a physical 1.6695 + font (and not just the first item). 1.6696 + 1.6697 + * src/pfr/pfr.c: Include `pfrsbit.c'. 1.6698 + * src/pfr/pfrgload.c: Include `pfrsbit.h'. 1.6699 + * src/pfr/pfrload.c (pfr_extra_item_load_kerning_pairs): Rewritten. 1.6700 + (pfr_phy_font_done, pfr_phy_font_load): Updated. 1.6701 + * src/pfr/pfrobks.c: Include `pfrsbit.h'. 1.6702 + (pfr_face_init): Handle kerning and embedded bitmaps. 1.6703 + (pfr_slot_load): Load embedded bitmaps. 1.6704 + (PFR_KERN_INDEX): Removed. 1.6705 + (pfr_face_get_kerning): Rewritten. 1.6706 + * src/pfr/pfrsbit.c, src/pfr/pfrsbit.h: New files. 1.6707 + * src/pfr/pfrtypes.h (PFR_KernItemRec): New structure. 1.6708 + (PFR_KERN_INDEX): New macro. 1.6709 + (PFR_PhyFontRec): Add items for kerning and embedded bitmaps. 1.6710 + * src/pfr/Jamfile (_sources) [FT2_MULTI]: Add `pfrsbit'. 1.6711 + 1.6712 + * src/base/ftobjs.c (FT_Load_Glyph): Don't load bitmap fonts if 1.6713 + FT_LOAD_NO_RECURSE is set. 1.6714 + Load embedded bitmaps only if FT_LOAD_NO_BITMAP isn't set. 1.6715 + 1.6716 + * src/tools/docmaker/content.py, src/tools/docmaker/sources.py, 1.6717 + src/tools/docmaker/tohtml.py: Fixing a few nasty bugs. 1.6718 + 1.6719 + * src/sfnt/ttcmap0.c (tt_cmap4_validate): The validator for format 4 1.6720 + sub-tables is now capable of dealing with invalid `length' fields at 1.6721 + the start of the sub-table. This allows fonts like `mg______.ttf' 1.6722 + (i.e. Marriage) to return accurate charmaps. 1.6723 + 1.6724 + * docs/CHANGES: Updated. 1.6725 + 1.6726 +2002-10-05 Werner Lemberg <wl@gnu.org> 1.6727 + 1.6728 + * src/smooth/ftgrays.c (SUBPIXELS): Add cast to `TPos'. 1.6729 + Update all callers. 1.6730 + (TRUNC): Add cast to `TCoord'. 1.6731 + Update all callers. 1.6732 + (TRaster): Use `TPos' for min_ex, max_ex, min_ey, max_ey, and 1.6733 + last_ey. 1.6734 + Update all casts. 1.6735 + (gray_render_line): Fix casts for `p' and `first'. 1.6736 + 1.6737 +2002-10-02 Detlef Würkner <TetiSoft@apg.lahn.de> 1.6738 + 1.6739 + * src/bdf/bdflib.c (bdf_load_font): Allocate the _bdf_parse_t 1.6740 + structure with FT_ALLOC instead of using the stack. 1.6741 + 1.6742 +2002-09-27 Werner Lemberg <wl@gnu.org> 1.6743 + 1.6744 + * src/include/freetype/internal/tttypes.h (num_sbit_strikes, 1.6745 + num_sbit_scales): Use `FT_ULong'. 1.6746 + * src/sfnt/sfobjs.c (sfnt_load_face): Updated accordingly. 1.6747 + * src/sfnt/ttsbit.c (tt_face_set_sbit_strike): Ditto. 1.6748 + (find_sbit_image): Remove cast. 1.6749 + * src/raster/ftrend1.c (ft_raster1_render): Fix cast. 1.6750 + 1.6751 +2002-09-27 Wolfgang Domröse <porthos.domroese@harz.de> 1.6752 + 1.6753 + * src/sfnt/ttload.c (tt_face_load_names): Use cast. 1.6754 + * src/sfnt/ttcmap.c (code_to_next2): Use long constant. 1.6755 + (code_to_index4): Use cast. 1.6756 + (code_to_index8_12): Fix cast. 1.6757 + * src/sfnt/ttcmap0.c (tt_cmap4_char_next, tt_cmap8_char_index, 1.6758 + tt_cmap12_char_index): Use cast for `result'. 1.6759 + (tt_face_build_cmaps): Use cast. 1.6760 + * src/sfnt/sfobjs.c (tt_name_entry_ascii_from_ucs4): Use cast for 1.6761 + `code'. 1.6762 + (sfnt_load_face): Use FT_Int32 for `flags'. 1.6763 + 1.6764 + * src/smooth/ftgrays.c (gray_render_scanline, gray_render_line, 1.6765 + gray_compute_cbox, gray_convert_glyph, gray_raster_reset): Add casts 1.6766 + to `TCoord' and `int'. 1.6767 + More 16bit fixes. 1.6768 + s/FT_Pos/TPos/. 1.6769 + * src/smooth/ftsmooth.c (ft_smooth_render_generic): Add casts. 1.6770 + 1.6771 +2002-09-26 Werner Lemberg <wl@gnu.org> 1.6772 + 1.6773 + * src/sfnt/ttpost.c (load_post_names, tt_face_free_ps_names, 1.6774 + tt_face_get_ps_name): Replace switch statement with if clauses to 1.6775 + make it more portable. 1.6776 + 1.6777 + * src/cff/cffobjs.c (cff_face_init): Ditto. 1.6778 + 1.6779 + * include/freetype/ftmodule.h (FT_Module_Class): Use `FT_Long' for 1.6780 + `module_size'. 1.6781 + * include/freetype/ftrender.h (FT_Glyph_Class_): Use `FT_Long' for 1.6782 + `glyph_size'. 1.6783 + 1.6784 + * src/base/ftobjs.c (FT_Render_Glyph): Change second parameter to 1.6785 + `FT_Render_Mode'. 1.6786 + (FT_Render_Glyph_Internal): Change third parameter to 1.6787 + `FT_Render_Mode'. 1.6788 + * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Change second parameter 1.6789 + to `FT_Render_Mode'. 1.6790 + 1.6791 + * src/raster/ftrend1.c (ft_raster1_render): Change third parameter 1.6792 + to `FT_Render_Mode'. 1.6793 + * src/smooth/ftsmooth.c (ft_smooth_render, ft_smooth_render_lcd, 1.6794 + ft_smooth_render_lcd_v): Ditto. 1.6795 + (ft_smooth_render_generic): Change third and fifth parameter to 1.6796 + `FT_Render_Mode'. 1.6797 + 1.6798 + * include/freetype/freetype.h, include/freetype/internal/ftobjs.h, 1.6799 + include/freetype/ftglyph.h: Updated. 1.6800 + 1.6801 + * src/cff/cffdrivr.c (Load_Glyph), src/pcf/pcfdriver.c 1.6802 + (PCF_Glyph_Load), src/pfr/pfrobjs.c (pfr_slot_load), 1.6803 + src/winfonts/winfnt.c (FNT_Load_Glyph), src/t42/t42objs.c 1.6804 + (T42_GlyphSlot_Load), src/bdf/bdfdrivr.c (BDF_Glyph_Load): Change 1.6805 + fourth parameter to `FT_Int32'. 1.6806 + 1.6807 + * src/pfr/pfrobjs.c (pfr_face_init): Add two missing parameters 1.6808 + and declare them as unused. 1.6809 + 1.6810 + * src/cid/cidparse.h (CID_Parser): Use FT_Long for `postscript_len'. 1.6811 + 1.6812 + * src/psnames/psnames.h (PS_Unicode_Value_Func): Change return 1.6813 + value to FT_UInt32. 1.6814 + * src/psnames/psmodule.c (ps_unicode_value, ps_build_unicode_table): 1.6815 + Updated accordingly. 1.6816 + 1.6817 +2002-09-26 Wolfgang Domröse <porthos.domroese@harz.de> 1.6818 + 1.6819 + * src/cff/cffdrivr.c (Get_Kerning): Use FT_Long for `middle'. 1.6820 + (cff_get_glyph_name): Use cast for result of ft_strlen. 1.6821 + * src/cff/cffparse.c (cff_parse_real): User cast for assigning 1.6822 + `exp'. 1.6823 + * src/cff/cffload.c (cff_index_get_pointers): Use FT_ULong for 1.6824 + some local variables. 1.6825 + (cff_charset_load, cff_encoding_load): Use casts to FT_UInt for some 1.6826 + switch statements. 1.6827 + (cff_font_load): Use cast in call to CFF_Load_FD_Select. 1.6828 + * src/cff/cffobjs.c (cff_size_init): Use more casts. 1.6829 + (cff_face_init): Use FT_Int32 for `flags'. 1.6830 + * src/cff/cffgload.c (cff_operator_seac): Use cast for assigning 1.6831 + `adx' and `ady'. 1.6832 + (cff_decoder_parse_charstrings): Use FT_ULong for third parameter. 1.6833 + Use more casts. 1.6834 + * src/cff/cffcmap.c (cff_cmap_unicode_init): Use cast for `count'. 1.6835 + 1.6836 + * src/cid/cidload.c (cid_read_subrs): Use FT_ULong for `len'. 1.6837 + * src/cid/cidgload.c (cid_load_glyph): Add missing cast for 1.6838 + `cid_get_offset'. 1.6839 + 1.6840 + * src/psaux/t1decode.c (t1_decoder_parse_charstrings) <18>: Use 1.6841 + cast for `num_points'. 1.6842 + (t1_decoder_init): Use cast for assigning `decoder->num_glyphs'. 1.6843 + 1.6844 + * src/base/ftdebug.c (ft_debug_init): Use FT_Int. 1.6845 + * include/freetype/internal/ftdriver.h (FT_Slot_LoadFunc): Use 1.6846 + `FT_Int32' for fourth parameter. 1.6847 + * src/base/ftobjs.c (open_face): Use cast for calling 1.6848 + clazz->init_face. 1.6849 + 1.6850 + * src/raster/ftraster.c (Set_High_Precision): Use `1' instead of 1.6851 + `1L'. 1.6852 + (Finalize_Profile_Table, Line_Up, ft_black_init): Use casts. 1.6853 + * src/raster/ftrend1.c (ft_raster1_render): Ditto. 1.6854 + 1.6855 + * src/sfnt/sfnt_dir_check: Compare `magic' with unsigned long 1.6856 + constant. 1.6857 + 1.6858 +2002-09-26 Detlef Würkner <TetiSoft@apg.lahn.de> 1.6859 + 1.6860 + * builds/amiga/include/freetype/config/ftmodule.h: Updated. 1.6861 + 1.6862 +2002-09-25 David Turner <david@freetype.org> 1.6863 + 1.6864 + * src/autohint/ahtypes.h (AH_HINT_METRICS): Disabling metrics 1.6865 + hinting in the auto-hinter. This produces much better anti-aliased 1.6866 + text. 1.6867 + 1.6868 + * docs/CHANGES: Updating the changes documentation. 1.6869 + 1.6870 +2002-09-25 Anthony Fok <anthony@thizlinux.com> 1.6871 + 1.6872 + * src/sfnt/ttcmap0.c (tt_cmap4_validate, tt_cmap4_char_index, 1.6873 + tt_cmap4_char_next): Added support for opens___.ttf (it contains a 1.6874 + charmap that uses offset=0xFFFFU instead of 0x0000 to indicate a 1.6875 + missing glyph). 1.6876 + 1.6877 +2002-09-21 Wolfgang Domröse <porthos.domroese@harz.de> 1.6878 + 1.6879 + * src/truetype/ttdriver.c (Load_Glyph): Fourth parameter must be 1.6880 + FT_Int32. 1.6881 + * src/truetype/ttgload.c, src/truetype/ttgload.h (TT_Load_Glyph): 1.6882 + Ditto. 1.6883 + 1.6884 +2002-09-19 Wolfgang Domröse <porthos.domroese@harz.de> 1.6885 + 1.6886 + More 16bit fixes. 1.6887 + 1.6888 + * src/autohint/ahglobal.c (sort_values): Use FT_Pos for `swap'. 1.6889 + (ah_hinter_compute_widths): Use FT_Pos for `dist'. 1.6890 + Use AH_MAX_WIDTHS. 1.6891 + * src/autohint/ahglyph.c (ah_outline_scale_blue_edges): Use FT_Pos 1.6892 + for `delta'. 1.6893 + (ah_outline_compute_edges): Replace some ints with FT_Int and 1.6894 + FT_Pos. 1.6895 + (ah_test_extrema): Clean up code. 1.6896 + (ah_get_orientation): Use 4 FT_Int variables instead of FT_BBox to 1.6897 + hold indices. 1.6898 + * src/autohint/ahtypes.h (AH_SegmentRec): Change type of `score' 1.6899 + to FT_Pos. 1.6900 + 1.6901 +2002-09-19 Werner Lemberg <wl@gnu.org> 1.6902 + 1.6903 + * builds/unix/config.guess, builds/unix/config.sub: Updated to 1.6904 + recent versions. 1.6905 + 1.6906 +2002-09-18 David Turner <david@freetype.org> 1.6907 + 1.6908 + * src/base/ftobjs.c (FT_Library_Version): Bugfix. 1.6909 + 1.6910 + * FreeType 2.1.3rc2 (release candidate 2) is released! 1.6911 + 1.6912 +2002-09-17 David Turner <david@freetype.org> 1.6913 + 1.6914 + * include/freetype/freetype.h, include/freetype/ftimage.h, 1.6915 + include/freetype/ftstroker.h, include/freetype/ftsysio.h, 1.6916 + include/freetype/ftsysmem.h, include/freetype/ttnameid.h: Updating 1.6917 + the in-source documentation. 1.6918 + 1.6919 + * src/tools/docmaker/tohtml.py: Updating the HTML formatter in the 1.6920 + DocMaker tool. 1.6921 + 1.6922 + * src/tools/docmaker.py: Removed. 1.6923 + 1.6924 +2002-09-17 Werner Lemberg <wl@gnu.org> 1.6925 + 1.6926 + More 16bit fixes. 1.6927 + 1.6928 + * src/psaux/psobjs.c (reallocate_t1_table): Use FT_Long for 1.6929 + second parameter. 1.6930 + 1.6931 +2002-09-16 Werner Lemberg <wl@gnu.org> 1.6932 + 1.6933 + 16bit fixes from Wolfgang Domröse. 1.6934 + 1.6935 + * src/type1/t1parse.h (T1_ParserRec): Change type of `base_len' 1.6936 + and `private_len' to FT_Long. 1.6937 + * src/type1/t1parse.c (T1_Get_Private_Dict): Remove cast for 1.6938 + `private_len'. 1.6939 + * src/type1/t1load.c: Use FT_Int cast for most calls of T1_ToInt. 1.6940 + Use FT_PtrDist where appropriate. 1.6941 + (parse_encoding): Use FT_Long for `count' and `n'. 1.6942 + (read_binary_data): Use FT_Long* for second parameter. 1.6943 + * src/type1/t1afm.c (afm_atoindex): Use FT_PtrDist. 1.6944 + 1.6945 + * src/cache/ftcsbits.c (ftc_sbit_node_load): Remove unused label. 1.6946 + * src/pshinter/pshalgo3.c (psh3_hint_align): Remove unused variable. 1.6947 + 1.6948 +2002-09-14 Werner Lemberg <wl@gnu.org> 1.6949 + 1.6950 + Making ftgrays.c compile stand-alone again. 1.6951 + 1.6952 + * include/freetype/ftimage.h: Include ft2build.h only if _STANDALONE_ 1.6953 + isn't defined. 1.6954 + * src/smooth/ftgrays.c [_STANDALONE_]: Define ft_memset, 1.6955 + FT_BEGIN_HEADER, FT_END_HEADER. 1.6956 + (FT_MEM_ZERO): Define. 1.6957 + (TRaster) [GRAYS_USE_GAMMA]: Use `unsigned char' instead of FT_Byte. 1.6958 + (gray_render_span, gray_init_gamma): Don't use `FT_UInt'. 1.6959 + Don't cast with `FT_Byte'. 1.6960 + (grays_init_gamma): Don't use `FT_UInt'. 1.6961 + 1.6962 +2002-09-14 Werner Lemberg <wl@gnu.org> 1.6963 + 1.6964 + * src/base/ftinit.c (FT_Add_Default_Modules): Improve error message. 1.6965 + * src/pcf/pcfdriver.c (PCF_Face_Done): Improve tracing message. 1.6966 + * include/freetype/config/ftoption.h (FT_MAX_MODULES): Increased 1.6967 + to 32. 1.6968 + 1.6969 +2002-09-10 Werner Lemberg <wl@gnu.org> 1.6970 + 1.6971 + * builds/unix/configure.ac (version_info): Set to 9:2:3. 1.6972 + * builds/unix/configure: Regenerated. 1.6973 + * docs/VERSION.DLL: Updated. 1.6974 + 1.6975 +2002-09-09 David Turner <david@freetype.org> 1.6976 + 1.6977 + * src/pshinter/pshalgo2.c (psh2_glyph_find_strong_points), 1.6978 + src/pshinter/pshalgo3.c (psh3_glyph_find_strong_points): Adding fix 1.6979 + to prevent seg fault when hints are provided in an empty glyph. 1.6980 + 1.6981 + * src/cache/ftccache.i (GEN_CACHE_LOOKUP) [FT_DEBUG_LEVEL_ERROR]: 1.6982 + Removed conditional code. This fixes a bug that prevented 1.6983 + compilation in debug mode of template instantiation. 1.6984 + 1.6985 + * include/freetype/ftimage.h: Removed incorrect `zft_' definitions 1.6986 + and updated constants documentation comments. 1.6987 + 1.6988 + * src/cff/cffparse.c (cff_parser_run): Fixed the CFF table loader. 1.6989 + It didn't accept empty arrays, and this prevented the loading of 1.6990 + certain fonts. 1.6991 + 1.6992 + * include/freetype/freetype.h (FT_FaceRec): Updating documentation 1.6993 + comment. The `descender' value is always *negative*, not positive. 1.6994 + 1.6995 +2002-09-09 Owen Taylor <owen@redhat.com> 1.6996 + 1.6997 + * src/pcf/pcfdriver.c (PCF_Glyph_Load): Fixing incorrect computation 1.6998 + of bitmap metrics. 1.6999 + 1.7000 +2002-09-08 David Turner <david@freetype.org> 1.7001 + 1.7002 + Various updates to correctly support sub-pixel rendering. 1.7003 + 1.7004 + * include/freetype/config/ftmodule.h: Add two renderers for LCD. 1.7005 + 1.7006 + * src/base/ftobjs.c (FT_Load_Glyph): Updated. 1.7007 + 1.7008 + * src/smooth/ftsmooth.c (ft_smooth_render_lcd, 1.7009 + ft_smooth_render_lcd_v): Set FT_PIXEL_MODE_LCD and 1.7010 + FT_PIXEL_MODE_LCD_V, respectively. 1.7011 + 1.7012 + * include/freetype/cache/ftcimage.h (FTC_ImageTypeRec): New 1.7013 + structure. 1.7014 + Updated all users. 1.7015 + (FTC_ImageDesc): Removed. 1.7016 + (FTC_ImageCache_Lookup): Second parameter is now of type 1.7017 + `FTC_ImageType'. 1.7018 + Updated all users. 1.7019 + (FTC_IMAGE_DESC_COMPARE): Updated and renamed to... 1.7020 + (FTC_IMAGE_TYPE_COMPARE): This. 1.7021 + (FTC_IMAGE_DESC_HASH): Updated and renamed to... 1.7022 + (FTC_IMAGE_TYPE_HASH): This. 1.7023 + 1.7024 + * include/freetype/cache/ftcsbits.h (FTC_SBitRec): Field `num_grays' 1.7025 + replaced with `max_grays'. 1.7026 + `pitch' is now FT_Short. 1.7027 + (FTC_SBitCache_Lookup): Second parameter is now of type 1.7028 + `FTC_ImageType'. 1.7029 + Updated all users. 1.7030 + 1.7031 + * src/cache/ftcimage.c (FTC_ImageQueryRec, FTC_ImageFamilyRec): 1.7032 + Updated. 1.7033 + (ftc_image_node_init): Updated. 1.7034 + Moved code to convert type flags to load flags to... 1.7035 + (FTC_Image_Cache_Lookup): This function. 1.7036 + (ftc_image_family_init): Updated. 1.7037 + 1.7038 + * src/cache/ftcsbit.c (FTC_SBitQueryRec, FTC_SBitFamilyRec): 1.7039 + Updated. 1.7040 + (ftc_sbit_node_load): Updated. 1.7041 + Moved code to convert type flags to load flags to... 1.7042 + (FTC_SBitCache_Lookup): This function. 1.7043 + 1.7044 + * src/autohint/ahtypes.h (AH_HinterRec): Replace `no_*_hints' with 1.7045 + `do_*_snapping'. 1.7046 + Update all users (with negation). 1.7047 + * src/autohint/ahhint.c (ah_compute_stem_width): Fix threshold for 1.7048 + `dist' for `delta' < 40. 1.7049 + 1.7050 + * src/pshinter/pshalgo3.h (PSH3_GlyphRec): Replace `no_*_hints' with 1.7051 + `do_*_snapping'. 1.7052 + Update all users (with negation). 1.7053 + * src/pshinter/pshalgo3.c (psh3_dimension_quantize_len): New 1.7054 + function. 1.7055 + (psh3_hint_align): Use it. 1.7056 + Improve hinting code. 1.7057 + [STRONGER]: Removed. 1.7058 + (STRONGER): Removed. 1.7059 + 1.7060 + * include/freetype/freetype.h (FT_Set_Hint_Flags, FT_HINT_*): 1.7061 + Removed. 1.7062 + 1.7063 +2002-09-05 Werner Lemberg <wl@gnu.org> 1.7064 + 1.7065 + * src/cid/cidobjs.c (CID_Size_Init): Renamed to... 1.7066 + (cid_size_init): This. 1.7067 + * src/psaux/psobjs.c (T1_Builder_Add_Point1): Renamed to... 1.7068 + (t1_builder_add_point1): This. 1.7069 + 1.7070 + Updated all affected code. 1.7071 + 1.7072 + * src/pshinter/pshalgo3.c (psh3_hint_align): Fix compiler warnings. 1.7073 + * src/type1/t1gload.c (T1_Compute_Max_Advance): Ditto. 1.7074 + 1.7075 +2002-09-04 David Turner <david@freetype.org> 1.7076 + 1.7077 + * include/freetype/freetype.h: Corrected the definition of 1.7078 + ft_encoding_symbol to be FT_ENCODING_MS_SYMBOL (instead of 1.7079 + the erroneous FT_ENCODING_SYMBOL). 1.7080 + 1.7081 + * builds/unix/unix-def.in (datadir): Initialize it (thanks to 1.7082 + Anthony Fok). 1.7083 + 1.7084 +2002-08-29 David Turner <david@freetype.org> 1.7085 + 1.7086 + Slight modification to the Postscript hinter to slightly increase 1.7087 + the contrast of smooth hinting. This is very similar to what the 1.7088 + auto-hinter does when it comes to stem width computations. However, 1.7089 + it produces better results with well-hinted fonts. 1.7090 + 1.7091 + * include/freetype/internal/psaux.h (T1_Decoder_FuncsRec): Add hint 1.7092 + mode to `init' member function. 1.7093 + (T1_DecoderRec): Add hint mode. 1.7094 + * include/freetype/internal/pshints (T1_Hints_ApplyFunc, 1.7095 + T2_Hints_ApplyFunc): Pass `hint_mode', not `hint_flags'. 1.7096 + * src/psaux/t1decode.c (t1_decoder_init): Add hint mode argument. 1.7097 + * src/pshinter/pshalgo1.c (ps1_hints_apply): Pass hint mode, not 1.7098 + hint flags. 1.7099 + * src/pshinter/pshalgo2.c (ps2_hints_apply): Ditto. 1.7100 + * src/pshinter/pshalgo3.c (ps3_hints_apply): Ditto. 1.7101 + (STRONGER): New macro. 1.7102 + (psh3_hint_align, psh3_hint_table_align_hints): Pass `glyph' instead 1.7103 + of `hint_flags'. 1.7104 + Implement announced changes. 1.7105 + * src/pshinter/pshalgo3.h (PSH3_GlyphRec): Add flags to control 1.7106 + vertical and horizontal hints and snapping. 1.7107 + 1.7108 + * README, docs/CHANGES: Updating for the 2.1.3 release. 1.7109 + 1.7110 +2002-08-27 David Turner <david@freetype.org> 1.7111 + 1.7112 + * Massive re-formatting changes to many, many source files. I don't 1.7113 + want to list them all here. The operations performed were all 1.7114 + logical transformations of the sources: 1.7115 + 1.7116 + - trying to convert all enums and constants to CAPITALIZED_STYLE, 1.7117 + #with define definitions like 1.7118 + 1.7119 + #define my_old_constants MY_NEW_CONSTANT 1.7120 + 1.7121 + - big, big update of the documentation comments 1.7122 + 1.7123 + * include/freetype/freetype.h, src/base/ftobjs.c, 1.7124 + src/smooth/ftsmooth.c, include/freetype/ftimage.h: Adding support 1.7125 + for LCD-optimized rendering though the new constants/enums: 1.7126 + 1.7127 + FT_RENDER_MODE_LCD, FT_RENDER_MODE_LCD_V 1.7128 + FT_PIXEL_MODE_LCD, FT_PIXEL_MODE_LCD_V 1.7129 + 1.7130 + This is still work in progress, don't expect everything to work 1.7131 + correctly though most of the features have been implemented. 1.7132 + 1.7133 + * Adding new FT_LOAD_XXX flags, used to specify both hinting and 1.7134 + rendering targets: 1.7135 + 1.7136 + FT_LOAD_TARGET_NORMAL :: anti-aliased hinting & rendering 1.7137 + FT_LOAD_TARGET_MONO :: monochrome bitmaps 1.7138 + FT_LOAD_TARGET_LCD :: horizontal RGB/BGR decimated 1.7139 + hinting & rendering 1.7140 + FT_LOAD_TARGET_LCD_V :: vertical RGB/BGR decimated 1.7141 + hinting & rendering 1.7142 + 1.7143 + Note that FT_LOAD_TARGET_NORMAL is 0, which means that the default 1.7144 + behaviour of the font engine is _unchanged_. 1.7145 + 1.7146 + * include/freetype/ftimage.h 1.7147 + (FT_Outline_{Move,Line,Conic,Cubic}To_Func): Renamed to... 1.7148 + (FT_Outline_{Move,Line,Conic,Cubic}ToFunc): This. 1.7149 + (FT_Raster_Span_Func): Renamed to ... 1.7150 + (FT_SpanFunc): This. 1.7151 + (FT_Raster_{New,Done,Reset,Set_Mode,Render}_Func): Renamed to ... 1.7152 + (FT_Raster_{New,Done,Reset,SetMode,Render}Func}: This. 1.7153 + 1.7154 + Updated all affected code. 1.7155 + 1.7156 + * include/freetype/ftrender.h 1.7157 + (FT_Glyph_{Init,Done,Transform,BBox,Copy,Prepare}_Func): Renamed 1.7158 + to ... 1.7159 + (FT_Glyph_{Init,Done,Transform,GetBBox,Copy,Prepare}Func): This. 1.7160 + (FTRenderer_{render,transform,getCBox,setMode}): Renamed to ... 1.7161 + (FT_Renderer_{RenderFunc,TransformFunc,GetCBoxFunc,SeteModeFunc}): 1.7162 + This. 1.7163 + 1.7164 + Updated all affected code. 1.7165 + 1.7166 + * src/autohint/ahtypes.h (AH_Point, AH_Segment, AH_Edge, AH_Globals, 1.7167 + AH_Face_Globals, AH_Outline, AH_Hinter): These typedefs are now 1.7168 + pointers to the corresponding `*Rec' structures. All source files 1.7169 + have been updated accordingly. 1.7170 + 1.7171 + * src/cff/cffgload.c (cff_decoder_init): Add hint mode as parameter. 1.7172 + * src/cff/cffgload.h (CFF_Decoder): Add `hint_mode' element. 1.7173 + 1.7174 + * src/cid/cidgload.c (CID_Compute_Max_Advance): Renamed to... 1.7175 + (cid_face_compute_max_advance): This. 1.7176 + (CID_Load_Glyph): Renamed to... 1.7177 + (cid_slot_load_glyph): This. 1.7178 + * src/cid/cidload.c (CID_Open_Face): Renamed to... 1.7179 + (cid_face_open): This. 1.7180 + * src/cid/cidobjs.c (CID_GlyphSlot_{Done,Init}): Renamed to... 1.7181 + (cid_slot_{done,init}): This. 1.7182 + (CID_Size_{Get_Globals_Funcs,Done,Reset): Renamed to... 1.7183 + (cid_size_{get_globals_funcs,done,reset): This. 1.7184 + (CID_Face_{Done,Init}): Renamed to... 1.7185 + (cid_face_{done,init}): This. 1.7186 + (CID_Driver_{Done,Init}: Renamed to... 1.7187 + (cid_driver_{done,init}: This. 1.7188 + * src/cid/cidparse.c (CID_{New,Done}_Parser): Renamed to... 1.7189 + (cid_parser_{new,done}): This. 1.7190 + * src/cid/cidparse.h (CID_Skip_{Spaces,Alpha}): Renamed to... 1.7191 + (cid_parser_skip_{spaces,alpha}): This. 1.7192 + (CID_To{Int,Fixed,CoordArray,FixedArray,Token,TokenArray}): Renamed 1.7193 + to... 1.7194 + (cid_parser_to_{int,fixed,coord_array,fixed_array,token,token_array}): 1.7195 + This. 1.7196 + (CID_Load_{Field,Field_Table): Renamed to... 1.7197 + (cid_parser_load_{field,field_table}): This. 1.7198 + * src/cid/cidriver.c (CID_Get_Interface): Renamed to... 1.7199 + (cid_get_interface): This. 1.7200 + 1.7201 + Updated all affected code. 1.7202 + 1.7203 + * src/psaux/psobjs.c (PS_Table_*): Renamed to... 1.7204 + (ps_table_*): This. 1.7205 + (T1_Builder_*): Renamed to... 1.7206 + (t1_builder_*): This. 1.7207 + * src/psaux/t1decode.c (T1_Decoder_*): Renamed to... 1.7208 + (t1_decoder_*): This. 1.7209 + 1.7210 + * src/psnames/psmodule.c (PS_*): Renamed to... 1.7211 + (ps_*): This. 1.7212 + 1.7213 + Updated all affected code. 1.7214 + 1.7215 + * src/sfnt/sfdriver (SFNT_Get_Interface): Renamed to... 1.7216 + (sfnt_get_interface): This. 1.7217 + * src/sfnt/sfobjs.c (SFNT_*): Renamed to... 1.7218 + (sfnt_*): This. 1.7219 + * src/sfnt/ttcmap.c (TT_CharMap_{Load,Free}): Renamed to... 1.7220 + (tt_face_{load,free}_charmap): This. 1.7221 + * src/sfnt/ttcmap0.c (TT_Build_CMaps): Renamed to... 1.7222 + (tt_face_build_cmaps): This. 1.7223 + * src/sfnt/ttload.c (TT_*): Renamed to... 1.7224 + (tt_face_*): This. 1.7225 + * src/sfnt/ttpost.c (TT_Post_Default_Names): Renamed to... 1.7226 + (tt_post_default_names): This. 1.7227 + (Load_*): Renamed to... 1.7228 + (load_*): This. 1.7229 + (TT_*): Renamed to... 1.7230 + (tt_face_*): This. 1.7231 + * src/sfnt/ttsbit.c (TT_*): Renamed to... 1.7232 + (tt_face_*): This. 1.7233 + ({Find,Load,Crop}_*): Renamed to... 1.7234 + ({find,load,crop}_*): This. 1.7235 + 1.7236 + Updated all affected code. 1.7237 + 1.7238 + * src/smooth/ftsmooth.c (ft_smooth_render): Renamed to... 1.7239 + (ft_smooth_render_generic): This. 1.7240 + Make function more generic by adding vertical and horizontal scaling 1.7241 + factors. 1.7242 + (ft_smooth_render, ft_smooth_render_lcd, ft_smooth_render_lcd_v): 1.7243 + New functions. 1.7244 + 1.7245 + (ft_smooth_locd_renderer_class, ft_smooth_lcdv_renderer_class): New 1.7246 + classes. 1.7247 + 1.7248 + * src/truetype/ttobjs.c (TT_{Done,New}_GlyphZone): Renamed to... 1.7249 + (tt_glyphzone_{done,new}): This. 1.7250 + (TT_{Face,Size,Driver}_*): Renamed to... 1.7251 + (tt_{face,size,driver}_*): This. 1.7252 + * src/truetype/ttpload.c (TT_Load_Locations): Renamed to... 1.7253 + (tt_face_load_loca): This. 1.7254 + (TT_Load_Programs): Renamed to... 1.7255 + (tt_face_load_fpgm): This. 1.7256 + (TT_*): Renamed to... 1.7257 + (tt_face_*): This. 1.7258 + 1.7259 +2002-08-27 Werner Lemberg <wl@gnu.org> 1.7260 + 1.7261 + * docs/VERSION.DLL: New file. 1.7262 + 1.7263 +2002-08-23 Graham Asher <graham.asher@btinternet.com> 1.7264 + 1.7265 + * src/cff/cffgload.c (cff_operator_seac) 1.7266 + [FT_CONFIG_OPTION_INCREMENTAL]: Incremental fonts (actually not 1.7267 + incremental in the case of CFF but just using callbacks to get glyph 1.7268 + recipes) pass the character code, not the glyph index, to the 1.7269 + get_glyph_data function; they have no valid charset table. 1.7270 + 1.7271 + * src/cff/cffload.c (cff_font_load): Removed special cases for 1.7272 + FT_CONFIG_OPTION_INCREMENTAL, which are no longer necessary; CFF 1.7273 + fonts provided via the incremental interface now have to conform 1.7274 + more closely to the CFF font format. 1.7275 + 1.7276 + * src/cff/cffload.h (cff_font_load): Removed argument now unneeded. 1.7277 + 1.7278 + * src/cff/cffobjs.c (cff_face_init): Changed call to cff_font_load 1.7279 + to conform with new signature. 1.7280 + 1.7281 +2002-08-22 David Turner <david@freetype.org> 1.7282 + 1.7283 + * src/base/ftobject.c, src/base/ftsynth.c, src/base/ftstroker.c, 1.7284 + src/bdf/bdfdrivr.c: Removed compiler warnings. 1.7285 + 1.7286 +2002-08-21 Werner Lemberg <wl@gnu.org> 1.7287 + 1.7288 + * src/pshinter/pshalgo3.c (psh3_glyph_compute_inflections, 1.7289 + psh3_glyph_compute_extrema, psh3_hint_table_find_strong_point): Fix 1.7290 + compiler warnings and resolve shadowing of local variables. 1.7291 + 1.7292 +2002-08-21 David Turner <david@freetype.org> 1.7293 + 1.7294 + The automatic and Postscript hinter now automatically detect 1.7295 + inflection points in glyph outlines and treats them specially. This 1.7296 + is very useful to prevent nasty effect like the disappearing 1.7297 + diagonals of `S' and `s' in many, many fonts. 1.7298 + 1.7299 + * src/autohint/ahtypes.h (ah_flag_inflection): New macro. 1.7300 + * src/autohint/ahangles.c (ah_angle_diff): New function. 1.7301 + * src/autohint/ahangles.h: Updated. 1.7302 + * src/autohint/ahglyph.c (ah_outline_compute_inflections): New 1.7303 + function. 1.7304 + (ah_outline_detect_features): Use it. 1.7305 + * src/autohint/ahhint.c (ah_hinter_align_strong_points) 1.7306 + [!AH_OPTION_NO_WEAK_INTERPOLATION]: Handle inflection. 1.7307 + 1.7308 + * src/tools/docmaker/docmaker.py, src/tools/docmaker/utils.py, 1.7309 + src/tools/docmaker/tohtml.py: Updating the DocMaker tool. 1.7310 + 1.7311 + * include/freetype/freetype.h: Changing the type of the `load_flags' 1.7312 + parameter from `FT_Int' to `FT_Int32', this in order to support more 1.7313 + options. This should only break binary and/or source compatibility 1.7314 + on 16-bit platforms (Atari?). 1.7315 + (FT_LOAD_NO_AUTOHINT): New macro. 1.7316 + 1.7317 + * src/base/ftobjs.c (FT_Load_Glyph): Updated. 1.7318 + Handle FT_LOAD_NO_AUTOHINT. 1.7319 + (FT_Load_Char): Updated. 1.7320 + 1.7321 + * src/pshinter/pshalgo3.c, src/base/ftobjs.c, src/base/ftobject.c, 1.7322 + src/autohint/ahglyph.c, include/freetype/freetype.h: Fixing typos 1.7323 + and removing compiler warnings. 1.7324 + 1.7325 +2002-08-20 Werner Lemberg <wl@gnu.org> 1.7326 + 1.7327 + * src/truetype/ttgload.c (TT_Get_Metrics): Add guard for k = 0. 1.7328 + 1.7329 +2002-08-20 David Turner <david@freetype.org> 1.7330 + 1.7331 + * src/pshinter/pshalgo1.c, src/pshinter/pshalgo2.c, 1.7332 + src/pshinter/pshglob.c, src/pshinter/pshrec.c, 1.7333 + src/autohint/ahmodule.c [DEBUG_HINTER]: Removing compiler warnings 1.7334 + (only used in development builds anyway). 1.7335 + 1.7336 + Improve support of local extrema and stem edge points. 1.7337 + 1.7338 + * src/pshinter/pshalgo3.h (PSH3_Hint_TableRec): Use PSH3_ZoneRec 1.7339 + for `zones'. 1.7340 + (PSH3_DIR_UP, PSH3_DIR_DOWN): Exchange values. 1.7341 + (PSH3_DIR_HORIZONTAL, PSH3_DIR_VERTICAL): New macros. 1.7342 + (PSH3_DIR_COMPARE, PSH3_DIR_IS_HORIZONTAL, PSH3_IS_VERTICAL): New 1.7343 + macros. 1.7344 + (PSH3_POINT_INFLEX): New enum. 1.7345 + (psh3_point_{is,set}_{off,inflex}): New macros. 1.7346 + (PSH3_POINT_{EXTREMUM,POSITIVE,NEGATIVE,EDGE_MIN,EDGE_MAX): New 1.7347 + enum values. 1.7348 + (psh3_point_{is,set}_{extremum,positive,negative,edge_min,edge_max}): 1.7349 + New macros. 1.7350 + (PSH3_PointRec): New members `flags2' and `org_v'. 1.7351 + (PSH3_POINT_EQUAL_ARG, PSH3_POINT_ANGLE): New macros. 1.7352 + 1.7353 + * src/pshinter/pshalgo3.c [DEBUG_HINTER]: Removing compiler 1.7354 + warnings. 1.7355 + (COMPUTE_INFLEXS): New macro. 1.7356 + (psh3_hint_align): Simplify some basic arithmetic computations. 1.7357 + (psh3_point_is_extremum): Removed. 1.7358 + (psh3_glyph_compute_inflections) [COMPUTE_INFLEXS]: New function. 1.7359 + (psh3_glyph_init) [COMPUTE_INFLEXS]: Use it. 1.7360 + (psh3_glyph_compute_extrema): New function. 1.7361 + (PSH3_STRONG_THRESHOLD): Increased to 30. 1.7362 + (psh3_hint_table_find_strong_point): Improved. 1.7363 + (psh3_glyph_find_strong_points, 1.7364 + psh3_glyph_interpolate_strong_points): Updated. 1.7365 + (psh3_hints_apply): Use psh3_glyph_compute_extrema. 1.7366 + 1.7367 + * test/gview.c (draw_ps3_hint, ps3_draw_control_points): New 1.7368 + functions. 1.7369 + Other small updates. 1.7370 + 1.7371 + * Jamfile: Small updates. 1.7372 + 1.7373 +2002-08-18 Arkadiusz Miskiewicz <misiek@pld.ORG.PL> 1.7374 + 1.7375 + * builds/unix/install.mk (install, uninstall): Add $(DESTDIR) to 1.7376 + make life easier for package maintainers. 1.7377 + 1.7378 +2002-08-18 Werner Lemberg <wl@gnu.org> 1.7379 + 1.7380 + * src/pcf/pcfdriver.c (PCF_Glyph_Load): Fix computation of 1.7381 + horiBearingX. 1.7382 + * src/bdf/bdfdrivr.c (BDF_GlyphLoad): Fix computation of 1.7383 + horiBearingY. 1.7384 + 1.7385 +2002-08-16 George Williams <gww@silcom.com> 1.7386 + 1.7387 + Add support for Apple composite glyphs. 1.7388 + 1.7389 + * include/freetype/config/ftoption.h 1.7390 + (TT_CONFIG_OPTION_COMPONENT_OFFSET_SCALED): New macro. 1.7391 + 1.7392 + * src/truetype/ttgload.c (OVERLAP_COMPOUND, SCALED_COMPONENT_OFFSET, 1.7393 + UNSCALED_COMPONENT_OFFSET): New macros for additional OpenType 1.7394 + glyph loading flags. 1.7395 + (load_truetype_glyph): Implement it. 1.7396 + 1.7397 +2002-08-16 Werner Lemberg <wl@gnu.org> 1.7398 + 1.7399 + * src/cff/cffgload.c (cff_free_glyph_data), 1.7400 + src/cff/cffload.c (cff_font_load): Use FT_UNUSED. 1.7401 + 1.7402 +2002-08-15 Werner Lemberg <wl@gnu.org> 1.7403 + 1.7404 + * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Initialize `error'. 1.7405 + * src/sfnt/sfobjs.c (SFNT_Load_Face): Fix compiler warning. 1.7406 + 1.7407 +2002-08-15 Graham Asher <graham.asher@btinternet.com> 1.7408 + 1.7409 + Implemented the incremental font loading system for the CFF driver. 1.7410 + Tested using the GhostScript-to-FreeType bridge (under development). 1.7411 + 1.7412 + * src/cff/cffgload.c (cff_get_glyph_data, cff_free_glyph_data): New 1.7413 + functions. 1.7414 + (cff_operator_seac, cff_compute_max_advance, cff_slot_load): Use 1.7415 + them. 1.7416 + * src/cff/cffload.c (cff_font_load): Add `face' parameter. 1.7417 + Load charset and encoding only if there are glyphs. 1.7418 + [FT_CONFIG_OPTION_INCREMENTAL]: Incremental fonts don't need 1.7419 + character recipes. 1.7420 + * src/cff/cffload.h, src/cff/cffobjs.c: Updated. 1.7421 + 1.7422 + * src/cid/cidgload.c (cid_load_glyph) 1.7423 + [FT_CONFIG_OPTION_INCREMENTAL]: Corrected the incremental font 1.7424 + loading implementation to use the new system introduced on 1.7425 + 2002-08-01. 1.7426 + 1.7427 +2002-08-06 Werner Lemberg <wl@gnu.org> 1.7428 + 1.7429 + * src/cff/cffcmap.c: Remove compiler warnings. 1.7430 + * src/cache/ftccache.c, src/cache/ftccache.i, 1.7431 + src/pfr/pfrload.c, src/pfr/pfrgload.c: s/index/idx/. 1.7432 + * src/cff/cffload.c: s/select/fdselect/. 1.7433 + * src/raster/ftraster.c: s/wait/waiting/. 1.7434 + 1.7435 +2002-08-01 Graham Asher <graham.asher@btinternet.com> 1.7436 + 1.7437 + * src/type1/t1load.c (T1_Open_Face): Tolerate a face with no 1.7438 + charstrings if there is an incremental loading interface. Type 1 1.7439 + faces supplied by PostScript interpreters like GhostScript will 1.7440 + typically not provide any charstrings at load time, so this is 1.7441 + essential if they are to work. 1.7442 + 1.7443 +2002-08-01 Graham Asher <graham.asher@btinternet.com> 1.7444 + 1.7445 + Modified incremental loading interface to be closer to David's 1.7446 + preferences. The header freetype.h is not now affected, the 1.7447 + interface is specified via an FT_Parameter, the pointer to the 1.7448 + interface is hidden in an internal part of the face record, and all 1.7449 + the definitions are in ftincrem.h. 1.7450 + 1.7451 + * include/freetype/freetype.h [FT_CONFIG_OPTION_INCREMENTAL]: 1.7452 + Removed. 1.7453 + * include/freetype/internal/ftobjs.h [FT_CONFIG_OPTION_INCREMENTAL]: 1.7454 + Include FT_INCREMENTAL_H. 1.7455 + (FT_Face_InternalRec) [FT_CONFIG_OPTION_INCREMENTAL]: Add 1.7456 + `incremental_interface'. 1.7457 + 1.7458 + * src/base/ftobjs.c (open_face, FT_Open_Face) 1.7459 + [FT_CONFIG_OPTION_INCREMENTAL]: Updated. 1.7460 + * src/sfnt/sfobjs.c (SFNT_Load_Face) [FT_CONFIG_OPTION_INCREMENTAL]: 1.7461 + Updated. 1.7462 + 1.7463 + * src/truetype/ttgload.c (load_truetype_glyph) 1.7464 + [FT_CONFIG_OPTION_INCREMENTAL]: Updated. 1.7465 + Free loaded glyph data properly. 1.7466 + (compute_glyph_metrics, TT_Load_Glyph) 1.7467 + [FT_CONFIG_OPTION_INCREMENTAL]: Updated. 1.7468 + * src/truetype/ttobjs.c (TT_Face_Init) 1.7469 + [FT_CONFIG_OPTION_INCREMENTAL]: Updated. 1.7470 + 1.7471 + * src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String) 1.7472 + [FT_CONFIG_OPTION_INCREMENTAL]: Updated. 1.7473 + (T1_Parse_Glyph) [FT_CONFIG_OPTION_INCREMENTAL]: Updated. 1.7474 + Free loaded glyph data properly. 1.7475 + (T1_Load_Glyph): Updated. 1.7476 + [FT_CONFIG_OPTION_INCREMENTAL]: Free loaded glyph data properly. 1.7477 + 1.7478 +2002-07-30 David Turner <david@freetype.org> 1.7479 + 1.7480 + * include/freetype/ftincrem.h: Adding new experimental header file 1.7481 + to demonstrate a `cleaner' API to support incremental font loading. 1.7482 + 1.7483 + * include/freetype/config/ftheader.h (FT_INCREMENTAL_H): New macro. 1.7484 + 1.7485 + * src/tools/docmaker/*: Adding new (more advanced) version of 1.7486 + the DocMaker tool, using Python's sophisticated regexps. 1.7487 + 1.7488 +2002-07-28 Werner Lemberg <wl@gnu.org> 1.7489 + 1.7490 + s/ft_memset/FT_MEM_SET/. 1.7491 + s/FT_MEM_SET/FT_MEM_ZERO/ where appropriate. 1.7492 + 1.7493 +2002-07-27 Werner Lemberg <wl@gnu.org> 1.7494 + 1.7495 + * src/sfnt/ttload.c (sfnt_dir_check): Make it work with TTCs. 1.7496 + 1.7497 +2002-07-26 Werner Lemberg <wl@gnu.org> 1.7498 + 1.7499 + * src/truetype/ttgload.c (load_truetype_glyph) 1.7500 + [FT_CONFIG_OPTION_INCREMENTAL]: s/memset/ft_memset/. 1.7501 + 1.7502 + * src/autohint/ahhint.c (ah_hint_edges_3): Fix compiler warning. 1.7503 + * src/cff/cffload.c (cff_encoding_load): Remove `memory' variable. 1.7504 + * src/cff/cffcmap.c (cff_cmap_encoding_init): Remove `psnames' 1.7505 + variable. 1.7506 + * src/truetype/ttgload.c (load_truetype_glyph): Remove statement 1.7507 + without effect. 1.7508 + * src/truetype/ttdriver (Get_Char_Index, Get_Next_Char): Removed. 1.7509 + 1.7510 + * src/pshinter/pshalgo3.c (psh3_hint_table_record, 1.7511 + psh3_hint_table_init, psh3_hint_table_activate_mask): Fix error 1.7512 + message. 1.7513 + 1.7514 +2002-07-24 Graham Asher <graham.asher@btinternet.com> 1.7515 + 1.7516 + * src/truetype/ttobjs.c: Fix for bug reported by Sven Neumann 1.7517 + [sven@gimp.org] on the FreeType development forum: `If 1.7518 + FT_CONFIG_OPTION_INCREMENTAL is undefined (this is the default), the 1.7519 + TrueType loader crashes in line 852 of src/truetype/ttgload.c when 1.7520 + it tries to access face->glyph_locations.' 1.7521 + 1.7522 +2002-07-18 Graham Asher <graham.asher@btinternet.com> 1.7523 + 1.7524 + Added types and structures to support incremental typeface loading. 1.7525 + The FT_Incremental_Interface structure, defined in freetype.h, is 1.7526 + designed to be passed to FT_Open_Face to provide callback functions 1.7527 + to obtain glyph recipes and metrics, for fonts like those passed 1.7528 + from PostScript that do not necessarily provide all, or any, glyph 1.7529 + information, when first opened. 1.7530 + 1.7531 + * include/freetype/config/ftoption.h (FT_CONFIG_OPTION_INCREMENTAL): 1.7532 + New configuration macro to enable incremental face loading. By 1.7533 + default it is not defined. 1.7534 + 1.7535 + * include/freetype/freetype.h (FT_Basic_Glyph_Metrics, 1.7536 + FT_Get_Glyph_Data_Func, FT_Get_Glyph_Metrics_Func, 1.7537 + FT_Incremental_Interface_Funcs, FT_Incremental_Interface) 1.7538 + [FT_CONFIG_OPTION_INCREMENTAL]: New. 1.7539 + (FT_Open_Args, FT_FaceRec) [FT_CONFIG_OPTION_INCREMENTAL]: New field 1.7540 + `incremental_interface'. 1.7541 + (FT_Open_Flags) [FT_CONFIG_OPTION_INCREMENTAL]: New enum 1.7542 + `ft_open_incremental'. 1.7543 + 1.7544 + * include/freetype/fttypes.h: Include FT_CONFIG_CONFIG_H. 1.7545 + (FT_Data): New structure to represent binary data. 1.7546 + 1.7547 + * src/base/ftobjs.c (open_face) [FT_CONFIG_OPTION_INCREMENTAL]: 1.7548 + Add parameter for incremental loading. 1.7549 + (FT_Open_Face) [FT_CONFIG_OPTION_INCREMENTAL]: Use incremental 1.7550 + interface. 1.7551 + 1.7552 + * src/truetype/ttgload.c (load_truetype_glyph) 1.7553 + [FT_CONFIG_OPTION_INCREMENTAL]: Added the incremental loading system 1.7554 + for the TrueType driver. 1.7555 + (compute_glyph_metrics): Return FT_Error. 1.7556 + [FT_CONFIG_OPTION_INCREMENTAL]: Check for overriding metrics. 1.7557 + (TT_Load_Glyph) [FT_CONFIG_OPTION_INCREMENTAL]: Don't look for 1.7558 + the glyph table while handling an incremental font. 1.7559 + Get glyph offset. 1.7560 + 1.7561 + * src/truetype/ttobjs.c (TT_Face_Init) 1.7562 + [FT_CONFIG_OPTION_INCOREMENTAL]: Added the incremental loading 1.7563 + system for the TrueType driver. 1.7564 + 1.7565 + * src/cid/cidgload.c (cid_load_glyph) 1.7566 + [FT_CONFIG_OPTION_INCREMENTAL]: Added the incremental loading system 1.7567 + for the CID driver. 1.7568 + 1.7569 + * src/sfnt/sfobjs.c (SFNT_Load_Face) [FT_CONFIG_OPTION_INCREMENTAL]: 1.7570 + Changes to support incremental Type 42 fonts: Assume a font has 1.7571 + glyphs if it has an incremental interface object. 1.7572 + 1.7573 + * src/type1/t1gload.c (T1_Parse_Glyph): Renamed to... 1.7574 + (T1_Parse_Glyph_And_Get_Char_String): This. 1.7575 + [FT_CONFIG_OPTION_INCREMENTAL]: Added support for incrementally 1.7576 + loaded Type 1 faces. 1.7577 + (T1_Parse_Glyph): New function. 1.7578 + (T1_Load_Glyph): Updated. 1.7579 + 1.7580 +2002-07-17 David Turner <david@freetype.org> 1.7581 + 1.7582 + Cleaning up the cache sub-system code; linear hashing is now the 1.7583 + default. 1.7584 + 1.7585 + * include/freetype/cache/ftccache.h, src/cache/ftccache.i, 1.7586 + src/cache/ftccache.c [!FTC_CACHE_USE_LINEAR_HASHING]: Removed. 1.7587 + (FTC_CACHE_USE_LINEAR_HASHING: Removed also. 1.7588 + 1.7589 + FT_CONFIG_OPTION_USE_CMAPS is now the default. 1.7590 + 1.7591 + * include/freetype/internal/ftdriver.h (FT_Driver_ClassRec): Remove 1.7592 + `get_char_index' and `get_next_char'. 1.7593 + 1.7594 + * include/freetype/config/ftoption.h, 1.7595 + include/freetype/internal/tttypes.h, src/base/ftobjs.c, 1.7596 + src/bdf/bdfdrivr.c, src/cff/cffobjs.c, src/pcf/pcfdrivr.c, 1.7597 + src/pfr/pfrdrivr.c, src/sfnt/sfobjs.c, src/sfnt/ttcmap0.c, 1.7598 + src/sfnt/ttcmap0.h, src/sfnt/ttload.c, src/type1/t1objs.c, 1.7599 + src/type42/t42objs.c, src/winfonts/winfnt.c 1.7600 + [!FT_CONFIG_OPTION_USE_CMAPS]: Removed. The new cmap code is now 1.7601 + the default. 1.7602 + 1.7603 + * src/type42/t42objs.c (T42_CMap_CharIndex, T42_CMap_CharNext): 1.7604 + Removed. 1.7605 + * src/type42/t42objs.h: Updated. 1.7606 + 1.7607 + * src/cid/cidriver.c (Cid_Get_Char_Index, Cid_Get_Next_Char): 1.7608 + Removed. 1.7609 + (t1_cid_driver_class): Updated. 1.7610 + * src/truetype/ttdriver.c (tt_driver_class): Updated. 1.7611 + * src/type1/t1driver.c (Get_Char_Index, Get_Next_Char): Removed 1.7612 + (t1_driver_class): Updated. 1.7613 + * src/type42/t42drivr.c (t42_driver_class): Updated. 1.7614 + 1.7615 + * src/base/ftobjs.c (open_face): Select Unicode cmap by default. 1.7616 + 1.7617 + * src/sfnt/ttload.c (TT_Load_SFNT_Header): Fixed a recent bug that 1.7618 + prevented OpenType fonts to be recognized by FreeType. 1.7619 + 1.7620 +2002-07-11 David Turner <david@freetype.org> 1.7621 + 1.7622 + Changing the SFNT loader to check for SFNT-based font files 1.7623 + differently. We now ignore the range `helper' fields and check the 1.7624 + `head' table's magic number instead. 1.7625 + 1.7626 + * include/freetype/internal/tttypes.h (SFNT_HeaderRec): Add `offset' 1.7627 + field. 1.7628 + 1.7629 + * src/sfnt/ttload.c (sfnt_dir_check): New function. 1.7630 + (TT_Load_SFNT_HeaderRec): Renamed to... 1.7631 + (TT_Load_SFNT_Header): This. 1.7632 + Implement new functionality. 1.7633 + * src/sfnt/ttload.h: Updated. 1.7634 + * src/sfnt/sfdriver.c (sfnt_interface): Updated. 1.7635 + 1.7636 + * src/base/ftobject.c, src/base/fthash.c: Updated object sub-system 1.7637 + and dynamic hash table implementation (still experimental, don't 1.7638 + use). 1.7639 + * include/freetype/internal/fthash.h: Updated. 1.7640 + * include/freetype/internal/ftobjs.h (FT_LibraryRec): New member 1.7641 + `meta_class'. 1.7642 + 1.7643 + Fixing a bug in the Type 1 loader that prevented valid font bounding 1.7644 + boxes to be loaded from multiple master fonts. 1.7645 + 1.7646 + * include/freetype/t1tables.h (PS_BlendRec): Add `bboxes' field. 1.7647 + 1.7648 + * include/freetype/internal/psaux.h (T1_FieldType): Add 1.7649 + `T1_FIELD_TYPE_BBOX'. 1.7650 + (T1_FieldLocation): Add `T1_FIELD_LOCATION_BBOX'. 1.7651 + (T1_FIELD_BBOX): New macro. 1.7652 + 1.7653 + * src/psaux/psobjs.c (PS_Parser_LoadField): Handle T1_FIELD_TYPE_BBOX. 1.7654 + * src/type1/t1load.c (t1_allocate_blend): Create blend->bboxes. 1.7655 + (T1_Done_Blend): Free blend->bboxes. 1.7656 + (t1_load_keyword): Handle T1_FIELD_LOCATION_BBOX. 1.7657 + (parse_font_bbox): Commented out. 1.7658 + (t1_keywords): Comment out `parse_font_bbox'. 1.7659 + * src/type1/t1tokens.h: Define `FontBBox' field. 1.7660 + 1.7661 +2002-07-10 David Turner <david@freetype.org> 1.7662 + 1.7663 + * src/cff/cffobjs.c: Small fix to select the Unicode charmap by 1.7664 + default when needed. 1.7665 + Small fix to allow OpenType fonts to support Adobe charmaps when 1.7666 + needed. 1.7667 + 1.7668 + * src/cff/cffcmap.c, src/cff/cffcmap.h: New files to support 1.7669 + charmaps for CFF fonts. 1.7670 + 1.7671 + * src/cff/cff.c, src/cff/Jamfile, src/cff/rules.mk: Updated. 1.7672 + 1.7673 + * include/freetype/internal/cfftypes.h (CFF_EncodingRec): Use 1.7674 + fixed-length arrays for `sids' and `codes'. Add `count' member. 1.7675 + (CFF_FontRec): Add `psnames' member. 1.7676 + 1.7677 + * src/cff/cffdrivr.c, src/cff/cffload.c, src/cff/cffload.h, 1.7678 + src/cff/cffobjs.c, src/cff/cffobjs.h, src/cff/cffparse.c, 1.7679 + src/cffparse.h, src/cff/cffgload.c, src/cff/cffgload.h: Adding 1.7680 + support for CFF charmaps, reformatting the sources, and removing 1.7681 + some bugs in the Encoding and Charset loaders. 1.7682 + Many fonts renamed to use lowercase only: 1.7683 + 1.7684 + CFF_Builder_Init -> cff_builder_init 1.7685 + CFF_Builder_Done -> cff_builder_done 1.7686 + CFF_Init_Decoder -> cff_decoder_init 1.7687 + CFF_Parse_CharStrings -> cff_decoder_parse_charstrings 1.7688 + CFF_Load_Glyph -> cff_slot_load 1.7689 + CFF_Init_Decoder -> cff_decoder_init 1.7690 + CFF_Prepare_Decoder -> cff_decoder_prepare 1.7691 + CFF_Get_Standard_Encoding -> cff_get_standard_encoding 1.7692 + CFF_Access_Element -> cff_index_access_element 1.7693 + CFF_Forget_Element -> cff_index_forget_element 1.7694 + CFF_Get_Name -> cff_index_get_name 1.7695 + CFF_Get_String -> cff_index_get_sid_string 1.7696 + CFF_Get_FD -> cff_fd_select_get 1.7697 + CFF_Done_Charset -> cff_charset_done 1.7698 + CFF_Load_Charset -> cff_charset_load 1.7699 + CFF_Done_Encoding -> cff_encoding_done 1.7700 + CFF_Load_Encoding -> cff_encoding_load 1.7701 + CFF_Done_SubFont -> cff_subfont_done 1.7702 + CFF_Load_Font -> cff_font_load 1.7703 + CFF_Done_Font -> cff_font_done 1.7704 + CFF_Size_Get_Global_Funcs -> cff_size_get_global_funcs 1.7705 + CFF_Size_Done -> cff_size_done 1.7706 + CFF_Size_Init -> cff_size_init 1.7707 + CFF_Size_Reset -> cff_size_reset 1.7708 + CFF_GlyphSlot_Done -> cff_slot_done 1.7709 + CFF_GlyphSlot_Init -> cff_slot_init 1.7710 + CFF_StrCopy -> cff_strcpy 1.7711 + CFF_Face_Init -> cff_face_init 1.7712 + CFF_Face_Done -> cff_face_done 1.7713 + CFF_Driver_Init -> cff_driver_init 1.7714 + CFF_Driver_Done -> cff_driver_done 1.7715 + CFF_Parser_Init -> cff_parser_init 1.7716 + CFF_Parser_Run -> cff_parser_run 1.7717 + 1.7718 + add_point -> cff_builder_add_point 1.7719 + add_point1 -> cff_builder_add_point1 1.7720 + add_contour -> cff_builder_add_contour 1.7721 + close_contour -> cff_builder_close_contour 1.7722 + cff_explicit_index -> cff_index_get_pointers 1.7723 + 1.7724 +2002-07-09 Owen Taylor <owen@redhat.com> 1.7725 + 1.7726 + * src/pshinter/pshglob.c (psh_globals_new): Fixed a bug that 1.7727 + prevented the hinter from using correct standard width and height 1.7728 + values, resulting in hinting bugs with certain fonts (e.g. Utopia). 1.7729 + 1.7730 +2002-07-07 David Turner <david@freetype.org> 1.7731 + 1.7732 + * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Added code to return 1.7733 + successfully when the function is called with a bitmap glyph (the 1.7734 + previous code simply returned with an error). 1.7735 + 1.7736 + * docs/DEBUG.TXT: Adding debugging support documentation. 1.7737 + 1.7738 + * src/base/ftdebug.c (ft_debug_init), builds/win32/ftdebug.c 1.7739 + (ft_debug_init), builds/amiga/src/ftdebug.c (ft_debug_init): Changed 1.7740 + the syntax of the FT2_DEBUG environment variable used to control 1.7741 + debugging output (i.e. logging and error messages). It must now 1.7742 + look like: 1.7743 + 1.7744 + any:6 memory:4 io:3 or 1.7745 + any:6,memory:4,io:3 or 1.7746 + any:6;memory:4;io:3 1.7747 + 1.7748 +2002-07-07 Owen Taylor <owen@redhat.com> 1.7749 + 1.7750 + * src/pshinter/pshglob.c (psh_blues_snap_stem): Adding support for 1.7751 + blue fuzz. 1.7752 + * src/pshinter/pshglob.h (PSH_BluesRec): Add `blue_fuzz' field. 1.7753 + * src/type1/t1load.c (T1_Open_Face): Initialize `blue_fuzz'. 1.7754 + 1.7755 + Adding support for hinter-specific bit flags, and the new 1.7756 + FT_Set_Hint_Flags high-level API. 1.7757 + 1.7758 + * include/freetype/freetype.h (FT_Set_Hint_Flags): New function. 1.7759 + (FT_HINT_NO_INTEGER_STEM, FT_HINT_NO_HSTEM_ALIGN, 1.7760 + FT_HINT_NO_VSTEM_ALIGN): New macros. 1.7761 + 1.7762 + * include/freetype/internal/ftobjs.h (FT_Face_InternalRec): Add 1.7763 + `hint_flags' member. 1.7764 + 1.7765 + * src/base/ftobjs.c (FT_Set_Hint_Flags): New function. 1.7766 + 1.7767 + * include/freetype/internal/psaux.h (T1_DecoderRec): Add `hint_flags' 1.7768 + member. 1.7769 + 1.7770 + * include/freetype/internal/pshints.h (T1_Hints_ApplyFunc, 1.7771 + T2_Hints_ApplyFunc): Add parameter to pass hint flags. 1.7772 + 1.7773 + * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings, 1.7774 + T1_Decoder_Init): Use decoder->hint_flags. 1.7775 + * src/cff/cffgload.h (CFF_Builder): Add `hint_flags' field. 1.7776 + * src/cff/cffgload.c (CFF_Builder_Init): Set builder->hint_flags. 1.7777 + (CFF_Parse_CharStrings): Updated. 1.7778 + * src/pshinter/pshalgo1.c (ps1_hints_apply): Add parameter to handle 1.7779 + hint flags (unused). 1.7780 + * src/pshinter/pshalgo1.h: Updated. 1.7781 + * src/pshinter/pshalgo2.c (ps2_hints_apply): Add parameter to handle 1.7782 + hint flags (unused). 1.7783 + * src/pshinter/pshalgo2.h: Updated. 1.7784 + * src/pshinter/pshalgo3.c (ps3_hints_apply): Add parameter to handle 1.7785 + hint flags. 1.7786 + * src/pshinter/pshalgo3.h: Updated. 1.7787 + 1.7788 +2002-07-04 David Turner <david@freetype.org> 1.7789 + 1.7790 + * src/pfr/pfrobjs.c (pfr_slot_load): Fixed a small bug that returned 1.7791 + incorrect advances when the outline resolution was different from 1.7792 + the metrics resolution. 1.7793 + 1.7794 + * src/autohint/ahhint.c: Removing compiler warnings. 1.7795 + 1.7796 + * src/autohint/ahglyph.c: s/FT_MEM_SET/FT_ZERO/ where appropriate. 1.7797 + (ah_outline_link_segments): Slight improvements to the serif 1.7798 + detection code. More work is needed though. 1.7799 + 1.7800 +2002-07-03 David Turner <david@freetype.org> 1.7801 + 1.7802 + Small improvements to the automatic hinter. Uneven stem-widths have 1.7803 + now disappeared and everything looks much better, even if there are 1.7804 + still issues with serifed fonts. 1.7805 + 1.7806 + * src/autohint/ahtypes.h (AH_Globals): Added `stds' array. 1.7807 + * src/autohint/ahhint.c (OPTIM_STEM_SNAP): New #define. 1.7808 + (ah_snap_width): Commented out. 1.7809 + (ah_align_linked_edge): Renamed to... 1.7810 + (ah_compute_stem_width): This. 1.7811 + Don't allow uneven stem-widths. 1.7812 + (ah_align_linked_edge): New function. 1.7813 + (ah_align_serifed_edge): Don't strengthen serifs. 1.7814 + (ah_hint_edges_3, ah_hinter_scale_globals): Updated. 1.7815 + 1.7816 +2002-07-03 Owen Taylor <owen@redhat.com> 1.7817 + 1.7818 + Adding new algorithm based on Owen Taylor's recent work. 1.7819 + 1.7820 + * src/pshinter/pshalgo3.c, src/pshinter/pshalgo3.h: New files. 1.7821 + * src/pshinter/pshalgo.h: Updated. 1.7822 + Use pshalgo3 by default. 1.7823 + * src/pshinter/pshinter.c: Include pshalgo3.c. 1.7824 + 1.7825 + * src/pshinter/Jamfile, src/pshinter/rules.mk: Updated. 1.7826 + 1.7827 +2002-07-01 Owen Taylor <owen@redhat.com> 1.7828 + 1.7829 + * src/pshinter/pshalgo2.c (psh2_glyph_find_strong_points): Fix a bug 1.7830 + where, if a glyph has more than hint mask, the second mask gets 1.7831 + applied to points that should have been covered by the first mask. 1.7832 + 1.7833 +2002-07-01 Keith Packard <keithp@keithp.com> 1.7834 + 1.7835 + * src/sfnt/ttcmap0.c (tt_cmap8_char_next, tt_cmap12_char_next): 1.7836 + Fixing the cmap 8 and 12 parsing routines. 1.7837 + 1.7838 +2002-07-01 David Turner <david@freetype.org> 1.7839 + 1.7840 + * src/base/ftsynth.c: Include FT_TRIGONOMETRY_H. 1.7841 + (FT_Outline_Embolden): Renamed to... 1.7842 + (FT_GlyphSlot_Embolden): This. 1.7843 + Updated to new trigonometric functions. 1.7844 + (FT_Outline_Oblique): Renamed to... 1.7845 + (FT_GlyphSlot_Oblique): This. 1.7846 + (ft_norm): Removed. 1.7847 + * include/freetype/ftsynth.h: Updated. 1.7848 + 1.7849 +2002-06-26 David Turner <david@freetype.org> 1.7850 + 1.7851 + * include/freetype/internal/ftobject.h: Updating the object 1.7852 + sub-system definitions (still experimental). 1.7853 + 1.7854 + * src/base/fthash.c (ft_hash_remove): Fixing a small reallocation 1.7855 + bug. 1.7856 + 1.7857 + * src/base/fttrigon.c (FT_Vector_From_Polar, FT_Angle_Diff): New 1.7858 + functions. 1.7859 + * include/freetype/fttrigon.h: Updated. 1.7860 + 1.7861 + 1.7862 + Adding path stroker component (work in progress). 1.7863 + 1.7864 + * include/freetype/ftstroker.h, src/base/ftstroker.c: New files. 1.7865 + * src/base/Jamfile: Updated. 1.7866 + 1.7867 + * include/freetype/config/ftheader.h (FT_STROKER_H): New macro. 1.7868 + 1.7869 + 1.7870 + * src/truetype/ttgload.c (TT_Load_Composite_Glyph), 1.7871 + src/base/ftoutln.c (FT_Vector_Transform): Fixed Werner's latest fix. 1.7872 + FT_Vector_Transform wasn't buggy, the TrueType composite loader was. 1.7873 + 1.7874 +2002-06-24 Werner Lemberg <wl@gnu.org> 1.7875 + 1.7876 + * include/freetype/freetype.h (FREETYPE_PATCH): Set to 3. 1.7877 + 1.7878 +2002-06-21 David Turner <david@freetype.org> 1.7879 + 1.7880 + 1.7881 + * Version 2.1.2 released. 1.7882 + ========================= 1.7883 + 1.7884 + 1.7885 +2002-06-21 Roberto Alameda <ojancano@geekmail.de>. 1.7886 + 1.7887 + * include/freetype/internal/t42types.h (T42_Font): Removed since 1.7888 + it is already in t42objs.h. 1.7889 + (T42_Face): Use T1_FontRec. 1.7890 + 1.7891 + * src/base/fttype1.c (FT_Get_PS_Font_Info): Updated. 1.7892 + (FT_Has_PS_Glyph_Names): Check for type42 driver name also. 1.7893 + * src/type42/t42objs.h: Include FT_INTERNAL_TYPE42_TYPES_H. 1.7894 + (T42_Face): Removed since it is already in t42types.h. 1.7895 + 1.7896 +2002-06-21 Detlef Würkner <TetiSoft@apg.lahn.de> 1.7897 + 1.7898 + * src/pfrgload.c (pfr_glyph_load_compound): Fix loading of composite 1.7899 + glyphs. 1.7900 + 1.7901 +2002-06-21 Sven Neumann <sven@convergence.de> 1.7902 + 1.7903 + * src/prf/pfrtypes.h (PFR_KernPair): New structure. 1.7904 + (PFR_PhyFont): Use it. 1.7905 + (PFR_KernFlags): New enumeration. 1.7906 + * src/pfr/pfrload.c (pfr_extra_item_load_kerning_pairs): New 1.7907 + function. 1.7908 + (pfr_phy_font_extra_items): Use it. 1.7909 + (pfr_phy_font_done): Updated. 1.7910 + * src/pfr/pfrobjs.c (pfr_face_init): Set kerning flag conditionally. 1.7911 + (pfr_face_get_kerning): New function. 1.7912 + * src/pfr/pfrobjs.h: Updated. 1.7913 + * src/pfr/pfrdrivr.c (pfr_driver_class): Updated. 1.7914 + 1.7915 +2002-06-21 David Turner <david@freetype.org> 1.7916 + 1.7917 + * README, docs/CHANGES: Preparing the 2.1.2 release. 1.7918 + 1.7919 +2002-06-19 Detlef Würkner <TetiSoft@apg.lahn.de> 1.7920 + 1.7921 + * src/base/fttype1.c: Include FT_INTERNAL_TYPE42_TYPES_H. 1.7922 + (t1_face_check_cast): Removed. 1.7923 + (FT_Get_PS_Font_Info): Make it work with CID and Type 42 drivers 1.7924 + also. 1.7925 + 1.7926 +2002-06-19 Sebastien BARRE <http://barre.nom.fr/contact.html#email> 1.7927 + 1.7928 + * src/type42/t42parse.c (t42_parse_sfnts): Fix compiler warning. 1.7929 + 1.7930 +2002-06-19 Werner Lemberg <wl@gnu.org> 1.7931 + 1.7932 + * src/base/ftoutln.c (FT_Vector_Transform): Fix serious typo 1.7933 + (xy <-> yx). 1.7934 + * src/truetype/ttgload.c (load_truetype_glyph): Replace `|' with 1.7935 + `||' to make code easier to read. 1.7936 + 1.7937 +2002-06-18 Roberto Alameda <ojancano@geekmail.de>. 1.7938 + 1.7939 + * src/type42/t42objs.c (t42_check_size_change): Removed. 1.7940 + (T42_Size_SetChars, T42_Size_SetPixels): Use FT_Activate_Size 1.7941 + instead. 1.7942 + (T42_GlyphSlot_Load): Remove call to t42_check_size_change. 1.7943 + 1.7944 +2002-06-18 Detlef Würkner <TetiSoft@apg.lahn.de> 1.7945 + 1.7946 + * src/psaux/t1cmap.c (t1_cmap_custom_char_index, 1.7947 + t1_cmap_custom_char_next): Fix index computation -- indices start 1.7948 + with 0 and not with cmap->first. 1.7949 + 1.7950 + Provide default charmaps. 1.7951 + 1.7952 + * src/bdf/bdfdrivr.c (BDF_Face_Init), src/pcf/pcfdriver.c 1.7953 + (PCF_Face_Init), src/pfr/pfrobjs.c (pfr_face_init), 1.7954 + src/type1/t1objs (T1_Face_Init), src/winfonts/winfnt.c 1.7955 + (FNT_Face_Init): Implement it. 1.7956 + 1.7957 +2002-06-17 Sven Neumann <sven@gimp.org> 1.7958 + 1.7959 + * src/pfr/pfrobjs.c (pfr_face_init): Fix typo. 1.7960 + 1.7961 +2002-06-16 Leonard Rosenthol <leonardr@lazerware.com> 1.7962 + 1.7963 + Updated Win32/VC++ projects to include the new PFR driver. 1.7964 + 1.7965 + * builds/win32/visualc/freetype.dsp: Updated. 1.7966 + 1.7967 +2002-06-16 Anthony Fok <fok@debian.org> 1.7968 + 1.7969 + Install freetype2.m4. 1.7970 + 1.7971 + * builds/unix/install.mk (install, uninstall): Handle it. 1.7972 + 1.7973 +2002-06-16 Detlef Würkner <TetiSoft@apg.lahn.de> 1.7974 + 1.7975 + Same fix for PFR driver. 1.7976 + 1.7977 + * src/pfr/pfrcmap.c (pfr_cmap_char_index, pfr_cmap_char_next): 1.7978 + Increase return value by 1. 1.7979 + * src/pfr/pfrobjs.c (pfr_slot_load): Decrease index by 1. 1.7980 + 1.7981 +2002-06-15 Detlef Würkner <TetiSoft@apg.lahn.de> 1.7982 + 1.7983 + Fix glyph indices to make index zero always the undefined glyph. 1.7984 + 1.7985 + * src/bdf/bdfdrivr.c (bdf_cmap_init): Don't decrease 1.7986 + cmap->num_encodings. 1.7987 + (bdf_cmap_char_index, bdf_cmap_char_next, BDF_Get_Char_Index): 1.7988 + Increase result by 1 for normal cases. 1.7989 + (BDF_Glyph_Load): Decrease index by 1. 1.7990 + 1.7991 + * src/pcf/pcfdriver.c (pcf_cmap_char_index, pcf_cmap_char_next, 1.7992 + PCF_Char_Get_Index): Increase result by 1 for normal cases. 1.7993 + (PCF_Glyph_Load): Decrease index by 1. 1.7994 + * src/pcf/pcfread.c (pcf_get_encodings): Don't decrease j for 1.7995 + allocating `encoding'. 1.7996 + 1.7997 + * src/base/ftobjs.c (FT_Load_Glyph, FT_Get_Glyph_Name): Fix 1.7998 + bounding tests. 1.7999 + 1.8000 +2002-06-14 Detlef Würkner <TetiSoft@apg.lahn.de> 1.8001 + 1.8002 + Add new cmap support to BDF driver. 1.8003 + 1.8004 + * src/bdf/bdfdrivr.c (BDF_CMapRec) [FT_CONFIG_OPTION_USE_CMAPS]: 1.8005 + New structure. 1.8006 + (bdf_cmap_init, bdf_cmap_done, bdf_cmap_char_index, 1.8007 + bdf_cmap_char_next) [FT_CONFIG_OPTION_USE_CMAPS]: New functions. 1.8008 + (BDF_Get_Char_Index) [!FT_CONFIG_OPTION_USE_CMAPS]: Use only 1.8009 + conditionally. 1.8010 + (BDF_Face_Init): Handle `AVERAGE_WIDTH' and `POINT_SIZE' keywords. 1.8011 + Implement new cmap handling. 1.8012 + (bdf_driver_class): Updated. 1.8013 + 1.8014 +2002-06-14 Werner Lemberg <wl@gnu.org> 1.8015 + 1.8016 + * Makefile, configure, */*.mk, builds/unix/unix-def.in, 1.8017 + docs/CHANGES, docs/INSTALL: s/TOP/TOP_DIR/. 1.8018 + 1.8019 +2002-06-12 Werner Lemberg <wl@gnu.org> 1.8020 + 1.8021 + * src/bdf/bdflib.c: s/FT_Short/short/ for consistency. 1.8022 + 1.8023 +2002-06-11 David Turner <david@freetype.org> 1.8024 + 1.8025 + * builds/win32/ftdebug.c: Added a missing #endif. 1.8026 + 1.8027 + * src/sfnt/ttload.c, src/bdf/bdflib.c: Removing compiler warnings. 1.8028 + 1.8029 + Removed the bug in Type 42 driver that prevented un-hinted outlines 1.8030 + to be loaded. 1.8031 + 1.8032 + * src/type42/t42objs.c (T42_Face_Init): Call FT_Done_Size. 1.8033 + (T42_Size_Init): Call FT_Activate_Size. 1.8034 + (t42_check_size_change): New function. 1.8035 + (T42_Size_SetChars, T42_Size_SetPixels): Use it. 1.8036 + (ft_glyphslot_clear): Replace FT_MEM_SET with FT_ZERO. 1.8037 + (T42_GlyphSlot_Load): Use t42_check_size_change. 1.8038 + Initialize more fields of `glyph'. 1.8039 + 1.8040 + * builds/win32/visualc/freetype.dsp: Updated. 1.8041 + 1.8042 +2002-06-09 David Turner <david@freetype.org> 1.8043 + 1.8044 + 1.8045 + * Version 2.1.1 released. 1.8046 + ========================= 1.8047 + 1.8048 + 1.8049 +2002-06-08 Juliusz Chroboczek <jch@pps.jussieu.fr> 1.8050 + 1.8051 + * include/freetype/internal/ftobjs.h, src/autohint/ahglyph.c, 1.8052 + src/base/ftobjs.c, src/sfnt/ttcmap0.c, src/smooth/ftgrays.c: Don't 1.8053 + use `setjmp', `longjmp', and `jmp_buf' but `ft_setjmp', `ft_longjmp', 1.8054 + and `ft_jmp_buf'. 1.8055 + Removed direct references to <stdio.h> and <setjmp.h> when 1.8056 + appropriate, to eventually replace them with a 1.8057 + FT_CONFIG_STANDARD_LIBRARY_H. Useful for the XFree86 Font Server 1.8058 + backend based on FT2. 1.8059 + 1.8060 + * src/base/fttype1.c (FT_Has_PS_Glyph_Names): Fix return value. 1.8061 + 1.8062 +2002-06-08 David Turner <david@freetype.org> 1.8063 + 1.8064 + * src/pcf/pcfdriver.c (pcf_cmap_char_next): Fixed a bug that caused 1.8065 + the function to return invalid values. 1.8066 + 1.8067 + * src/cache/ftccache.i: Removing a typo that prevented 1.8068 + the source's compilation. 1.8069 + 1.8070 + * src/cache/ftccache.c (ftc_node_hash_unlink): Fixed a 1.8071 + bug that caused nasty memory overwrites. The hash table's 1.8072 + buckets array wasn't correctly resized when shrunk. 1.8073 + 1.8074 +2002-06-08 Detlef Würkner <TetiSoft@apg.lahn.de> 1.8075 + 1.8076 + * builds/amiga/smakefile, builds/amiga/makefile: Updated. 1.8077 + 1.8078 +2002-06-08 Werner Lemberg <wl@gnu.org> 1.8079 + 1.8080 + * src/cache/ftccache.c (ftc_node_hash_unlink, ftc_node_hash_link) 1.8081 + [FTC_CACHE_USE_LINEAR_HASHING]: Fix returned error code. 1.8082 + Fix debugging messages. 1.8083 + * src/cache/ftccache.i (GEN_CACHE_LOOKUP): Move declaration of 1.8084 + `family' and `hash' up to make it compilable with g++. 1.8085 + 1.8086 + * src/type42/t42error.h: New file. 1.8087 + * src/type42/t42drivr.c, src/type42/t42objs.c, 1.8088 + src/type42/t42parse.c: Use t42 error codes. 1.8089 + * src/type42/rules.mk: Updated. 1.8090 + 1.8091 + * src/base/ftnames.c: Include FT_INTERNAL_STREAM_H. 1.8092 + 1.8093 +2002-06-08 David Turner <david@freetype.org> 1.8094 + 1.8095 + * src/cache/ftccmap.c: GEN_CACHE_FAMILY_COMPARE, 1.8096 + GEN_CACHE_NODE_COMPARE, GEN_CACHE_LOOKUP) [FTC_CACHE_USE_INLINE]: 1.8097 + New macros. 1.8098 + (ftc_cmap_cache_lookup) [!FTC_CACHE_USE_INLINE]: Typedef to 1.8099 + ftc_cache_lookup. 1.8100 + (FTC_CMapCache_Lookup): Updated. 1.8101 + 1.8102 + Adding various experimental optimizations to the cache manager. 1.8103 + 1.8104 + * include/freetype/cache/ftccache.h (FTC_CACHE_USE_INLINE, 1.8105 + FTC_CACHE_USE_LINEAR_HASHING): New options. 1.8106 + (FTC_CacheRec) [FTC_CACHE_USE_LINEAR_HASHING]: New elements `p', 1.8107 + `mask', and `slack'. 1.8108 + 1.8109 + * src/cache/ftccache.c (FTC_HASH_MAX_LOAD, FTC_HASH_MIN_LOAD, 1.8110 + FTC_HASH_SUB_LOAD) [FTC_CACHE_USE_LINEAR_HASHING, 1.8111 + FTC_HASH_INITIAL_SIZE]: New macros. 1.8112 + (ftc_node_mru_link, ftc_node_mru_up): Optimized. 1.8113 + (ftc_node_hash_unlink, ftc_node_hash_link) 1.8114 + [FTC_CACHE_USE_LINEAR_HASHING]: New variants. 1.8115 + (FTC_PRIMES_MIN, FTC_PRIMES_MAX, ftc_primes, ftc_prime_closest, 1.8116 + FTC_CACHE_RESIZE_TEST, ftc_cache_resize) 1.8117 + [!FTC_CACHE_USE_LINEAR_HASHING]: Define it conditionally. 1.8118 + (ftc_cache_init, ftc_cache_clear) [FTC_CACHE_USE_LINEAR_HASHING]: 1.8119 + Updated. 1.8120 + (ftc_cache_lookup) [FTC_CACHE_USE_LINEAR_HASHING]: Implement it. 1.8121 + 1.8122 + * src/cache/ftccache.i: New file. 1.8123 + 1.8124 + * src/cache/ftcsbits.c (GEN_CACHE_FAMILY_COMPARE, 1.8125 + GEN_CACHE_NODE_COMPARE, GEN_CACHE_LOOKUP) [FTC_CACHE_USE_INLINE]: 1.8126 + New macros. 1.8127 + (ftc_sbit_cache_lookup) [!FTC_CACHE_USE_INLINE]: Typedef to 1.8128 + ftc_cache_lookup. 1.8129 + (FTC_SBitCache_Lookup): Updated. 1.8130 + 1.8131 + * src/type42/t42parse.c: Removing duplicate function. 1.8132 + 1.8133 +2002-06-07 Graham Asher <graham.asher@btinternet.com> 1.8134 + 1.8135 + * src/base/ftobjs.c (FT_Render_Glyph_Internal): Changed definition 1.8136 + from FT_EXPORT_DEF to FT_BASE_DEF. 1.8137 + 1.8138 +2002-06-07 David Turner <david@freetype.org> 1.8139 + 1.8140 + Fixed the bug that prevented the correct display of fonts with 1.8141 + `ftview'. 1.8142 + 1.8143 + * src/type42/t42drivr.c: Split into... 1.8144 + * src/type42/t42drivr.h, src/type42/t42parse.c, 1.8145 + src/type42/t42parse.h, src/type42/t42objs.h, src/type42/t42objs.c, 1.8146 + src/type42/type42.c: New files. 1.8147 + 1.8148 + (t42_get_glyph_name, t42_get_ps_name, t42_get_name_index): Use 1.8149 + `face->type1'. 1.8150 + 1.8151 + (Get_Interface): Renamed to... 1.8152 + (T42_Get_Interface): This. 1.8153 + Updated. 1.8154 + (T42_Open_Face, T42_Face_Done): Updated. 1.8155 + (T42_Face_Init): Add new cmap support. 1.8156 + Updated. 1.8157 + (T42_Driver_Init, T42_Driver_Done, T42_Size_Init, T42_Size_Done, 1.8158 + T42_GlyphSlot_Init, T42_GlyphSlot_Done): Updated. 1.8159 + (Get_Char_Index, Get_Next_Char): Renamed to... 1.8160 + (T42_CMap_CharIndex, T42_CMap_CharNext): This. 1.8161 + Updated. 1.8162 + (T42_Char_Size, T42_Pixel_Size): Renamed to... 1.8163 + (T42_Size_SetChars, T42_Size_SetPixels): This. 1.8164 + (T42_Load_Glyph): Renamed to... 1.8165 + (T42_GlyphSlot_Load): This. 1.8166 + 1.8167 + (t42_init_loader, t42_done_loader): Renamed to... 1.8168 + (t42_loader_init, t42_loader_done): This. 1.8169 + (T42_New_Parser, T42_Finalize_Parser): Renamed to... 1.8170 + (t42_parser_init, t42_parser_done): This. 1.8171 + (parse_dict): Renamed to... 1.8172 + (t42_parse_dict): This. 1.8173 + (is_alpha, is_space, hexval): Renamed to... 1.8174 + (t42_is_alpha, t42_is_space, t42_hexval): This. 1.8175 + (parse_font_name, parse_font_bbox, parse_font_matrix, 1.8176 + parse_encoding, parse_sfnts, parse_charstrings, parse_dict): 1.8177 + Renamed to... 1.8178 + (t42_parse_font_name, t42_parse_font_bbox, t42_parse_font_matrix, 1.8179 + t42_parse_encoding, t42_parse_sfnts, t42_parse_charstrings, 1.8180 + t42_parse_dict): This. 1.8181 + Updated. 1.8182 + 1.8183 + (t42_keywords): Updated. 1.8184 + 1.8185 + * src/type42/Jamfile, src/type42/descrip.mms: Updated. 1.8186 + 1.8187 +2002-06-03 Werner Lemberg <wl@gnu.org> 1.8188 + 1.8189 + Add 8bpp support to BDF driver. 1.8190 + 1.8191 + * src/bdf/bdflib.c (_bdf_parse_start): Handle 8bpp. 1.8192 + * src/bdf/bdfdrivr.c (BDF_Glyph_Load): Ditto. 1.8193 + * src/bdf/README: Updated. 1.8194 + 1.8195 +2002-06-02 Detlef Würkner <TetiSoft@apg.lahn.de> 1.8196 + 1.8197 + * src/pfr/pfrload.c (pfr_phy_font_done): Free `blue_values' array. 1.8198 + 1.8199 +2002-05-29 Detlef Würkner <TetiSoft@apg.lahn.de> 1.8200 + 1.8201 + * src/bdf/bdflib.c (_bdf_readstream): Allocate `buf' dynamically. 1.8202 + (_bdf_parse_glyphs): Use correct size for allocating 1.8203 + `font->unencoded'. 1.8204 + (bdf_load_font): Free array conditionally. 1.8205 + Return proper error code in case of failure. 1.8206 + * src/bdf/bdfdrivr.c (BDF_Face_Init): Make it more robust against 1.8207 + unusual fonts. 1.8208 + 1.8209 +2002-05-29 Werner Lemberg <wl@gnu.org> 1.8210 + 1.8211 + * src/bdf/descrip.mms, src/type42/descrip.mms: New files. 1.8212 + * descrip.mms (all): Updated. 1.8213 + 1.8214 + * src/bdf/bdflib.c (_bdf_parse_glyphs): Fix typo which prevented 1.8215 + compilation. 1.8216 + * src/pshglob.c (psh_blues_scale_zones): Fix compiler warning. 1.8217 + 1.8218 +2002-05-28 Detlef Würkner <TetiSoft@apg.lahn.de> 1.8219 + 1.8220 + * builds/amiga/makefile, builds/amiga/smakefile, 1.8221 + amiga/include/freetype/config/ftmodule.h: Updated to include 1.8222 + support for BDF and Type42 drivers. 1.8223 + 1.8224 + * docs/modules.txt: Updated. 1.8225 + 1.8226 +2005-05-28 David Turner <david@freetype.org> 1.8227 + 1.8228 + * docs/CHANGES: Updating file for next release (2.1.1). 1.8229 + 1.8230 + * src/bdf/bdflib.c: Removing compiler warnings. 1.8231 + 1.8232 + * include/freetype/ftxf86.h, src/base/ftxf86.c: New files. 1.8233 + They provide a new API (FT_Get_X11_Font_Format) to retrieve an 1.8234 + X11-compatible string describing the font format of a given face. 1.8235 + This was put in a new optional base source file, corresponding to a 1.8236 + new public header (named FT_XFREE86_H since this function should 1.8237 + only be used within the XFree86 font server IMO). 1.8238 + 1.8239 + * include/freetype/config/ftheader.h (FT_XFREE86_H): New macro (not 1.8240 + documented yet). 1.8241 + 1.8242 + * src/base/fttype1.c: New file, providing two new API functions 1.8243 + (FT_Get_PS_Font_Info and FT_Has_PS_Glyph_Names). 1.8244 + * include/freetype/t1tables.h: Updated. 1.8245 + 1.8246 + * src/base/Jamfile, src/base/rules.mk, src/base/descrip.mms: 1.8247 + Updating build control files for the new files `ftxf86.c' and 1.8248 + `fttype1.c' in src/base. 1.8249 + 1.8250 + * src/pshinter/pshglob.c (psh_blues_scale_zones): Fixed a bug that 1.8251 + prevented family blue zones substitution from hapenning correctly. 1.8252 + 1.8253 + * include/freetype/ftbdf.h FT_Get_BDF_Charset_ID): Adding 1.8254 + documentation comment. 1.8255 + 1.8256 +2002-05-28 Werner Lemberg <wl@gnu.org> 1.8257 + 1.8258 + * src/base/ftnames.c (FT_Get_Sfnt_Name): Don't use FT_STREAM_READ_AT 1.8259 + but FT_STREAM_READ. 1.8260 + Declare `stream' variable. 1.8261 + 1.8262 + * src/bdf/bdflib.c (_bdf_parse_glyphs): Replace floating point math 1.8263 + with calls to `FT_MulDiv'. 1.8264 + 1.8265 +2002-05-28 David Turner <david@freetype.org> 1.8266 + 1.8267 + Fixing the SFNT name table loader to support various buggy fonts. 1.8268 + It now ignores empty name entries, entries with invalid pointer 1.8269 + Offsets and certain fonts containing tables with broken 1.8270 + `storageOffset' fields. 1.8271 + 1.8272 + Name strings are now loaded on demand, which reduces the memory 1.8273 + requirements for a given FT_Face tremendously (for example, the name 1.8274 + table of Arial.ttf is about 10Kb and contains 70 names). 1.8275 + 1.8276 + This is a temporary fix. The whole name table loader and interface 1.8277 + will be rewritten in a much more cleanly way shortly, once CSEH have 1.8278 + been introduced in the sources. 1.8279 + 1.8280 + * include/freetype/internal/tttypes.h (TT_NameEntryRec): Change 1.8281 + type of `stringOffset' to FT_ULong. 1.8282 + (TT_NameTableRec): Change type of `numNameRecords' and 1.8283 + `storageOffset' to FT_UInt. 1.8284 + Replace `storage' with `stream'. 1.8285 + * src/base/ftnames.c (FT_Get_Sfnt_Name): Load name on demand. 1.8286 + * src/sfnt/sfdriver.c (get_sfnt_postscript_name): Ditto. 1.8287 + Make code more robust. 1.8288 + * src/sfnt/sfobjs.c (TT_NameEntry_ConvertFunc): New typedef. 1.8289 + (tt_face_get_name): Use it. 1.8290 + Make code more robust. 1.8291 + * src/sfnt/ttload.c (TT_Load_Names): Use `static' for arrays. 1.8292 + Handle invalid `storageOffset' data better. 1.8293 + Set length fields to zero for invalid or ignored data. 1.8294 + Remove code within FT_DEBUG_LEVEL_TRACE. 1.8295 + (TT_Free_Names): Updated. 1.8296 + 1.8297 +2002-05-24 Tim Mooney <enchanter@users.sourceforge.net> 1.8298 + 1.8299 + * builds/unix/ft-munmap.m4: New file, extracted FT_MUNMAP_DECL and 1.8300 + FT_MUNMAP_PARAM from aclocal.m4 into here, so aclocal.m4 can be 1.8301 + rebuilt from sources. Set macro serial to 1, and use third argument 1.8302 + to AC_DEFINE for our two custom symbols, so ftconfig.in could one day 1.8303 + be rebuilt with autoheader (not recommended now, ftconfig.in is a 1.8304 + custom source file) 1.8305 + 1.8306 +2002-05-22 Werner Lemberg <wl@gnu.org> 1.8307 + 1.8308 + * include/freetype/config/ftheader.h (FT_BEZIER_H): Removed. 1.8309 + (FT_BDF_H): New macro for accessing `ftbdf.h'. 1.8310 + 1.8311 + * src/type42/t42drivr.c (hexval): Fix typo. 1.8312 + 1.8313 +2002-05-21 Martin Muskens <mmuskens@aurelon.com> 1.8314 + 1.8315 + * src/psaux/psobjs.c (T1Radix): New function. 1.8316 + (t1_toint): Use it to handle numbers in radix format. 1.8317 + 1.8318 + * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Add dummy 1.8319 + for undocumented, obsolete opcode 15. 1.8320 + 1.8321 +2002-05-21 David Turner <david@freetype.org> 1.8322 + 1.8323 + * src/bdf/bdflib.c: Removed compiler warning, and changed all tables 1.8324 + to the `static const' storage specifier (instead of simply 1.8325 + `static'). 1.8326 + 1.8327 + * src/type42/t42drivr.c (hexval): Use more efficient code. 1.8328 + Removing compiler warnings. 1.8329 + * src/bdf/bdfdrivr.c: Removing compiler warnings. 1.8330 + 1.8331 + * include/freetype/internal/ftbdf.h, src/base/ftbdf.c, 1.8332 + src/base/descrip.mms, src/base/Jamfile, src/base/rules.mk 1.8333 + (FT_Get_BDF_Charset_ID): New API to retrieve BDF-specific strings 1.8334 + from a face. This is much cleaner than accessing the internal types 1.8335 + `BDF_Public_Face' defined in FT_INTERNAL_BDF_TYPES_H. 1.8336 + 1.8337 +2002-05-21 Werner Lemberg <wl@gnu.org> 1.8338 + 1.8339 + * src/bdf/README: Mention Microsoft's SBIT tool. 1.8340 + 1.8341 + * src/cff/cffdrivr.c, src/cid/cidriver.c, src/pcf/pcfdriver.c, 1.8342 + src/truetype/ttdriver.c, src/type1/t1driver.c, 1.8343 + src/winfonts/winfnt.c, src/type42/t42drivr.c, src/bdf/bdfdrivr.c 1.8344 + [FT_CONFIG_OPTION_DYNAMIC_DRIVERS]: Completely removed. It has 1.8345 + been never used. 1.8346 + 1.8347 +2002-05-21 Roberto Alameda <ojancano@geekmail.de>. 1.8348 + 1.8349 + * src/type42/t42drivr.c: s/T42_ENCODING_TYPE_/T1_ENCODING_TYPE_/. 1.8350 + (parse_font_matrix): Remove unnecessary code. 1.8351 + (parse_sfnts): Initialize some variables. 1.8352 + (t42_driver_class) [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Use 1.8353 + ft_module_driver_has_hinter conditionally. 1.8354 + Moved some type 42 specific structure definitions to... 1.8355 + * include/freetype/internal/t42types.h: New file. 1.8356 + * include/freetype/internal/internal.h (FT_INTERNAL_T42_TYPES_H): 1.8357 + New macro. 1.8358 + 1.8359 +2002-05-20 Werner Lemberg <wl@gnu.org> 1.8360 + 1.8361 + * include/freetype/cache/ftcsbits.h (FTC_SBit): Added a new field 1.8362 + `num_grays' for specifying the number of used gray levels. 1.8363 + * src/cache/ftcsbits.c (ftc_sbit_node_load): Initialize it. 1.8364 + 1.8365 +2002-05-19 Werner Lemberg <wl@gnu.org> 1.8366 + 1.8367 + Adding a driver for BDF fonts written by Francesco Zappa Nardelli 1.8368 + <Francesco.Zappa.Nardelli@ens.fr>. Heavily modified by me to 1.8369 + better adapt it to FreeType, removing unneeded stuff. Additionally, 1.8370 + it now supports Mark Leisher's BDF extension for anti-aliased 1.8371 + bitmap glyphs with 2 and 4 bpp. 1.8372 + 1.8373 + * src/bdf/*: New driver. 1.8374 + * include/freetype/internal/bdftypes.h: New file. 1.8375 + * include/freetype/internal/fttrace.h: Added BDF driver components. 1.8376 + * include/freetype/fterrdef.h: Added error codes for BDF driver. 1.8377 + * include/freetype/config/ftmodule.h, src/Jamfile: Updated. 1.8378 + * include/freetype/internal/internal.h (FT_INTERNAL_BDF_TYPES_H): 1.8379 + New macro. 1.8380 + 1.8381 + * include/freetype/config/ftstdlib.h (ft_sprintf): New alias for 1.8382 + sprintf. 1.8383 + 1.8384 +2002-05-18 Werner Lemberg <wl@gnu.org> 1.8385 + 1.8386 + * include/freetype/internal/fttrace.h: Added Type 42 driver 1.8387 + component. 1.8388 + * src/type42/t42drivr.c: Use it. 1.8389 + 1.8390 + * include/freetype/internal/internal.h (FT_INTERNAL_PCF_TYPES_H): 1.8391 + New macro. 1.8392 + 1.8393 +2002-05-17 Werner Lemberg <wl@gnu.org> 1.8394 + 1.8395 + * src/type42/Jamfile: New file. 1.8396 + 1.8397 +2002-05-14 Werner Lemberg <wl@gnu.org> 1.8398 + 1.8399 + Adding a driver for Type42 fonts written by Roberto Alameda 1.8400 + <ojancano@geekmail.de>. 1.8401 + 1.8402 + * src/type42/*: New driver. 1.8403 + * include/freetype/config/ftmodule.h, src/Jamfile: Updated. 1.8404 + * include/freetype/config/ftstdlib.h (ft_xdigit, ft_memcmp, 1.8405 + ft_atoi): New aliases for xdigit, memcmp, and atoi, respectively. 1.8406 + 1.8407 +2002-05-12 Owen Taylor <otaylor@redhat.com> 1.8408 + 1.8409 + * src/sfnt/ttload.c (TT_LookUp_Table): Protect against tables 1.8410 + with a zero length value. 1.8411 + 1.8412 +2002-05-12 Michael Pfeiffer <michael.pfeiffer@utanet.at> 1.8413 + 1.8414 + * builds/beos/beos.mk: Include `link-std.mk'. 1.8415 + 1.8416 +2002-05-12 Werner Lemberg <wl@gnu.org> 1.8417 + 1.8418 + * src/type1/t1load.h (T1_Loader): Renamed to... 1.8419 + (T1_LoaderRec): This. 1.8420 + (T1_Loader): Now pointer to T1_LoaderRec. 1.8421 + * src/type1/t1load.c: Updated. 1.8422 + 1.8423 + * include/freetype/internal/t1types.h, src/type1/t1load.c, 1.8424 + src/type1/t1objs.c: 1.8425 + s/T1_ENCODING_TYPE_EXPORT/T1_ENCODING_TYPE_EXPERT/. 1.8426 + 1.8427 +2002-05-06 Werner Lemberg <wl@gnu.org> 1.8428 + 1.8429 + * README: Add a note regarding libttf vs. libfreetype. 1.8430 + 1.8431 +2002-05-05 Werner Lemberg <wl@gnu.org> 1.8432 + 1.8433 + FreeType 2 can now be built in an external directory with the 1.8434 + configure script also. 1.8435 + 1.8436 + * builds/freetype.mk (INCLUDES): Add `OBJ_DIR'. 1.8437 + 1.8438 + * builds/unix/detect.mk (have_mk): New variable to test for 1.8439 + external build. 1.8440 + (unix-def.mk): Defined according to value of `have_mk'. 1.8441 + * builds/unix/unix.mk (have_mk): New variable to test for 1.8442 + external build. 1.8443 + Select include paths for unix-def.mk and unix-cc.mk according 1.8444 + to value of `have_mk'. 1.8445 + * builds/unix/unix-def.in (OBJ_BUILD): New variable. 1.8446 + (DISTCLEAN): Use it. 1.8447 + * builds/unix/unix-cc.in (LIBTOOL): Define default value only 1.8448 + if not yet defined. 1.8449 + * builds/unix/install.mk (install): Use `OBJ_BUILD' for installing 1.8450 + freetype-config. 1.8451 + 1.8452 + * configure: Don't depend on bash features. 1.8453 + (ft2_dir, abs_curr_dir, abs_ft2_dir): New variables (code 1.8454 + partially taken from Autoconf). 1.8455 + Build a dummy Makefile if not building in source tree. 1.8456 + 1.8457 + * docs/INSTALL: Document it. 1.8458 + 1.8459 +2002-05-04 David Turner <david@freetype.org> 1.8460 + 1.8461 + * src/truetype/ttgload.c (TT_Load_Glyph): Finally fixing the last 1.8462 + bug that prevented FreeType 2.x and FreeType 1.x to produce 1.8463 + bit-by-bit identical monochrome glyph bitmaps with native TrueType 1.8464 + hinting. The culprit was a single-bit flag that wasn't set 1.8465 + correctly by the TrueType glyph loader. 1.8466 + 1.8467 + * src/otlayout/otlayout.h, src/otlayout/otlbase.c, 1.8468 + src/otlayout/otlbase.h, src/otlayout/otlconf.h, 1.8469 + src/otlayout/otlgdef.c, src/otlayout/otlgdef.h, 1.8470 + src/otlayout/otlgpos.c, src/otlayout/otlgpos.h, 1.8471 + src/otlayout/otlgsub.c, src/otlayout/otlgsub.h, 1.8472 + src/otlayout/otljstf.c, src/otlayout/otljstf.h, 1.8473 + src/otlayout/otltable.c, src/otlayout/otltable.h, 1.8474 + src/otlayout/otltags.h: New OpenType Layout source files. The 1.8475 + module is still incomplete. 1.8476 + 1.8477 +2002-05-02 Werner Lemberg <wl@gnu.org> 1.8478 + 1.8479 + * src/sfnt/ttcmap0.c (tt_cmap4_char_index): Fix serious typo 1.8480 + (0xFFFU -> 0xFFFFU). 1.8481 + 1.8482 +2002-05-01 Werner Lemberg <wl@gnu.org> 1.8483 + 1.8484 + * docs/INSTALL: Fix URL of makepp. 1.8485 + 1.8486 +2002-05-01 David Turner <david@freetype.org> 1.8487 + 1.8488 + * src/sfnt/sfobjs.c (tt_face_get_name): Fixing a bug that caused 1.8489 + FreeType to crash when certain broken fonts (e.g. `hya6gb.ttf') 1.8490 + were opened. 1.8491 + 1.8492 + * src/sfnt/ttload.c (TT_Load_Names): Applied a small work-around to 1.8493 + manage fonts containing a broken name table (e.g. `hya6gb.ttf'). 1.8494 + 1.8495 + * src/sfnt/ttcmap0.c (tt_cmap4_validate): Fixed over-restrictive 1.8496 + validation test. The charmap validator now accepts overlapping 1.8497 + ranges in format 4 charmaps. 1.8498 + 1.8499 + * src/sfnt/ttcmap0.c (tt_cmap4_char_index): Switched to a binary 1.8500 + search algorithm. Certain fonts contain more than 170 distinct 1.8501 + segments! 1.8502 + 1.8503 + * include/freetype/config/ftstdlib.h: Adding an alias for the `exit' 1.8504 + function. This will be used in the near future to panic in case of 1.8505 + unexpected exception (which shouldn't happen in theory). 1.8506 + 1.8507 + * include/freetype/internal/fthash.h, src/base/fthash.c: New files. 1.8508 + This is generic implementation of dynamic hash tables using a linear 1.8509 + algorithm (to get rid of `stalls' during resizes). In the future 1.8510 + this will be used in at least three parts of the library: the cache 1.8511 + sub-system, the object sub-system, and the memory debugger. 1.8512 + 1.8513 + * src/base/Jamfile: Updated. 1.8514 + 1.8515 + * include/freetype/internal/internal.h (FT_INTERNAL_HASH_H, 1.8516 + FT_INTERNAL_OBJECT_H): New macros. 1.8517 + 1.8518 + * include/freetype/internal/ftcore.h: New file to group all new 1.8519 + definitions related to exception handling and memory management. It 1.8520 + is very likely that this file will disappear or be renamed in the 1.8521 + future. 1.8522 + 1.8523 + * include/freetype/internal/ftobject.h, include/freetype/ftsysmem.h: 1.8524 + Adding comments to better explain the object sub-system as well as 1.8525 + the new memory manager interface. 1.8526 + 1.8527 +2002-04-30 Wenlin Institute (Tom Bishop) <wenlin@wenlin.com> 1.8528 + 1.8529 + * src/base/ftmac.c (p2c_str): Removed. 1.8530 + (file_spec_from_path) [TARGET_API_MAC_CARBON]: Added support for 1.8531 + OS X. 1.8532 + (is_dfont) [TARGET_API_MAC_CARBON]: Define only for OS X. 1.8533 + Handle `nameLen' <= 6 also. 1.8534 + (parse_fond): Remove unused variable `name_table'. 1.8535 + Use functionality of old p2c_str directly. 1.8536 + Add safety checks. 1.8537 + (read_lwfn): Initialize `size_p'. 1.8538 + Check for size_p == NULL. 1.8539 + (new_memory_stream, open_face_from_buffer): Updated to FreeType 2.1. 1.8540 + (FT_New_Face_From_LWFN): Remove unused variable `memory'. 1.8541 + Remove some dead code. 1.8542 + (FT_New_Face_From_SFNT): Remove unused variable `stream'. 1.8543 + (FT_New_Face_From_dfont) [TARGET_API_MAC_CARBON]: Define only for 1.8544 + OS X. 1.8545 + (FT_New_Face_From_FOND): Remove unused variable `error'. 1.8546 + (ResourceForkSize): New function. 1.8547 + (FT_New_Face): Use it. 1.8548 + Handle empty resource forks. 1.8549 + Conditionalize some code for OS X. 1.8550 + Add code to call normal loader as a fallback. 1.8551 + 1.8552 +2002-04-30 Werner Lemberg <wl@gnu.org> 1.8553 + 1.8554 + `interface' is reserved on the Mac. 1.8555 + 1.8556 + * include/freetype/ftoutln.h, include/freetype/internal/sfnt.h, 1.8557 + src/base/ftoutln.c: s/interface/func_interface/. 1.8558 + * src/base/ftbbox.c (FT_Outline_Get_BBox): 1.8559 + s/interface/bbox_interface/. 1.8560 + * src/cff/cffdrivr.c: s/interface/module_interface/. 1.8561 + * src/cff/cffload.c, src/cff/cffload.h: 1.8562 + s/interface/psnames_interface/. 1.8563 + * src/cid/cidriver.c: s/interface/cid_interface/. 1.8564 + * src/sfnt/sfdriver.c: s/interface/module_interface/. 1.8565 + * src/smooth/ftgrays.c: s/interface/func_interface/. 1.8566 + * src/truetype/ttdriver.c: s/interface/tt_interface/. 1.8567 + * src/type1/t1driver.c: s/interface/t1_interface/. 1.8568 + 1.8569 + Some more variable renames to avoid troubles on the Mac. 1.8570 + 1.8571 + * src/raster/ftraster.c: 1.8572 + s/Unknown|Ascending|Descending|Flat/\1_State/. 1.8573 + * src/smooth/ftgrays.c: s/TScan/TCoord/. 1.8574 + 1.8575 + Other changes for the Mac. 1.8576 + 1.8577 + * include/freetype/config/ftconfig.h: Define FT_MACINTOSH for 1.8578 + Mac platforms. 1.8579 + * src/base/ftobjs.c: s/macintosh/FT_MACINTOSH/. 1.8580 + 1.8581 + * src/raster/ftrend1.c (ft_raster1_render): Make `pitch' always 1.8582 + an even number. 1.8583 + 1.8584 +2002-04-29 Jouk Jansen <joukj@hrem.stm.tudelft.nl> 1.8585 + 1.8586 + * descrip.mms (all): Add pfr driver. 1.8587 + 1.8588 +2002-04-28 Werner Lemberg <wl@gnu.org> 1.8589 + 1.8590 + * src/pfr/pfrerror.h: New file. 1.8591 + * include/freetype/ftmoderr.h: Add PFR error codes. 1.8592 + * src/pfr/pfrgload.c: Include pfrerror.h. 1.8593 + Use PCF error codes. 1.8594 + (pfr_extra_item_load_stem_snaps): Fix debug message. 1.8595 + * src/pfr/pfrgload.c: Include pfrerror.h. 1.8596 + Use PCF error codes. 1.8597 + (pfr_extra_item_load_bitmap_info, pfr_glyph_load_simple, 1.8598 + pfr_glyph_load_compound): Fix debug message. 1.8599 + * src/pfr/pfrobjs.c: Include pfrerror.h. 1.8600 + Use PCF error codes. 1.8601 + (pfr_face_init): Return PFR_Err_Unknown_File_Format. 1.8602 + * src/pfr/rules.mk (PFR_DRV_H): Include pfrerror.h. 1.8603 + 1.8604 + * src/pcf/pcfdriver.c (PCF_Face_Init) [!FT_CONFIG_OPTION_USE_CMAPS]: 1.8605 + `root' -> `face->root'. 1.8606 + * src/sfnt/ttcmap0.c (TT_Build_CMaps) [!FT_CONFIG_OPTION_USE_CMAPS]: 1.8607 + Removed. 1.8608 + * src/sfnt/ttcmap0.c: Declare TT_Build_CMaps only for 1.8609 + FT_CONFIG_OPTION_USE_CMAPS. 1.8610 + 1.8611 +2002-04-27 Werner Lemberg <wl@gnu.org> 1.8612 + 1.8613 + * src/cache/ftccache.c (ftc_cache_lookup), 1.8614 + src/cache/ftccmap.c (ftc_cmap_family_init), 1.8615 + src/cache/ftcmanag.c (ftc_family_table_alloc), 1.8616 + src/cache/ftcsbits.c (FTC_SBit_Cache_Lookup): Use FTC_Err_*. 1.8617 + src/cache/ftcimage.c (FTC_Image_Cache_Lookup): Use FTC_Err_*. 1.8618 + (FTC_ImageCache_Lookup): Fix handling of invalid arguments. 1.8619 + 1.8620 +2002-04-22 Werner Lemberg <wl@gnu.org> 1.8621 + 1.8622 + * builds/unix/configure.ac: Set `version_info' to 9:1:3 (FT2 1.8623 + version 2.0.9 has 9:0:3). 1.8624 + * builds/unix/configure: Regenerated (using autoconf 2.53). 1.8625 + 1.8626 +2002-04-19 Werner Lemberg <wl@gnu.org> 1.8627 + 1.8628 + * src/pfr/pfrload.c (pfr_extra_items_farse): Fix debug message. 1.8629 + (pfr_phy_font_load): s/size/Size/ for local variable to avoid 1.8630 + compiler warning. 1.8631 + * src/pfr/pfrobjs.c (pfr_face_init): Fix debug message. 1.8632 + (pfr_slot_load): Remove redundant local variable. 1.8633 + 1.8634 +2002-04-19 David Turner <david@freetype.org> 1.8635 + 1.8636 + Adding a PFR font driver to the FreeType sources. Note that it 1.8637 + doesn't support embedded bitmaps or kerning tables yet. 1.8638 + 1.8639 + src/pfr/*: New files. 1.8640 + 1.8641 + * include/freetype/config/ftmodule.h, 1.8642 + include/freetype/internal/fttrace.h, src/Jamefile: Updated. 1.8643 + 1.8644 + * src/type1/t1gload.h (T1_Load_Glyph), src/type1/t1gload.c 1.8645 + (T1_Load_Glyph): Fixed incorrect parameter sign-ness in callback 1.8646 + function. 1.8647 + 1.8648 + * include/freetype/internal/ftmemory.h (FT_MEM_ZERO, FT_ZERO): New 1.8649 + macros. 1.8650 + 1.8651 + * include/freetype/internal/ftstream.h (FT_NEXT_OFF3, FT_NEXT_UOFF3, 1.8652 + FT_NEXT_OFF3_LE, FT_NEXT_UOFF3_LE): New macros to parse in-memory 1.8653 + 24-bit integers. 1.8654 + 1.8655 +2002-04-18 David Turner <david@freetype.org> 1.8656 + 1.8657 + * src/base/ftobjs.c, builds/win32/ftdebug.c, 1.8658 + builds/amiga/src/base/ftdebug.c: Version 2.1.0 couldn't be linked 1.8659 + against applications in Win32 and Amiga builds due to changes to 1.8660 + `src/base/ftdebug.c' that were not properly propagated to 1.8661 + `builds/win32' and `builds/amiga'. This has been fixed. 1.8662 + 1.8663 + * include/freetype/internal/ftobject.h, 1.8664 + include/freetype/internal/ftexcept.h, include/freetype/ftsysmem.h, 1.8665 + include/freetype/ftsysio.h, src/base/ftsysmem.c, src/base/ftsysio.c: 1.8666 + New experimental files. 1.8667 + 1.8668 +2002-04-17 David Turner <david@freetype.org> 1.8669 + 1.8670 + 1.8671 + * Version 2.1.0 released. 1.8672 + ========================= 1.8673 + 1.8674 + 1.8675 +2002-04-17 Michael Jansson <mjan@em2-solutions.com> 1.8676 + 1.8677 + * src/type1/t1gload.c (T1_Compute_Max_Advance): Fixed a small bug 1.8678 + that prevented the function to return the correct value. 1.8679 + 1.8680 +2002-04-16 Francesco Zappa Nardelli <Francesco.Zappa.Nardelli@ens.fr> 1.8681 + 1.8682 + * src/pcf/pcfread (pcf_get_accell): Fix parsing of accelerator 1.8683 + tables. 1.8684 + 1.8685 +2002-04-15 David Turner <david@freetype.org> 1.8686 + 1.8687 + * docs/FTL.txt: Formatting. 1.8688 + 1.8689 + * include/freetype/config/ftoption.h: Reduce the size of the 1.8690 + render pool from 32kByte to 16kByte. 1.8691 + 1.8692 + * src/pcf/pcfread.c (pcf_seek_to_table_type): Remove compiler 1.8693 + warning. 1.8694 + 1.8695 + * include/freetype/config/ftoption.h (FT_MAX_EXTENSIONS): Removed. 1.8696 + 1.8697 + * docs/CHANGES: Preparing 2.1.0 release. 1.8698 + 1.8699 +2002-04-13 Werner LEMBERG <wl@gnu.org> 1.8700 + 1.8701 + * src/cff/cffgload.c (CFF_Parse_CharStrings): s/rand/Rand/ to avoid 1.8702 + compiler warning. 1.8703 + 1.8704 +2002-04-12 David Turner <david@freetype.org> 1.8705 + 1.8706 + * README.UNX: Updated the Unix-specific quick-compilation guide to 1.8707 + warn about the GNU Make requirement at compile time. 1.8708 + 1.8709 + * include/freetype/config/ftstdlib.h, 1.8710 + include/freetype/config/ftconfig.h, 1.8711 + include/freetype/config/ftheader.h, 1.8712 + include/freetype/internal/ftmemory.h, 1.8713 + include/freetype/internal/ftobjs.h, 1.8714 + 1.8715 + src/autohint/ahoptim.c, 1.8716 + 1.8717 + src/base/ftdbgmem.c, src/base/ftdebug.c, src/base/ftmac.c, 1.8718 + src/base/ftobjs.c, src/base/ftsystem.c, 1.8719 + 1.8720 + src/cache/ftcimage.c, src/cache/ftcsbits.c, 1.8721 + 1.8722 + src/cff/cffdriver.c, src/cff/cffload.c, src/cff/cffobjs.c, 1.8723 + 1.8724 + src/cid/cidload.c, src/cid/cidparse.c, src/cid/cidriver.c, 1.8725 + 1.8726 + src/pcf/pcfdriver.c, src/pcf/pcfread.c, 1.8727 + 1.8728 + src/psaux/t1cmap.c, src/psaux/t1decode.c, 1.8729 + 1.8730 + src/pshinter/pshalgo1.c, src/pshinter/pshalgo2.c, 1.8731 + src/pshinter/pshrec.c, 1.8732 + 1.8733 + src/psnames/psmodule.c, 1.8734 + 1.8735 + src/raster/ftraster.c, 1.8736 + 1.8737 + src/sfnt/sfdriver.c, src/sfnt/ttload.c, 1.8738 + 1.8739 + src/smooth/ftgrays.c, 1.8740 + 1.8741 + src/type1/t1afm.c, src/type1/t1driver.c, src/type1/t1gload.c, 1.8742 + src/type1/t1load.c, src/type1/t1objs.c, src/type1/t1parse.c, 1.8743 + 1.8744 + builds/unix/ftconfig.in, builds/vms/ftconfig.h, 1.8745 + 1.8746 + builds/amiga/src/base/ftdebug.c: 1.8747 + 1.8748 + Added the new configuration file `ftstdlib.h' used to define 1.8749 + aliases for all ISO C library functions used by the engine 1.8750 + (e.g. strlen, qsort, setjmp, etc.). 1.8751 + 1.8752 + This eases the porting of FreeType 2 to environments like 1.8753 + XFree86 modules/extensions. 1.8754 + 1.8755 + Also removed many #include <string.h>, #include <stdlib.h>, etc. 1.8756 + from the engine's sources where they are not needed. 1.8757 + 1.8758 + * src/sfnt/ttpost.c: Use macro name for psnames.h. 1.8759 + 1.8760 +2002-04-12 Vincent Caron <v.caron@zerodeux.net> 1.8761 + 1.8762 + * configure, builds/detect.mk: Updated the build system to print 1.8763 + a warning message in case GNU Make isn't used to build the library. 1.8764 + 1.8765 +2002-04-11 David Turner <david@freetype.org> 1.8766 + 1.8767 + * README, docs/CHANGES, Jamfile.in: Updates for the 2.1.0 release. 1.8768 + 1.8769 + * docs/FTL.txt: Updated license text to provide a preferred 1.8770 + disclaimer and adjust copyright dates/extents. 1.8771 + 1.8772 + * include/freetype/cache/ftcglyph.h: Removing obsolete (and 1.8773 + confusing) comment. 1.8774 + 1.8775 + * Jamfile.in: New file. 1.8776 + 1.8777 +2002-04-11 Maxim Shemanarev <mcseemagg@yahoo.com> 1.8778 + 1.8779 + * src/smooth/ftgrays.c (gray_hline): Minor optimization. 1.8780 + 1.8781 +2002-04-02 Werner Lemberg <wl@gnu.org> 1.8782 + 1.8783 + Fixes from the stable branch: 1.8784 + 1.8785 + * include/freetype/config/ftoption.h (FT_CONFIG_OPTION_OLD_CALCS): 1.8786 + Removed. 1.8787 + [FT_CONFIG_OPTION_OLD_CALCS]: Removed. 1.8788 + * include/freetype/internal/ftcalc.h, src/base/ftcalc.c 1.8789 + [FT_CONFIG_OPTION_OLD_CALCS]: Removed. 1.8790 + 1.8791 + * src/base/fttrigon.c (FT_Vector_Length): Change algorithm to match 1.8792 + output of FreeType 1. 1.8793 + 1.8794 + * src/pshinter/pshglob.c (psh_globals_scale_widths): Fixed a small 1.8795 + bug that created un-even stem widths when hinting Postscript fonts. 1.8796 + 1.8797 + * src/type1/t1driver.c, src/type1/t1parse.c: 16bit fixes. 1.8798 + 1.8799 +2002-04-01 Werner Lemberg <wl@gnu.org> 1.8800 + 1.8801 + * src/truetype/ttgload.c: 16bit fixes. 1.8802 + (TT_Load_Simple_Glyph): Improve debug messages. 1.8803 + (load_truetype_glyph): Remove dead code. 1.8804 + * src/truetype/ttinterp.c: 16bit fixes. 1.8805 + * src/truetype/ttobjs.c: Ditto. 1.8806 + 1.8807 + * include/freetype/ftsnames.h, include/freetype/internal/sfnt.h, 1.8808 + src/cff/cffload.h, src/psaux/psobjs.h, src/truetype/ttinterp.[ch], 1.8809 + src/sfnt/ttpost.h: s/index/idx/. 1.8810 + 1.8811 +2002-03-31 Yao Zhang <yaoz@vidar.niaaa.nih.gov> 1.8812 + 1.8813 + * src/truetype/ttobjs.c (TT_Size_Init): Fix typo. 1.8814 + 1.8815 +2002-03-31 Werner Lemberg <wl@gnu.org> 1.8816 + 1.8817 + * src/otlayout/otlcommn.c, src/otlayout/otlcommn.h: s/index/idx/. 1.8818 + * src/psaux/t1cmap.c: Ditto. 1.8819 + * src/sfnt/ttcmap0.c: Ditto. 1.8820 + 1.8821 + * include/freetype/internal/tttypes.h, 1.8822 + include/freetype/internal/sfnt.h (TT_Goto_Table_Func): Renamed to ... 1.8823 + (TT_Loader_GotoTableFunc): This. 1.8824 + * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Fix debug 1.8825 + messages. 1.8826 + * src/psnames/psmodule.c (psnames_interface) 1.8827 + [!FT_CONFIG_OPTION_ADOBE_GLYPH_LIST]: Fix typo. 1.8828 + * src/sfnt/sfdriver.c (get_sfnt_table): 16bit fix. 1.8829 + * src/sfnt/ttcmap.c: 16bit fixes (0xFFFF -> 0xFFFFU). 1.8830 + * src/sfnt/ttcmap0.c: 16bit fixes. 1.8831 + (TT_Build_CMaps): Simplify debug messages. 1.8832 + (tt_cmap12_char_next): Fix offset. 1.8833 + * src/sfnt/ttload.c (TT_Load_Names, TT_Load_CMap): Fix debug 1.8834 + messages. 1.8835 + (TT_Load_OS2): 16bit fix. 1.8836 + 1.8837 +2002-03-30 David Turner <david@freetype.org> 1.8838 + 1.8839 + * include/freetype/internal/tttypes.h: Adding comments to some of 1.8840 + the TT_FaceRec fields. 1.8841 + 1.8842 + * src/sfnt/ttcmap0.c (TT_Build_CMaps): Removed compiler warnings. 1.8843 + 1.8844 + * src/sfnt/sfobjs.c (tt_name_entry_ascii_from_{utf16,ucs4,other}: 1.8845 + New functions. 1.8846 + (tt_face_get_name): Use them to properly extract an ascii font name. 1.8847 + 1.8848 +2002-03-30 Werner Lemberg <wl@gnu.org> 1.8849 + 1.8850 + * include/freetype/t1tables.h (t1_blend_max): Fix typo. 1.8851 + * src/base/ftstream.c: Simplify FT_ERROR calls. 1.8852 + * src/cff/cffdrivr.c (cff_get_glyph_name): Fix debug message. 1.8853 + 1.8854 + * src/cff/cffobjs.c (CFF_Driver_Init, CFF_Driver_Done) 1.8855 + [TT_CONFIG_OPTION_EXTEND_ENGINE]: Removed. 1.8856 + * src/cff/sfobjs.c (SFNT_Load_Face) 1.8857 + [TT_CONFIG_OPTION_EXTEND_ENGINE]: Ditto. 1.8858 + * src/truetype/ttobjs.c (TT_Init_Driver, TT_Done_Driver) 1.8859 + [TT_CONFIG_OPTION_EXTEND_ENGINE]: Ditto. 1.8860 + 1.8861 + * src/truetype/ttdriver.c, src/truetype/ttobjs.c, 1.8862 + src/truetype/ttobjs.h: Renaming driver functions to the 1.8863 + FT_<Subject>_<Action> scheme: 1.8864 + 1.8865 + TT_Init_Driver => TT_Driver_Init 1.8866 + TT_Done_Driver => TT_Driver_Done 1.8867 + TT_Init_Face => TT_Face_Init 1.8868 + TT_Done_Face => TT_Face_Done 1.8869 + TT_Init_Size => TT_Size_Init 1.8870 + TT_Done_Size => TT_Size_Done 1.8871 + TT_Reset_Size => TT_Size_Reset 1.8872 + 1.8873 +2002-03-29 Werner Lemberg <wl@gnu.org> 1.8874 + 1.8875 + * builds/vms/ftconfig.h: Rename LOCAL_DEF and LOCAL_FUNC to 1.8876 + FT_LOCAL and FT_LOCAL_DEF, respectively, as with other ftconfig.h 1.8877 + files. 1.8878 + * builds/unix/ftconfig.in: Add argument to FT_LOCAL and 1.8879 + FT_LOCAL_DEF. 1.8880 + * src/truetype/ttinterp.c: s/FT_Assert/FT_ASSERT/. 1.8881 + * builds/unix/configure.ac: Temporarily deactivate creation of 1.8882 + ../../Jamfile. 1.8883 + * builds/unix/configure: Updated. 1.8884 + 1.8885 +2002-03-28 KUSANO Takayuki <AE5T-KSN@asahi-net.or.jp> 1.8886 + 1.8887 + * src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fix serious typos. 1.8888 + 1.8889 +2002-03-28 Werner Lemberg <wl@gnu.org> 1.8890 + 1.8891 + * include/freetype/internal/psaux.h (PSAux_ServiceRec): Fix 1.8892 + compiler warnings. 1.8893 + * include/freetype/internal/t1types.h (T1_FaceRec): Use `const' for 1.8894 + some members. 1.8895 + * src/base/ftapi.c (FT_New_Memory_Stream): Fix typos. 1.8896 + * src/psaux/t1cmap.c (t1_cmap_std_init, t1_cmap_unicode_init): Add 1.8897 + cast. 1.8898 + (t1_cmap_{standard,expert,custom,unicode}_class_rec): Use 1.8899 + `FT_CALLBACK_TABLE_DEF'. 1.8900 + * src/psaux/t1cmap.h: Updated. 1.8901 + * src/sfnt/ttcmap0.c (TT_Build_CMaps): Use `ft_encoding_none' 1.8902 + instead of zero. 1.8903 + * src/type1/t1objs.c (T1_Face_Init): Use casts. 1.8904 + 1.8905 +2002-03-26 David Turner <david@freetype.org> 1.8906 + 1.8907 + * src/sfnt/sfdriver.c, src/sfnt/sfobjs.c, src/sfnt/ttcmap0.c: 1.8908 + Fixed a small bug in the FT_CMaps support code. 1.8909 + 1.8910 +2002-03-25 David Turner <david@freetype.org> 1.8911 + 1.8912 + * src/truetype/ttinterp.c (Norm): Replaced with... 1.8913 + (TT_VecLen): This. 1.8914 + (TT_MulFix14, TT_DotFix14): New functions. 1.8915 + (Project, Dual_Project, Free_Project, Compute_Point_Displacement, 1.8916 + Ins_SHPIX, Ins_MIAP, Ins_MIRP): Use them. 1.8917 + [FT_CONFIG_OPTION_OLD_CALCS]: Removed all code. 1.8918 + 1.8919 +2002-03-22 David Turner <david@freetype.org> 1.8920 + 1.8921 + * src/base/ftobjs.c, src/sfnt/ttcmap0.c, src/type1/t1objs.c: 1.8922 + Various fixes to make the FT_CMaps support work correctly (more 1.8923 + tests are still needed). 1.8924 + 1.8925 + * include/freetype/internal/ftobjs.h, src/sfnt/Jamfile, 1.8926 + src/sfnt/rules.mk, src/sfnt/sfnt.c, src/sfnt/sfobjs.c, 1.8927 + src/sfnt/ttload.c, src/sfnt/ttcmap0.c, src/sfnt/ttcmap0.h: Updated 1.8928 + the SFNT charmap support to use FT_CMaps. 1.8929 + 1.8930 + * include/freetype/fterrdef.h: New file. 1.8931 + * include/freetype/fterrors.h: Include it. It contains all error 1.8932 + codes. 1.8933 + * include/freetype/config/ftheader.h (FT_ERROR_DEFINITIONS_H): New 1.8934 + macro. 1.8935 + 1.8936 + * include/freetype/internal/ftmemory.h, and a lot of other files: 1.8937 + Changed the names of memory macros. Examples: 1.8938 + 1.8939 + MEM_Set => FT_MEM_SET 1.8940 + MEM_Copy => FT_MEM_COPY 1.8941 + MEM_Move => FT_MEM_MOVE 1.8942 + 1.8943 + ALLOC => FT_ALLOC 1.8944 + FREE => FT_FREE 1.8945 + REALLOC = >FT_REALLOC 1.8946 + 1.8947 + FT_NEW was introduced to allocate a new object from a _typed_ 1.8948 + pointer. 1.8949 + 1.8950 + Note that ALLOC_ARRAY and REALLOC_ARRAY have been replaced by 1.8951 + FT_NEW_ARRAY and FT_RENEW_ARRAY which take _typed_ pointer 1.8952 + arguments. 1.8953 + 1.8954 + This results in _lots_ of sources being changed, but makes the code 1.8955 + more generic and less error-prone. 1.8956 + 1.8957 + * include/freetype/internal/ftstream.h, src/base/ftstream.c, 1.8958 + src/cff/cffload.c, src/pcf/pcfread.c, src/sfnt/ttcmap.c, 1.8959 + src/sfnt/ttcmap0.c, src/sfnt/ttload.c, src/sfnt/ttpost.c, 1.8960 + src/sfnt/ttsbit.c, src/truetype/ttgload.c, src/truetype/ttpload.c, 1.8961 + src/winfonts/winfnt.c: Changed the definitions of stream macros. 1.8962 + Examples: 1.8963 + 1.8964 + NEXT_Byte => FT_NEXT_BYTE 1.8965 + NEXT_Short => FT_NEXT_SHORT 1.8966 + NEXT_UShortLE => FT_NEXT_USHORT_LE 1.8967 + READ_Short => FT_READ_SHORT 1.8968 + GET_Long => FT_GET_LONG 1.8969 + etc. 1.8970 + 1.8971 + Also introduced the FT_PEEK_XXXX functions. 1.8972 + 1.8973 + * src/cff/cffobjs.c (CFF_Build_Unicode_Charmap): Removed commented 1.8974 + out function. 1.8975 + (find_encoding): Removed. 1.8976 + (CFF_Face_Init): Remove charmap support. 1.8977 + 1.8978 + * include/freetype/config/ftoption.h (FT_CONFIG_OPTION_USE_CMAPS, 1.8979 + TT_CONFIG_CMAP_FORMAT{0,2,4,6,8,10,12}): New macros to fine-tune 1.8980 + support of cmaps. 1.8981 + 1.8982 +2002-03-21 David Turner <david@freetype.org> 1.8983 + 1.8984 + * src/base/ftobjs.c, src/pcf/pcfdriver.c, src/pcf/pcfread.c: Updated 1.8985 + to new FT_CMap definitions. 1.8986 + 1.8987 + * src/psaux/t1cmap.h, src/psaux/t1cmap.c, src/type1/t1cmap.h, 1.8988 + src/type1/t1cmap.c: Updating and moving the Type 1 FT_CMap support 1.8989 + from `src/type1' to `src/psaux' since it is going to be shared by 1.8990 + the Type 1 and CID font drivers. 1.8991 + 1.8992 + * src/psaux/Jamfile, src/psaux/psaux.c, src/psaux/psauxmod.c, 1.8993 + src/psaux/rules.mk, include/freetype/internal/psaux.h: Added support 1.8994 + for Type 1 FT_CMaps. 1.8995 + 1.8996 +2002-03-20 David Turner <david@freetype.org> 1.8997 + 1.8998 + * src/base/ftgloadr.c (FT_GlyphLoader_CheckSubGlyphs): Fixed a 1.8999 + memory allocation bug that was due to un-careful renaming of the 1.9000 + FT_SubGlyph type. 1.9001 + 1.9002 + * src/base/ftdbgmem.c (ft_mem_table_destroy): Fixed a small bug that 1.9003 + caused the library to crash with Electric Fence when memory 1.9004 + debugging is used. 1.9005 + 1.9006 + * Renaming stream macros. Examples: 1.9007 + 1.9008 + FILE_Skip => FT_STREAM_SKIP 1.9009 + FILE_Read => FT_STREAM_READ 1.9010 + ACCESS_Frame => FT_FRAME_ENTER 1.9011 + FORGET_Frame => FT_FRAME_EXIT 1.9012 + etc. 1.9013 + 1.9014 + * src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fixed memory leak. 1.9015 + 1.9016 + * include/freetype/internal/ftobjs.h: Changing the definition of 1.9017 + FT_CMap_CharNextFunc slightly. 1.9018 + 1.9019 + * src/cff/*.c: Updating CFF type definitions. 1.9020 + 1.9021 +2002-03-14 David Turner <david@freetype.org> 1.9022 + 1.9023 + * include/freetype/internal/autohint.h, src/autohint/ahmodule.c, 1.9024 + src/base/ftapi.c, src/base/ftobjs.c: Updating the type definitions 1.9025 + for the auto-hinter module. 1.9026 + 1.9027 + FT_AutoHinter_Interface => FT_AutoHinter_ServiceRec 1.9028 + FT_AutoHinter_Interface* => FT_AutoHinter_Service 1.9029 + etc. 1.9030 + 1.9031 + FT_AutoHinter_Get_Global_Func => FT_AutoHinter_GlobalGetFunc 1.9032 + FT_AutoHinter_Done_Global_Func => FT_AutoHinter_GlobalDoneFunc 1.9033 + etc. 1.9034 + 1.9035 + * ahloader.h [_STANDALONE_]: Removed all conditional code. 1.9036 + 1.9037 + * include/freetype/internal/cfftypes.h, src/cff/*.c: Updating the 1.9038 + type definitions of the CFF font driver. 1.9039 + 1.9040 + CFF_Font => CFF_FontRec 1.9041 + CFF_Font* => CFF_Font 1.9042 + etc. 1.9043 + 1.9044 + * include/freetype/internal/fnttypes.h, src/winfonts/*.c: Updating 1.9045 + type definitions of the Windows FNT font driver. 1.9046 + 1.9047 + * include/freetype/internal/ftdriver.h, 1.9048 + include/freetype/internal/ftobjs.h, src/base/ftapi.c, 1.9049 + src/base/ftobjs.c, src/cff/cffdrivr.c, src/cff/cffdrivr.h, 1.9050 + src/cid/cidriver.c, src/cid/cidriver.h, src/pcf/pcfdriver.c, 1.9051 + src/pcf/pcfdriver.h, src/truetype/ttdriver.c, 1.9052 + src/truetype/ttdriver.h, src/type1/t1driver.c, src/type1/t1driver.h, 1.9053 + src/winfonts/winfnt.c, src/winfonts/winfnt.h: Updating type 1.9054 + definitions for font drivers. 1.9055 + 1.9056 + FTDriver_initFace => FT_Face_InitFunc 1.9057 + FTDriver_initGlyphSlot => FT_Slot_InitFunc 1.9058 + etc. 1.9059 + 1.9060 + * src/cid/cidobjs.c (CID_Face_Init): Remove dead code. 1.9061 + 1.9062 + * include/freetype/internal/ftobjs.h, src/base/ftobjs.c: Updated a 1.9063 + few face method definitions: 1.9064 + 1.9065 + FT_PSName_Requester => FT_Face_GetPostscriptNameFunc 1.9066 + FT_Glyph_Name_Requester => FT_Face_GetGlyphNameFunc 1.9067 + FT_Name_Index_Requester => FT_Face_GetGlyphNameIndexFunc 1.9068 + 1.9069 + * src/base/ftapi.c: New file. It contains backwards compatibility 1.9070 + functions. 1.9071 + 1.9072 + * include/freetype/internal/psaux.h, src/cid/cidload.c, 1.9073 + src/cidtoken.h, src/psaux/psobjs.c, src/psaux/psobjs.h, 1.9074 + src/psaux/t1decode.c, stc/type1/t1load.c, src/type1/t1tokens.h: 1.9075 + Updated common PostScript type definitions. 1.9076 + Renamed all enumeration values like to uppercase variants: 1.9077 + 1.9078 + t1_token_any => T1_TOKEN_TYPE_ANY 1.9079 + t1_field_cid_info => T1_FIELD_LOCATION_CID_INFO 1.9080 + etc. 1.9081 + 1.9082 + * include/freetype/internal/psglobals.h: Removed. 1.9083 + * include/freetype/internal/pshints.h, src/pshinter/pshglob.h: 1.9084 + Updated. 1.9085 + 1.9086 + * include/freetype/internal/tttypes.h, 1.9087 + include/freetype/internal/sfnt.h, src/base/ftnames.c, 1.9088 + src/cff/cffdrivr.c, src/sfnt/*.c, src/truetype/*.c: Updated 1.9089 + SFNT/TrueType type definitions. 1.9090 + 1.9091 + * include/freetype/freetype.h, include/freetype/internal/ftgloadr.h: 1.9092 + Updating type definitions for the glyph loader. 1.9093 + 1.9094 +2002-03-13 Antoine Leca <antoine@oriolnet.com> 1.9095 + 1.9096 + * include/freetype/config/ftoption.h: Changed the automatic 1.9097 + detection of Microsoft C compilers to automatically support 64-bit 1.9098 + integers only since revision 9.00 (i.e. >= Visual C++ 2.0). 1.9099 + 1.9100 +2002-03-08 Werner Lemberg <wl@gnu.org> 1.9101 + 1.9102 + * src/base/ftutil.c (FT_Realloc): Use MEM_Set instead of memset. 1.9103 + 1.9104 +2002-03-07 Werner Lemberg <wl@gnu.org> 1.9105 + 1.9106 + * src/base/ftdbgmem.c (ft_mem_table_resize, ft_mem_table_new, 1.9107 + ft_mem_table_set, ft_mem_debug_alloc, ft_mem_debug_free, 1.9108 + ft_mem_debug_realloc, ft_mem_debug_done, FT_Alloc_Debug, 1.9109 + FT_Realloc_Debug, FT_Free_Debug): Fix compiler warnings. 1.9110 + * src/base/ftcalc.c (FT_MulFix): Ditto. 1.9111 + * src/cff/cffdrivr.c (cff_get_name_index): Ditto. 1.9112 + * src/cff/cffobjs.c (CFF_Size_Get_Global_Funcs, CFF_Size_Init, 1.9113 + CFF_GlyphSlot_Init): Ditto. 1.9114 + * src/cid/cidobjs.c (CID_GlyphSlot_Init, 1.9115 + CID_Size_Get_Globals_Funcs): Ditto. 1.9116 + * src/type1/t1objs.c (T1_Size_Get_Globals_Funcs, T1_GlyphSlot_Init): 1.9117 + Ditto. 1.9118 + * src/pshinter/pshmod.c (pshinter_interface): Use `static const'. 1.9119 + * src/winfonts/winfnt.c (FNT_Get_Next_Char): Remove unused 1.9120 + variables. 1.9121 + 1.9122 + * include/freetype/internal/psaux.h (T1_Builder_Funcs): Renamed 1.9123 + to... 1.9124 + (T1_Builder_FuncsRec): This. 1.9125 + (T1_Builder_Funcs): New typedef. 1.9126 + (PSAux_Interface): Remove compiler warnings. 1.9127 + * src/psaux/psauxmod.c (t1_builder_funcs), src/psaux/psobjs.h 1.9128 + (t1_builder_funcs): Updated. 1.9129 + 1.9130 + * src/pshinter/pshglob.h (PSH_Blue_Align): Replaced with ... 1.9131 + (PSH_BLUE_ALIGN_{NONE,TOP,BOT}): New defines. 1.9132 + (PSH_AlignmentRec): Updated. 1.9133 + 1.9134 + * include/freetype/internal/ftstream.h (GET_Char, GET_Byte): Fix 1.9135 + typo. 1.9136 + * include/freetype/internal/ftgloadr.h (FT_SubGlyph): Ditto. 1.9137 + * src/base/ftstream (FT_Get_Char): Rename to... 1.9138 + (FT_Stream_Get_Char): This. 1.9139 + 1.9140 + * src/base/ftnames.c (FT_Get_Sfnt_Name): s/index/idx/ -- `index' is 1.9141 + a built-in function in gcc, causing warning messages with gcc 3.0. 1.9142 + * src/autohint/ahglyph.c (ah_outline_load): Ditto. 1.9143 + * src/autohint/ahglobal.c (ah_hinter_compute_blues): Ditto. 1.9144 + * src/cache/ftcmanag.c (ftc_family_table_alloc, 1.9145 + ftc_family_table_free, FTC_Manager_Done, FTC_Manager_Register_Cache): 1.9146 + Ditto. 1.9147 + * src/cff/cffload.c (cff_new_index, cff_done_index, 1.9148 + cff_explicit_index, CFF_Access_Element, CFF_Forget_Element, 1.9149 + CFF_Get_Name, CFF_Get_String, CFF_Load_SubFont, CFF_Load_Font, 1.9150 + CFF_Done_Font): Ditto. 1.9151 + * src/psaux/psobjs.c (PS_Table_Add, PS_Parser_LoadField): Ditto. 1.9152 + * src/psaux/t1decode.c (T1_Decoder_Parse_Charstrings): Ditto. 1.9153 + * src/pshinter/pshrec.c (ps_mask_test_bit, ps_mask_clear_bit, 1.9154 + ps_mask_set_bit, ps_dimension_add_t1stem, ps_hints_t1stem3, 1.9155 + * src/pshinter/pshalgo1.c (psh1_hint_table_record, 1.9156 + psh1_hint_table_record_mask, psh1_hint_table_activate_mask): Ditto. 1.9157 + * src/pshinter/pshalgo2.c (psh2_hint_table_record, 1.9158 + psh2_hint_table_record_mask, psh2_hint_table_activate_mask): Ditto. 1.9159 + * src/sfnt/ttpost.c (Load_Format_20, Load_Format_25, 1.9160 + TT_Get_PS_Name): Ditto. 1.9161 + * src/truetype/ttgload.c (TT_Get_Metrics, Get_HMetrics, 1.9162 + load_truetype_glyph): Ditto. 1.9163 + * src/type1/t1load.c (parse_subrs, T1_Open_Face): Ditto. 1.9164 + * src/type1/t1afm.c (T1_Get_Kerning): Ditto. 1.9165 + * include/freetype/cache/ftcmanag.h (ftc_family_table_free): Ditto. 1.9166 + 1.9167 +2002-03-06 David Turner <david@freetype.org> 1.9168 + 1.9169 + * src/type1/t1objs.c (T1_Face_Init), src/cid/cidobjs.c 1.9170 + (CID_Face_Init): Fixed another bug related to the 1.9171 + ascender/descender/text height of Postscript fonts. 1.9172 + 1.9173 + * src/pshinter/pshalgo2.c (print_zone): Renamed to ... 1.9174 + (psh2_print_zone): This. 1.9175 + * src/pshinter/pshalgo1.c (print_zone): Renamed to ... 1.9176 + (psh1_print_zone): This. 1.9177 + 1.9178 + * include/freetype/freetype.h, include/freetype/internal/ftobjs.h, 1.9179 + src/base/ftobjs.c: Adding the new FT_Library_Version API to return 1.9180 + the library's current version in dynamic links. 1.9181 + * src/base/ftinit.c (FT_Init_FreeType): Updated. 1.9182 + 1.9183 +2002-03-06 Werner Lemberg <wl@gnu.org> 1.9184 + 1.9185 + * src/pshinter/pshglob.h (PSH_DimensionRec): s/std/stdw/. 1.9186 + * src/pshinter/pshglob.c (psh_global_scale_widths, 1.9187 + psh_dimension_snap_width, psh_globals_destroy, psh_globals_new): 1.9188 + Ditto. 1.9189 + 1.9190 +2002-03-05 David Turner <david@freetype.org> 1.9191 + 1.9192 + * src/type1/t1objs.c (T1_Face_Init), src/cff/cffobjs.c 1.9193 + (CFF_Face_Init), src/cid/cidobjs.c (CID_Face_Init): Removing the bug 1.9194 + that returned global BBox values in 16.16 fixed format (instead of 1.9195 + integer font units). 1.9196 + 1.9197 + * src/cid/cidriver.c (cid_get_postscript_name): Fixed a bug that 1.9198 + caused the CID driver to return Postscript font names with a leading 1.9199 + slash (`/') as in `/MOEKai-Regular'. 1.9200 + 1.9201 + * src/sfnt/ttload.c (TT_Load_Names), src/sfnt/sfobjs.c (Get_Name), 1.9202 + src/sfnt/sfdriver.c (get_sfnt_postscript_name): Fixed the loader so 1.9203 + that it accepts broken fonts like `foxjump.ttf', which made FreeType 1.9204 + crash when trying to load them. 1.9205 + 1.9206 + Also improved the name table parser to be able to load 1.9207 + Windows-encoded entries before Macintosh or Unicode ones, since it 1.9208 + seems some fonts don't have reliable values here anyway. 1.9209 + 1.9210 + * include/freetype/internal/psnames.h: Add typedef for 1.9211 + `PSNames_Service'. 1.9212 + 1.9213 +2002-03-05 Werner Lemberg <wl@gnu.org> 1.9214 + 1.9215 + * builds/unix/aclocal.m4, builds/unix/ltmain.sh: Update to libtool 1.9216 + 1.4.2. 1.9217 + Apply a small patch for AIX to make shared libraries work (this 1.9218 + patch is already in the CVS version of libtool). 1.9219 + 1.9220 + * builds/unix/config.sub, builds/unix/config.guess: Updated to 1.9221 + recent versions. 1.9222 + 1.9223 + * builds/unix/configure.ac: Fix typo 1.9224 + (AC_CONFIG_FILE->AC_CONFIG_FILES). 1.9225 + 1.9226 + * builds/unix/configure: Regenerated. 1.9227 + 1.9228 +2002-02-28 David Turner <david@freetype.org> 1.9229 + 1.9230 + * include/freetype/ftconfig.h: Changed `FT_LOCAL xxxx' to 1.9231 + `FT_LOCAL( xxxx )' everywhere in the source. The same goes for 1.9232 + `FT_LOCAL_DEF xxxx' which is translated to `FT_LOCAL_DEF( xxxxx )'. 1.9233 + 1.9234 + * include/freetype/freetype.h (FREETYPE_MINOR, FREETYPE_PATCH): 1.9235 + Changing version to 2.1.0 to indicate an unstable branch. 1.9236 + Added the declarations of FT_Get_First_Char and FT_Get_Next_Char. 1.9237 + 1.9238 + * src/base/ftobjs.c: Implement FT_Get_First_Char and 1.9239 + FT_Get_Next_Char. 1.9240 + 1.9241 + * include/freetype/t1tables.h: Renaming structure types. This 1.9242 + 1.9243 + typedef T1_Struct_ 1.9244 + { 1.9245 + } T1_Struct; 1.9246 + 1.9247 + becomes 1.9248 + 1.9249 + typedef PS_StructRec_ 1.9250 + { 1.9251 + } PS_StructRec, *PS_Struct; 1.9252 + 1.9253 + typedef PS_StructRec T1_Struct; /* backwards-compatibility */ 1.9254 + 1.9255 + Hence, we increase the coherency of the source code by effectively 1.9256 + using the `Rec' prefix for structure types. 1.9257 + 1.9258 +2002-02-27 David Turner <david@freetype.org> 1.9259 + 1.9260 + * src/sfnt/ttload.c (TT_Load_Names): Simplifying and securing the 1.9261 + names table loader. Invalid individual name entries are now handled 1.9262 + correctly. This allows the loading of very buggy fonts like 1.9263 + `foxjump.ttf' without allocating tons of memory and causing crashes. 1.9264 + 1.9265 + * src/otlayout/otlcommon.h, src/otlayout/otlcommon.c: Adding (still 1.9266 + experimental) code for OpenType Layout tables validation and 1.9267 + parsing. 1.9268 + 1.9269 + * src/type1/t1cmap.h, src/type1/t1cmap.c: Adding (still 1.9270 + experimental) code for Type 1 charmap processing. 1.9271 + 1.9272 + * src/sfnt/ttcmap0.c: New file. It contains a new, still 1.9273 + experimental SFNT charmap processing support. 1.9274 + 1.9275 + * include/freetype/internal/ftobjs.h: Adding validation support as 1.9276 + well as internal charmap object definitions (FT_CMap != FT_CharMap). 1.9277 + 1.9278 +2002-02-24 David Turner <david@freetype.org> 1.9279 + 1.9280 + * Renaming stream functions to the FT_<Subject>_<Action> scheme: 1.9281 + 1.9282 + FT_Seek_Stream => FT_Stream_Seek 1.9283 + FT_Skip_Stream => FT_Stream_Skip 1.9284 + FT_Read_Stream => FT_Stream_Read 1.9285 + FT_Read_Stream_At => FT_Stream_Read_At 1.9286 + FT_Access_Frame => FT_Stream_Enter_Frame 1.9287 + FT_Forget_Frame => FT_Stream_Exit_Frame 1.9288 + FT_Extract_Frame => FT_Stream_Extract_Frame 1.9289 + FT_Release_Frame => FT_Stream_Release_Frame 1.9290 + FT_Get_XXXX => FT_Stream_Get_XXXX 1.9291 + FT_Read_XXXX => FT_Stream_Read_XXXX 1.9292 + 1.9293 + FT_New_Stream( filename, stream ) => 1.9294 + FT_Stream_Open( stream, filename ) 1.9295 + 1.9296 + (The function doesn't create the FT_Stream structure, it simply 1.9297 + initializes it for reading.) 1.9298 + 1.9299 + FT_New_Memory_Stream( library, FT_Byte* base, size, stream ) => 1.9300 + FT_Stream_Open_Memory( stream, const FT_Byte* base, size ) 1.9301 + 1.9302 + FT_Done_Stream => FT_Stream_Close 1.9303 + FT_Stream_IO => FT_Stream_IOFunc 1.9304 + FT_Stream_Close => FT_Stream_CloseFunc 1.9305 + 1.9306 + ft_close_stream => ft_ansi_stream_close (in base/ftsystem.c only) 1.9307 + ft_io_stream => ft_ansi_stream_io (in base/ftsystem.c only) 1.9308 + 1.9309 + * src/base/ftutil.c: New file. Contains all memory and list 1.9310 + management code (previously in `ftobjs.c' and `ftlist.c', 1.9311 + respectively). 1.9312 + 1.9313 + * include/freetype/internal/ftobjs.h: Moving all code related to 1.9314 + glyph loaders to ... 1.9315 + * include/freetype/internal/ftgloadr.h: This new file. 1.9316 + `FT_GlyphLoader' is now a pointer to the structure 1.9317 + `FT_GlyphLoaderRec'. 1.9318 + (ft_glyph_own_bitmap): Renamed to ... 1.9319 + (FT_GLYPH_OWN_BITMAP): This. 1.9320 + * src/base/ftobjs.c: Moving all code related to glyph loaders 1.9321 + to ... 1.9322 + * src/base/ftgloadr.c: This new file. 1.9323 + 1.9324 +2002-02-22 Werner Lemberg <wl@gnu.org> 1.9325 + 1.9326 + * include/freetype/internal/ftdebug.h (FT_Trace): Remove comma in 1.9327 + enum to avoid compiler warnings. 1.9328 + 1.9329 +2002-02-21 David Turner <david@freetype.org> 1.9330 + 1.9331 + Modified the debug sub-system initialization. Trace levels can now 1.9332 + be specified within the `FT2_DEBUG' environment variable. See the 1.9333 + comments within `ftdebug.c' for more details. 1.9334 + 1.9335 + * src/base/ftdebug.c: (FT_SetTraceLevel): Removed. 1.9336 + (ft_debug_init): New function. 1.9337 + (ft_debug_dummy): Removed. 1.9338 + Updated to changes in ftdebug.h 1.9339 + 1.9340 + * include/freetype/internal/ftdebug.h: Always define 1.9341 + FT_DEBUG_LEVEL_ERROR if FT_DEBUG_LEVEL_TRACE is defined. 1.9342 + (FT_Assert): Renamed to ... 1.9343 + (FT_ASSERT): This. 1.9344 + Some stuff from ftdebug.h has been moved to ... 1.9345 + 1.9346 + * include/freetype/internal/fttrace.h: New file, to define the trace 1.9347 + levels used for debugging. It is used both to define enums and 1.9348 + toggle names for FT2_DEBUG. 1.9349 + 1.9350 + * include/freetype/internal/internal.h: Updated. 1.9351 + 1.9352 + * src/base/ftobjs.c, src/base/ftstream.c: Updated. 1.9353 + 1.9354 + * include/freetype/internal/ftextend.h, src/base/ftextend.c: 1.9355 + Removed. Both files are now completely obsolete. 1.9356 + * src/base/Jamfile, src/base/rules.mk: Updated. 1.9357 + 1.9358 + * include/freetype/fterrors.h: Adding `#undef FT_ERR_CAT' and 1.9359 + `#undef FT_ERR_XCAT' to avoid warnings with certain compilers (like 1.9360 + LCC). 1.9361 + 1.9362 + * src/pshinter/pshalgo2.c (print_zone): Renamed to ... 1.9363 + (psh2_print_zone): This to avoid errors during compilation of debug 1.9364 + library. 1.9365 + 1.9366 + * src/smooth/ftgrays.c (FT_COMPONENT): Change definition to as 1.9367 + `trace_smooth'. 1.9368 + 1.9369 +2002-02-20 David Turner <david@freetype.org> 1.9370 + 1.9371 + * README: Adding `devel@freetype.org' address for bug reports. 1.9372 + 1.9373 +2002-02-20 Werner Lemberg <wl@gnu.org> 1.9374 + 1.9375 + * builds/unix/install.mk (check): New dummy target. 1.9376 + (.PHONY): Add it. 1.9377 + 1.9378 +2002-02-19 Werner Lemberg <wl@gnu.org> 1.9379 + 1.9380 + * builds/freetype.mk (FT_CFLAGS): Use $(INCLUDE_FLAGS) first. 1.9381 + 1.9382 + * src/cache/ftccache.c (ftc_cache_resize): Mark `error' as unused 1.9383 + to avoid compiler warning. 1.9384 + * src/cff/cffload.c (CFF_Get_String): Ditto. 1.9385 + * src/cff/cffobjs.c (CFF_StrCopy): Ditto. 1.9386 + * src/psaux/psobjs.c (PS_Table_Done): Ditto. 1.9387 + * src/pcf/pcfread.c (pcf_seek_to_table_type): Ditto. 1.9388 + * src/sfnt/sfdriver.c (get_sfnt_postscript_name): Ditto. 1.9389 + (pcf_get_bitmaps): The same for `sizebitmaps'. 1.9390 + * src/psaux/t1decode.c (T1_Decode_Parse_Charstrings): The same for 1.9391 + `orig_y'. 1.9392 + (t1operator_seac): Comment out more dead code. 1.9393 + * src/pshinter/pshalgo2.c (ps2_hints_apply): Add `DEBUG_HINTER' 1.9394 + conditional. 1.9395 + * src/truetype/ttgload.c (TT_Process_Simple_Glyph, 1.9396 + load_truetype_glyph): Add `TT_CONFIG_OPTION_BYTECODE_INTERPRETER' 1.9397 + conditional. 1.9398 + 1.9399 +2002-02-18 Werner Lemberg <wl@gnu.org> 1.9400 + 1.9401 + * src/autohint/ahglyph.c (ah_outline_link_segments): Remove unused 1.9402 + variables. 1.9403 + * src/autohint/ahhint.c (ah_align_serif_edge): Use FT_UNUSED instead 1.9404 + of UNUSED. 1.9405 + * src/autohint/ahmodule.c (ft_autohinter_reset): Ditto. 1.9406 + * src/pshinter/pshrec.c (ps_mask_table_merge): Fix typo in variable 1.9407 + swapping code. 1.9408 + * src/pshinter/pshglob.h (PSH_Blue_Align): Add PSH_BLUE_ALIGN_NONE. 1.9409 + * src/pshinter/pshglob.c (psh_blues_snap_stem): Use it. 1.9410 + * src/pshinter/pshalgo1.c (psh1_hint_table_optimize): Ditto. 1.9411 + * src/pshinter/pshalgo2.c (psh2_hint_align): Ditto. 1.9412 + * include/freetype/internal/ftobjs.h (UNUSED): Removed. 1.9413 + 1.9414 +2002-02-10 Roberto Alameda <ojancano@geekmail.de> 1.9415 + 1.9416 + Add support for ISOLatin1 PS encoding. 1.9417 + 1.9418 + * include/freetype/freetype.h (ft_encoding_latin_1): New tag 1.9419 + (`lat1'). 1.9420 + * include/freetype/internal/t1types.h (T1_Encoding_Type): Add 1.9421 + `t1_encoding_isolatin1'. 1.9422 + * src/type1/t1driver.c (Get_Char_Index, Get_Next_Char): Handle 1.9423 + ft_encoding_latin_1. 1.9424 + * src/type1/t1load.c (parse_encoding): Handle `ISOLatin1Encoding'. 1.9425 + * src/type1/t1objs.c (T1_Face_Init): Handle `t1_encoding_isolatin1'. 1.9426 + 1.9427 +---------------------------------------------------------------------------- 1.9428 + 1.9429 +Copyright 2002, 2003, 2004, 2005, 2007, 2008 by 1.9430 +David Turner, Robert Wilhelm, and Werner Lemberg. 1.9431 + 1.9432 +This file is part of the FreeType project, and may only be used, modified, 1.9433 +and distributed under the terms of the FreeType project license, 1.9434 +LICENSE.TXT. By continuing to use, modify, or distribute this file you 1.9435 +indicate that you have read the license and understand and accept it 1.9436 +fully. 1.9437 + 1.9438 + 1.9439 +Local Variables: 1.9440 +version-control: never 1.9441 +coding: utf-8 1.9442 +End: