David Turner | 5b5f382 | 2005-12-14 16:37:15 +0000 | [diff] [blame] | 1 | 2005-12-13 David Turner <david@freetype.org> |
| 2 | |
| 3 | * src/autofit/aflatin.c, src/autofit/afhints.c: changed the |
| 4 | implementation of the LIGHT hinting mode to completely disable |
| 5 | horizontal hinting. This is an experimental effort to integrate |
| 6 | David Chester's latest patch without fucking the other hinting |
| 7 | modes as well. |
| 8 | |
| 9 | Note that this doesn't force auto-hinting for all fonts however. |
| 10 | |
David Turner | 8def3c8 | 2005-12-14 16:38:31 +0000 | [diff] [blame] | 11 | * Jamfile: small fix to ensure that ftexport.sym is placed in the |
| 12 | same location than other generated objects (i.e. within the 'objs' |
| 13 | directory of the current dir) |
| 14 | |
David Turner | 89a2a4b | 2005-12-14 20:38:15 +0000 | [diff] [blame^] | 15 | * src/sfnt/ |
| 16 | |
Werner Lemberg | 364db08 | 2005-12-07 20:34:11 +0000 | [diff] [blame] | 17 | 2005-12-07 Werner Lemberg <wl@gnu.org> |
| 18 | |
| 19 | * src/sfnt/sfobjc.c (sfnt_init_face): Move tag check to... |
| 20 | * src/sfnt/ttload.c (sfnt_init): Here, before handling TTCs. |
| 21 | |
Wu, Chia-I (吳佳一) | a3690cd | 2005-12-06 08:24:01 +0000 | [diff] [blame] | 22 | 2005-12-06 Chia-I Wu <b90201047@ntu.edu.tw> |
| 23 | |
| 24 | * src/truetype/ttobjs.c (tt_size_init): size->ttmetrics.valid is |
| 25 | initialized twice. |
| 26 | size->strike_index is not initialized. |
| 27 | |
Werner Lemberg | 2a0903a | 2005-12-03 08:13:43 +0000 | [diff] [blame] | 28 | 2005-12-02 Taek Kwan(TK) Lee <taeklee@gmail.com> |
| 29 | |
Werner Lemberg | 3b8db66 | 2005-12-06 10:47:44 +0000 | [diff] [blame] | 30 | * src/type42/t42objs.c (T42_Face_Init): Replace call to |
Werner Lemberg | 2a0903a | 2005-12-03 08:13:43 +0000 | [diff] [blame] | 31 | FT_New_Memory_Face with call to FT_Open_Face to pass `params'. |
| 32 | |
Werner Lemberg | b797fdb | 2005-11-30 08:48:32 +0000 | [diff] [blame] | 33 | 2005-11-30 Werner Lemberg <wl@gnu.org> |
| 34 | |
| 35 | * docs/CHANGES: Document ftdump's `-v' option. |
Werner Lemberg | b5d88e8 | 2005-11-30 08:55:51 +0000 | [diff] [blame] | 36 | Document latest charmap code changes. |
Werner Lemberg | b797fdb | 2005-11-30 08:48:32 +0000 | [diff] [blame] | 37 | |
Werner Lemberg | 44e47d5 | 2005-11-30 18:47:49 +0000 | [diff] [blame] | 38 | * src/sfnt/ttcmap.c, src/sfnt/ttcmap.h: |
| 39 | s/TT_CMAP_FLAG_OVERLAPPED/TT_CMAP_FLAG_OVERLAPPING/. |
| 40 | |
Wu, Chia-I (吳佳一) | a28bc4c | 2005-11-30 02:39:10 +0000 | [diff] [blame] | 41 | 2005-11-30 Chia-I Wu <b90201047@ntu.edu.tw> |
| 42 | |
| 43 | * src/sfnt/ttcmap.c (tt_cmap4_char_map_binary, |
| 44 | tt_cmap12_char_map_binary): Fix compiler warnings. |
| 45 | |
Wu, Chia-I (吳佳一) | 569ec4e | 2005-11-29 11:27:51 +0000 | [diff] [blame] | 46 | 2005-11-29 Chia-I Wu <b90201047@ntu.edu.tw> |
| 47 | |
Werner Lemberg | 44e47d5 | 2005-11-30 18:47:49 +0000 | [diff] [blame] | 48 | Major update to distinguish between unsorted and overlapping |
| 49 | segments for cmap format 4. For overlapping but sorted segments, |
| 50 | which is previously considered unsorted, we still use binary search. |
Wu, Chia-I (吳佳一) | a091134 | 2005-11-29 11:32:53 +0000 | [diff] [blame] | 51 | |
David Turner | 5b5f382 | 2005-12-14 16:37:15 +0000 | [diff] [blame] | 52 | * src/sfnt/ttcmap.h (TT_CMapRec_): Replace `unsorted' by `flags'. |
Wu, Chia-I (吳佳一) | a091134 | 2005-11-29 11:32:53 +0000 | [diff] [blame] | 53 | (TT_CMAP_FLAG_UNSORTED, TT_CMAP_FLAG_OVERLAPPED): New macros. |
| 54 | |
| 55 | * src/sfnt/ttcmap.c (OPT_CMAP4): Removed as it is always defined. |
David Turner | 5b5f382 | 2005-12-14 16:37:15 +0000 | [diff] [blame] | 56 | (TT_CMap4Rec_): Remove `old_charcode' and `table_length'. |
Wu, Chia-I (吳佳一) | a091134 | 2005-11-29 11:32:53 +0000 | [diff] [blame] | 57 | (tt_cmap4_reset): Removed. |
| 58 | (tt_cmap4_init): Updated accordingly. |
| 59 | (tt_cmap4_next): Updated accordingly. |
Werner Lemberg | 44e47d5 | 2005-11-30 18:47:49 +0000 | [diff] [blame] | 60 | Take care of overlapping segments. |
Wu, Chia-I (吳佳一) | a091134 | 2005-11-29 11:32:53 +0000 | [diff] [blame] | 61 | (tt_cmap4_validate): Make sure the subtable is large enough. |
| 62 | Do not check glyph_ids because some fonts set the length wrongly. |
Werner Lemberg | 44e47d5 | 2005-11-30 18:47:49 +0000 | [diff] [blame] | 63 | Also, when all segments have offset 0, glyph_ids is always invalid. |
| 64 | It does not cause any problem so far only because the check misses |
Wu, Chia-I (吳佳一) | a091134 | 2005-11-29 11:32:53 +0000 | [diff] [blame] | 65 | equality. |
Werner Lemberg | 44e47d5 | 2005-11-30 18:47:49 +0000 | [diff] [blame] | 66 | Distinguish between unsorted and overlapping segments. |
| 67 | (tt_cmap4_char_map_linear, tt_cmap4_char_map_binary): New functions |
| 68 | to do `charcode => glyph index' by linear/binary search. |
Wu, Chia-I (吳佳一) | a091134 | 2005-11-29 11:32:53 +0000 | [diff] [blame] | 69 | (tt_cmap4_char_index, tt_cmap4_char_next): Use |
| 70 | tt_cmap4_char_map_linear and tt_cmap4_char_map_binary. |
| 71 | (tt_face_build_cmaps): Treat the return value of validator as flags |
| 72 | for cmap. |
| 73 | |
| 74 | 2005-11-29 Chia-I Wu <b90201047@ntu.edu.tw> |
| 75 | |
Werner Lemberg | 44e47d5 | 2005-11-30 18:47:49 +0000 | [diff] [blame] | 76 | * src/sfnt/ttcmap.c (TT_CMap12Rec_, tt_cmap12_init, tt_cmap12_next): |
| 77 | New structures and functions for fast `next char'. |
| 78 | (tt_cmap12_char_map_binary): New function to do `charcode => glyph |
| 79 | index' by binary search. |
Wu, Chia-I (吳佳一) | 569ec4e | 2005-11-29 11:27:51 +0000 | [diff] [blame] | 80 | (tt_cmap12_char_index, tt_cmap12_char_next): Use |
| 81 | tt_cmap12_char_map_binary. |
| 82 | (tt_face_build_cmaps): Check table and offset correctly (equality is |
| 83 | missing). |
| 84 | |
Detlef Würkner | df1598e | 2005-11-25 08:04:09 +0000 | [diff] [blame] | 85 | 2005-11-15 Detlef Würkner <TetiSoft@apg.lahn.de> |
| 86 | |
| 87 | * builds/amiga/smakefile: Adjusted the compiler options |
| 88 | to the current sources, now really builds the gxvalid, gzip |
| 89 | and psnames modules. |
| 90 | |
| 91 | * builds/amiga/src/base/ftsystem.c: The assumed Seek() position |
| 92 | in the file cache was off by one byte which could cause false |
| 93 | errors in font files. |
| 94 | |
Suzuki, Toshiya (鈴木俊哉) | 6b1c597 | 2005-11-24 05:16:57 +0000 | [diff] [blame] | 95 | 2005-11-24 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp> |
| 96 | |
| 97 | * builds/mac/FreeType.m68k_far.make.txt, |
| 98 | builds/mac/FreeType.m68k_cfm.make.txt, |
| 99 | builds/mac/FreeType.ppc_classic.make.txt, |
| 100 | builds/mac/FreeType.ppc_carbon.make.txt: |
| 101 | Updated for MPW to build all available modules. |
| 102 | |
Werner Lemberg | 67ba211 | 2005-11-21 17:32:03 +0000 | [diff] [blame] | 103 | 2005-11-21 Håvard Wall <haavardw@ifi.uio.no> |
| 104 | |
| 105 | * src/bdf/bdfdrivr.c (bdf_interpret_style, BDF_Face_Done): Fix small |
| 106 | memory leak. |
| 107 | |
Werner Lemberg | 840232a | 2005-11-21 12:36:42 +0000 | [diff] [blame] | 108 | 2005-11-21 Werner Lemberg <wl@gnu.org> |
| 109 | |
| 110 | * src/sfnt/ttload.c (sfnt_init): Add tracing message. |
| 111 | |
Wu, Chia-I (吳佳一) | d81947e | 2005-11-21 03:04:03 +0000 | [diff] [blame] | 112 | 2005-11-21 Chia-I Wu <b90201047@ntu.edu.tw> |
| 113 | |
Werner Lemberg | 840232a | 2005-11-21 12:36:42 +0000 | [diff] [blame] | 114 | * src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Image_offset was |
| 115 | added twice to image_start when image_format is 2 or 5. |
Wu, Chia-I (吳佳一) | 275be9b | 2005-11-21 03:05:34 +0000 | [diff] [blame] | 116 | |
| 117 | 2005-11-21 Chia-I Wu <b90201047@ntu.edu.tw> |
| 118 | |
Wu, Chia-I (吳佳一) | d81947e | 2005-11-21 03:04:03 +0000 | [diff] [blame] | 119 | * src/sfnt/sfobjs.c (sfnt_init_face): Check that format_tag is known |
| 120 | before loading the table directory. |
| 121 | |
| 122 | * src/sfnt/ttload.c (tt_face_load_sfnt_header, |
| 123 | tt_face_load_directory): Delay sfnt_dir_check from |
| 124 | tt_face_load_sfnt_header to tt_face_load_directory. |
| 125 | |
Wu, Chia-I (吳佳一) | 6f1eca0 | 2005-11-20 08:24:24 +0000 | [diff] [blame] | 126 | 2005-11-20 Chia-I Wu <b90201047@ntu.edu.tw> |
| 127 | |
| 128 | * src/sfnt/ttload.c (sfnt_dir_check): Clean up and return correct |
| 129 | error code. |
| 130 | (sfnt_init): New function to fill in face->ttc_header. A non-TTC font |
| 131 | is synthesized into a TTC font with one offset table. |
| 132 | (tt_face_load_sfnt_header): Use sfnt_init. |
| 133 | Fix an invalid access when the font is TTC and face_index is -1. |
| 134 | |
Werner Lemberg | 1a293d6 | 2005-11-18 08:23:06 +0000 | [diff] [blame] | 135 | 2005-11-18 Werner Lemberg <wl@gnu.org> |
| 136 | |
| 137 | * src/sfnt/ttload.c (tt_face_load_metrics): Ignore excess number |
| 138 | of metrics instead of aborting. Patch suggested by Derek Noonburg. |
| 139 | |
Werner Lemberg | 6c99045 | 2005-11-18 21:10:59 +0000 | [diff] [blame] | 140 | * src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c |
| 141 | (cid_slot_load_glyph), src/type1/t1gload.c (T1_Load_Glyph): Scale |
| 142 | the glyph properly if no hinter is available. |
| 143 | |
| 144 | * docs/CHANGES: Mention scaling bug. |
| 145 | |
Suzuki, Toshiya (鈴木俊哉) | 8d81d41 | 2005-11-18 07:47:06 +0000 | [diff] [blame] | 146 | 2005-11-18 susuzki toshiya <mpsuzuki@hiroshima-u.ac.jp> |
| 147 | |
| 148 | * include/freetype/ftgxval.h, src/base/ftgxval.c |
| 149 | (FT_TrueTypeGX_Free, FT_ClassicKern_Free): New functions to free |
| 150 | buffers allocated by gxvalid module. |
| 151 | * include/freetype/ftotval.h, src/base/ftotval.c |
| 152 | (FT_OpenType_Free): New function to free buffer allocated by |
| 153 | otvalid module. |
| 154 | |
Wu, Chia-I (吳佳一) | cb18238 | 2005-11-18 04:29:31 +0000 | [diff] [blame] | 155 | 2005-11-18 Chia-I Wu <b90201047@ntu.edu.tw> |
| 156 | |
| 157 | * builds/unix/ftsystem.c (FT_Stream_Open, FT_New_Memory, |
| 158 | FT_Done_Memory), builds/vms/ftsystem.c (FT_Stream_Open, FT_New_Memory, |
| 159 | FT_Done_Memory), builds/win32/ftdebug.c (FT_Message, FT_Panic): |
| 160 | s/FT_EXPORT/FT_BASE/. |
| 161 | |
Detlef Würkner | 4859ac4 | 2005-11-17 14:21:07 +0000 | [diff] [blame] | 162 | 2005-11-17 Detlef Würkner <TetiSoft@apg.lahn.de> |
| 163 | |
Detlef Würkner | 0acfc1f | 2005-11-17 16:54:54 +0000 | [diff] [blame] | 164 | * builds/amiga/src/base/ftdebug.c (FT_Trace_Get_Count, |
| 165 | FT_Trace_Get_Name, FT_Message, FT_Panic), |
| 166 | builds/amiga/src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory, |
| 167 | FT_Stream_Open): s/FT_EXPORT/FT_BASE/. |
| 168 | |
| 169 | 2005-11-17 Detlef Würkner <TetiSoft@apg.lahn.de> |
| 170 | |
Werner Lemberg | 1a293d6 | 2005-11-18 08:23:06 +0000 | [diff] [blame] | 171 | * builds/amiga/makefile, builds/amiga/makefile.os4, |
Detlef Würkner | df1598e | 2005-11-25 08:04:09 +0000 | [diff] [blame] | 172 | builds/amiga/smakefile, |
Detlef Würkner | 4859ac4 | 2005-11-17 14:21:07 +0000 | [diff] [blame] | 173 | builds/amiga/include/freetype/config/ftmodule.h: Updated the Amiga |
Werner Lemberg | 1a293d6 | 2005-11-18 08:23:06 +0000 | [diff] [blame] | 174 | build files (added support for the gxvalid module). |
Detlef Würkner | 4859ac4 | 2005-11-17 14:21:07 +0000 | [diff] [blame] | 175 | |
Werner Lemberg | cfc0cf2 | 2005-11-17 08:12:00 +0000 | [diff] [blame] | 176 | 2005-11-17 Werner Lemberg <wl@gnu.org> |
| 177 | |
| 178 | Add vertical metrics support to OpenType CFF outlines. Based on a |
Werner Lemberg | 1a293d6 | 2005-11-18 08:23:06 +0000 | [diff] [blame] | 179 | patch from Mike Moening <MikeM@RetekSolutions.com>. |
Werner Lemberg | cfc0cf2 | 2005-11-17 08:12:00 +0000 | [diff] [blame] | 180 | |
| 181 | * src/cff/cffgload.c (cff_face_get_vertical_metrics): New function. |
| 182 | (cff_slot_load): Use cff_face_get_vertical_metrics. |
| 183 | |
| 184 | * docs/CHANGES: Updated. |
| 185 | |
Wu, Chia-I (吳佳一) | 35bfc0f | 2005-11-17 01:53:07 +0000 | [diff] [blame] | 186 | 2005-11-17 Chia-I Wu <b90201047@ntu.edu.tw> |
| 187 | |
| 188 | * src/base/ftcalc.c (FT_MulTo64): Commented out. |
| 189 | |
Werner Lemberg | cfc0cf2 | 2005-11-17 08:12:00 +0000 | [diff] [blame] | 190 | * include/freetype/internal/ftcalc.h (FT_SqrtFixed), |
| 191 | src/base/ftcalc.c (FT_SqrtFixed), |
| 192 | include/freetype/internal/ftdebug.h (FT_Trace_Get_Count, |
| 193 | FT_Trace_Get_Name, FT_Message, FT_Panic), src/base/ftdebug.c |
Wu, Chia-I (吳佳一) | 35bfc0f | 2005-11-17 01:53:07 +0000 | [diff] [blame] | 194 | (FT_Trace_Get_Count, FT_Trace_Get_Name, FT_Message, FT_Panic), |
Werner Lemberg | cfc0cf2 | 2005-11-17 08:12:00 +0000 | [diff] [blame] | 195 | include/freetype/internal/ftobjs.h (FT_New_Memory, FT_Done_Memory), |
| 196 | include/freetype/internal/ftstream.h (FT_Stream_Open), |
| 197 | src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory, FT_Stream_Open): |
| 198 | s/FT_EXPORT/FT_BASE/. |
Wu, Chia-I (吳佳一) | 35bfc0f | 2005-11-17 01:53:07 +0000 | [diff] [blame] | 199 | |
Werner Lemberg | cfc0cf2 | 2005-11-17 08:12:00 +0000 | [diff] [blame] | 200 | * builds/exports.mk: Manually add TT_New_Context to EXPORTS_LIST |
| 201 | too. |
Wu, Chia-I (吳佳一) | 35bfc0f | 2005-11-17 01:53:07 +0000 | [diff] [blame] | 202 | |
David Turner | f7cc181 | 2005-11-15 17:30:56 +0000 | [diff] [blame] | 203 | 2005-11-15 David Turner <david@freetype.org> |
| 204 | |
Werner Lemberg | 674ba91 | 2005-11-16 18:09:27 +0000 | [diff] [blame] | 205 | * src/base/fttrigon.c (ft_trig_prenorm): Fix a bug that created |
David Turner | f7cc181 | 2005-11-15 17:30:56 +0000 | [diff] [blame] | 206 | invalid computations, resulting in very weird bugs in TrueType |
Werner Lemberg | 674ba91 | 2005-11-16 18:09:27 +0000 | [diff] [blame] | 207 | bytecode hinted fonts. |
David Turner | f7cc181 | 2005-11-15 17:30:56 +0000 | [diff] [blame] | 208 | |
Werner Lemberg | 674ba91 | 2005-11-16 18:09:27 +0000 | [diff] [blame] | 209 | * src/truetype/ttinterp.c (FT_UNUSED_EXEC): Don't perform a |
| 210 | structure copy each time. |
David Turner | f7cc181 | 2005-11-15 17:30:56 +0000 | [diff] [blame] | 211 | |
Werner Lemberg | d829ff7 | 2005-11-12 17:07:11 +0000 | [diff] [blame] | 212 | 2005-11-11 Werner Lemberg <wl@gnu.org> |
| 213 | |
| 214 | * src/cache/ftccache.c (FTC_Cache_Clear), src/cache/ftcmanag.c |
| 215 | (FTC_Manager_Check): Remove FT_EXPORT_DEF tag. |
| 216 | |
David Turner | f7cc181 | 2005-11-15 17:30:56 +0000 | [diff] [blame] | 217 | * src/base/ftcalc.c (FT_Add64): Remove FT_EXPORT_DEF tag. |
Werner Lemberg | d829ff7 | 2005-11-12 17:07:11 +0000 | [diff] [blame] | 218 | (FT_Div64by32, FT_Sqrt32): Commented out. Unused. |
| 219 | |
| 220 | * include/freetype/internal/ftcalc.h (SQRT_32): Removed. Unused. |
| 221 | (FT_Sqrt32): Commented out. Unused. |
| 222 | |
| 223 | * include/freetype/cache/ftccache.h: |
| 224 | s/ftc_node_destroy/FTC_Node_Destroy/. |
| 225 | |
| 226 | * src/cache/ftccback.h (ftc_node_destroy): New declaration. |
| 227 | |
| 228 | * src/cache/ftccache.c (ftc_node_destroy): Use FT_LOCAL_DEF tag. |
| 229 | (FTC_Node_Destroy): New exported wrapper function for |
| 230 | ftc_node_destroy. |
| 231 | |
| 232 | * src/cache/ftcmanag.c: Include ftccback.c. |
| 233 | |
Werner Lemberg | 4309edc | 2005-11-11 15:49:14 +0000 | [diff] [blame] | 234 | 2005-11-10 Werner Lemberg <wl@gnu.org> |
| 235 | |
| 236 | * src/autofit/afangles.c, src/autofit/aftypes.h (af_angle_diff): |
| 237 | Comment out. Unused. |
| 238 | |
Werner Lemberg | f2c5330 | 2005-11-11 16:20:59 +0000 | [diff] [blame] | 239 | * builds/exports.mk ($(EXPORTS_LIST)): Add TT_RunIns. |
| 240 | |
Werner Lemberg | 4309edc | 2005-11-11 15:49:14 +0000 | [diff] [blame] | 241 | 2005-11-10 Christian Biesinger <cbiesinger@web.de> |
| 242 | |
| 243 | * builds/beos/beos.mk: Call beos-def.mk before anything else to |
| 244 | define the separator. |
| 245 | |
| 246 | * builds/unix/unix-cc.in (LINK_LIBRARY): Add `-no-undefined' flag. |
| 247 | |
Werner Lemberg | ea4c3dc | 2005-11-08 09:10:16 +0000 | [diff] [blame] | 248 | 2005-11-07 Werner Lemberg <wl@gnu.org> |
| 249 | |
| 250 | * src/type1/t1afm.c (T1_Read_PFM): Zero offset means `no kerning |
| 251 | table available'. From Sergey Tolstov <stolstov@esri.com>. |
| 252 | |
Werner Lemberg | b2d0253 | 2005-11-04 06:58:49 +0000 | [diff] [blame] | 253 | 2005-11-03 Ville Syrjälä <syrjala@sci.fi> |
| 254 | |
| 255 | * src/base/ftobjs.c (FT_Open_Face): Avoid possible memory leak. |
| 256 | |
| 257 | 2005-11-02 Werner Lemberg <wl@gnu.org> |
| 258 | |
| 259 | Make compiling instructions in docs/CUSTOMIZE work again. |
| 260 | |
| 261 | * builds/unix/unix-cc.in (CPPFLAGS): New variable. |
| 262 | (CFLAGS): Don't include @CPPFLAGS@. |
| 263 | * builds/freetype.mk (FT_CFLAGS): Add CPPFLAGS. |
| 264 | |
David Turner | dab2454 | 2005-11-02 09:24:00 +0000 | [diff] [blame] | 265 | 2005-10-28 David Turner <david@freetype.org> |
| 266 | |
Werner Lemberg | cee37a3 | 2005-11-12 07:34:40 +0000 | [diff] [blame] | 267 | Update build system to support the generation of a list of exported |
| 268 | symbols or Windows .DEF files by parsing the public headers with the |
Werner Lemberg | b2d0253 | 2005-11-04 06:58:49 +0000 | [diff] [blame] | 269 | `apinames' tool located in src/tools/apinames.c. |
David Turner | dab2454 | 2005-11-02 09:24:00 +0000 | [diff] [blame] | 270 | |
Werner Lemberg | b2d0253 | 2005-11-04 06:58:49 +0000 | [diff] [blame] | 271 | Only tested on Unix at the moment. On Windows, the .DEF file is |
| 272 | generated but isn't used yet to generate a DLL. |
David Turner | dab2454 | 2005-11-02 09:24:00 +0000 | [diff] [blame] | 273 | |
Werner Lemberg | cee37a3 | 2005-11-12 07:34:40 +0000 | [diff] [blame] | 274 | * builds/exports.mk: New file. |
David Turner | dab2454 | 2005-11-02 09:24:00 +0000 | [diff] [blame] | 275 | |
Werner Lemberg | cee37a3 | 2005-11-12 07:34:40 +0000 | [diff] [blame] | 276 | * builds/freetype.mk: Include exports.mk. |
| 277 | (dll): New target. |
| 278 | (clean_project_dos): Fix rule. |
David Turner | dab2454 | 2005-11-02 09:24:00 +0000 | [diff] [blame] | 279 | |
Werner Lemberg | cee37a3 | 2005-11-12 07:34:40 +0000 | [diff] [blame] | 280 | * builds/compiler/visualc.mk (TE), builds/dos/dos-def.mk (E), |
| 281 | builds/os2/os2-def.mk (E), builds/win32/win32-def.mk (E): New |
| 282 | variables for controlling executable extensions. |
David Turner | dab2454 | 2005-11-02 09:24:00 +0000 | [diff] [blame] | 283 | |
Werner Lemberg | cee37a3 | 2005-11-12 07:34:40 +0000 | [diff] [blame] | 284 | * builds/unix/unix-cc.in (EXPORTS_LIST, CCexe), |
| 285 | builds/win32/w32-bcc.mk, builds/win32/w32-gcc.mk, |
| 286 | builds/win32/w32-icc.mk, builds/win32/w32-icc.mk, |
| 287 | builds/win32/w32-mingw32.mk, builds/win32/w32-vcc, |
| 288 | builds/win32/w32-wat.mk (EXPORTS_LIST, EXPORT_OPTIONS, |
| 289 | APINAMES_OPTIONS): New targets for controlling the `apinames' tool. |
| 290 | |
| 291 | * Jamfile (GenExportSymbols): Updated. |
| 292 | |
| 293 | |
| 294 | * src/pfr/pfrtypes.h, src/pfr/pfrload.c, src/pfr/pfrobjs.c |
| 295 | [!FT_OPTIMIZE_MEMORY]: Fold memory optimization code into |
| 296 | FT_OPTIMIZE_MEMORY chunks for better maintainability and simplicity. |
| 297 | |
| 298 | |
| 299 | * src/base/fttrigon.c (ft_trig_prenorm), src/base/ftcalc.c |
| 300 | (FT_MulFix): Performance optimizations. |
| 301 | |
| 302 | |
| 303 | * include/freetype/internal/ftgloadr.h (FT_GLYPHLOADER_CHECK_P, |
| 304 | FT_GLYPHLOADER_CHECK_C, FT_GLYPHLOADER_CHECK_POINTS): New macros for |
| 305 | checking points and contours. Update callers to use |
| 306 | FT_GLYPHLOADER_CHECK_POINTS instead of FT_GlyphLoader_CheckPoints |
| 307 | at profile-detected hot-spots. |
| 308 | |
| 309 | * src/base/ftgloadr.c (FT_GlyphLoader_CheckPoints): Set `adjust' |
| 310 | to 0 to not call `AdjustPoints' every time. |
| 311 | |
David Turner | dab2454 | 2005-11-02 09:24:00 +0000 | [diff] [blame] | 312 | |
Werner Lemberg | b2d0253 | 2005-11-04 06:58:49 +0000 | [diff] [blame] | 313 | * src/autofit/aftypes.h (AF_ANGLE_DIFF): New macro to inline |
| 314 | FT_Angle_Diff. |
David Turner | dab2454 | 2005-11-02 09:24:00 +0000 | [diff] [blame] | 315 | |
Werner Lemberg | cee37a3 | 2005-11-12 07:34:40 +0000 | [diff] [blame] | 316 | * src/autofit/afhints.c (af_direction_compute): Re-implement. |
| 317 | (af_glyph_hints_compute_inflections, af_glyph_hints_reload): Use |
Werner Lemberg | b2d0253 | 2005-11-04 06:58:49 +0000 | [diff] [blame] | 318 | AF_ANGLE_DIFF to speed up the detection of inflexions. |
David Turner | dab2454 | 2005-11-02 09:24:00 +0000 | [diff] [blame] | 319 | |
Werner Lemberg | cee37a3 | 2005-11-12 07:34:40 +0000 | [diff] [blame] | 320 | |
| 321 | * src/tools/apinames.c: Include <string.h>. |
| 322 | (OutputFormat): New enumeration. |
| 323 | (names_dump): Add two parameters to control output format and DLL |
| 324 | name. |
| 325 | (names_dump_windef): Removed. Code folded into `names_dump'. |
| 326 | (read_header_file): Use isalnum, not isalpha. Otherwise function |
| 327 | names with digits aren't read correctly. |
| 328 | (usage): Updated. |
| 329 | (main): New option `-o' to control output file name. |
| 330 | New option `-d' to indicate DLL file name. |
| 331 | Extend `-w' flag to handle Borland and Watcom compilers and linkers. |
| 332 | |
Suzuki, Toshiya (鈴木俊哉) | 4511576 | 2005-10-28 15:39:58 +0000 | [diff] [blame] | 333 | 2005-10-28 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp> |
| 334 | |
Suzuki, Toshiya (鈴木俊哉) | 69d4517 | 2005-10-28 16:03:06 +0000 | [diff] [blame] | 335 | * builds/mac/ftlib.prj, builds/mac/freetype.mak: Removed. |
| 336 | ftlib.prj is unmaintained and incompatible with current tree. |
| 337 | freetype.mak is unrecoverably broken. |
| 338 | |
| 339 | * builds/mac/ftlib.prj.xml: Added. |
| 340 | generated by Metrowerks CodeWarrior 9.0. |
| 341 | |
| 342 | * builds/mac/FreeType.m68k_far.make.txt, |
| 343 | builds/mac/FreeType.m68k_cfm.make.txt, |
| 344 | builds/mac/FreeType.ppc_classic.make.txt, |
| 345 | builds/mac/FreeType.ppc_carbon.make.txt: Added. |
| 346 | skelton files of MPW makefiles. |
| 347 | |
| 348 | * builds/mac/ascii2mpw.py: Added. |
| 349 | Python script to make MPW makefile from skelton. |
| 350 | |
| 351 | * builds/mac/README: Updated. |
| 352 | Almost rewritten to use new files. |
| 353 | |
| 354 | 2005-10-28 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp> |
| 355 | |
Suzuki, Toshiya (鈴木俊哉) | 4511576 | 2005-10-28 15:39:58 +0000 | [diff] [blame] | 356 | * src/base/ftmac.c: fix invalid casts from NULL to integer typed |
| 357 | variables. Advised by David Turner, Masatake YAMATO, Sean McBride |
| 358 | and George Williams. |
| 359 | |
Werner Lemberg | 4b5661c | 2005-10-27 21:28:35 +0000 | [diff] [blame] | 360 | 2005-10-27 Werner Lemberg <wl@gnu.org> |
| 361 | |
| 362 | * include/freetype/ftsysmem.h, include/freetype/ftsysio.h: Removed. |
| 363 | Obsolete. |
| 364 | |
Werner Lemberg | 43b057b | 2005-10-26 18:37:40 +0000 | [diff] [blame] | 365 | 2005-10-25 Werner Lemberg <wl@gnu.org> |
| 366 | |
| 367 | * src/sfnt/sfdriver.c (sfnt_interface): Move out |
| 368 | `tt_face_get_kerning' from a #ifdef clause. Reported by Tony J. |
| 369 | Ibbs <tibs@sj.co.uk>. |
| 370 | |
Werner Lemberg | 6c0e734 | 2005-10-23 19:31:01 +0000 | [diff] [blame] | 371 | 2005-10-23 Werner Lemberg <wl@gnu.org> |
| 372 | |
| 373 | * src/base/ftdbgmem.c (ft_mem_debug_realloc): Make it compile with |
| 374 | C++. |
| 375 | |
David Turner | 398d64c | 2005-10-21 10:01:25 +0000 | [diff] [blame] | 376 | 2005-10-21 David Turner <david@freetype.org> |
| 377 | |
Werner Lemberg | 90968f7 | 2005-10-22 10:34:45 +0000 | [diff] [blame] | 378 | * src/base/ftdbgmem.c (ft_mem_table_set, ft_mem_debug_realloc): |
| 379 | Another realloc memory counting bug fix. |
David Turner | 398d64c | 2005-10-21 10:01:25 +0000 | [diff] [blame] | 380 | |
Werner Lemberg | 90968f7 | 2005-10-22 10:34:45 +0000 | [diff] [blame] | 381 | * src/tools/Jamfile: Add missing file. |
David Turner | 398d64c | 2005-10-21 10:01:25 +0000 | [diff] [blame] | 382 | |
Werner Lemberg | 90968f7 | 2005-10-22 10:34:45 +0000 | [diff] [blame] | 383 | * src/lzw/Jamfile: Fix incorrect source file reference. |
David Turner | 398d64c | 2005-10-21 10:01:25 +0000 | [diff] [blame] | 384 | |
David Turner | c1b6d08 | 2005-10-20 15:33:34 +0000 | [diff] [blame] | 385 | 2005-10-20 David Turner <david@freetype.org> |
| 386 | |
Werner Lemberg | 560d5fe | 2005-10-21 09:08:28 +0000 | [diff] [blame] | 387 | * src/base/ftdbgmem.c (ft_mem_table_set, ft_mem_table_remove, |
| 388 | ft_mem_debug_alloc, ft_mem_debug_free, ft_mem_debug_realloc): Fixes |
| 389 | to better account for memory reallocations. |
David Turner | c1b6d08 | 2005-10-20 15:33:34 +0000 | [diff] [blame] | 390 | |
Werner Lemberg | 560d5fe | 2005-10-21 09:08:28 +0000 | [diff] [blame] | 391 | * src/lzw/ftlzw2.c, src/lzw/ftzopen.h, src/lzw/ftzopen.c, |
David Turner | 398d64c | 2005-10-21 10:01:25 +0000 | [diff] [blame] | 392 | src/lzw/rules.mk: First version of LZW loader re-implementation. |
| 393 | Apparently, this saves about 330 KB of heap memory when loading |
Werner Lemberg | 560d5fe | 2005-10-21 09:08:28 +0000 | [diff] [blame] | 394 | timR24.pcf.Z. |
David Turner | c1b6d08 | 2005-10-20 15:33:34 +0000 | [diff] [blame] | 395 | |
Wu, Chia-I (吳佳一) | 7e30776 | 2005-10-20 02:13:46 +0000 | [diff] [blame] | 396 | 2005-10-20 Chia-I Wu <b90201047@ntu.edu.tw> |
| 397 | |
| 398 | * include/freetype/ftbitmap.h (FT_Bitmap_Copy, FT_Bitmap_Embolden), |
| 399 | src/base/ftbdf.c (FT_Get_BDF_Property), src/cache/ftcmru.c |
Werner Lemberg | 560d5fe | 2005-10-21 09:08:28 +0000 | [diff] [blame] | 400 | (FTC_MruList_Reset, FTC_MruList_Done, FTC_MruList_Lookup): Fix |
| 401 | FT_EXPORT/FT_EXPORT_DEF tagging. |
Wu, Chia-I (吳佳一) | 7e30776 | 2005-10-20 02:13:46 +0000 | [diff] [blame] | 402 | |
Wu, Chia-I (吳佳一) | 2293bb1 | 2005-10-19 08:07:38 +0000 | [diff] [blame] | 403 | 2005-10-19 Chia-I Wu <b90201047@ntu.edu.tw> |
Werner Lemberg | 8e6c56f | 2005-10-18 06:09:13 +0000 | [diff] [blame] | 404 | |
Werner Lemberg | 560d5fe | 2005-10-21 09:08:28 +0000 | [diff] [blame] | 405 | * src/truetype/ttgload.c (TT_Load_Glyph): Allow size->ttmetrics to |
| 406 | be invalid when FT_LOAD_NO_SCALE is set. |
Wu, Chia-I (吳佳一) | 2293bb1 | 2005-10-19 08:07:38 +0000 | [diff] [blame] | 407 | |
| 408 | 2005-10-17 David Turner <david@freetype.org> |
| 409 | |
| 410 | * src/base/ftobjs.c (FT_Open_Face): Don't call FT_New_GlyphSlot and |
| 411 | FT_New_Size if we are opening a face with face_index < 0 (which is |
| 412 | only used for testing the format). |
| 413 | |
| 414 | * src/gxvalid/gxvmort0.c (gxv_mort_subtable_type0_entry_validate): |
| 415 | Remove compiler warning. |
Werner Lemberg | 8e6c56f | 2005-10-18 06:09:13 +0000 | [diff] [blame] | 416 | |
| 417 | 2005-10-16 David Turner <david@freetype.org> |
| 418 | |
Wu, Chia-I (吳佳一) | 2293bb1 | 2005-10-19 08:07:38 +0000 | [diff] [blame] | 419 | * src/tools/apinames.c: Add new tool to extract public API function |
| 420 | names from header files. |
Werner Lemberg | 8e6c56f | 2005-10-18 06:09:13 +0000 | [diff] [blame] | 421 | |
| 422 | 2005-10-05 Werner Lemberg <wl@gnu.org> |
| 423 | |
| 424 | Add FT_FACE_FLAG_HINTER to indicate that a specific font driver has |
| 425 | a hinting engine of its own. |
| 426 | |
| 427 | * include/freetype/freetype.h (FT_FACE_FLAG_HINTER): New macro. |
| 428 | |
| 429 | * src/cff/cffobjs.c (cff_face_init), src/cid/cidobjs.c |
| 430 | (cid_face_init), src/truetype/ttobjs.c (tt_face_init) |
| 431 | [TT_CONFIG_OPTION_BYTECODE_INTERPRETER], src/type1/t1objs.c |
| 432 | (T1_Face_Init), src/type42/t42objs.c (T42_Face_Init) |
| 433 | [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Update face flags. |
| 434 | |
| 435 | * docs/CHANGES: Document it. |
| 436 | |
| 437 | 2005-09-27 Werner Lemberg <wl@gnu.org> |
| 438 | |
| 439 | * builds/unix/freetype2.m4: Add license exception so that the file |
| 440 | can be used in any other autoconf script. |
| 441 | |
| 442 | 2005-09-26 David Turner <david@freetype.org> |
| 443 | |
| 444 | * src/autofit/aflatin.c (af_latin_compute_stem_width): Fix bad |
| 445 | computation of the `vertical' flag, causing ugly things in LCD mode |
| 446 | and others. |
| 447 | |
| 448 | 2005-09-23 David Turner <david@freetype.org> |
| 449 | |
| 450 | * src/autofit/aflatin.c (af_latin_hints_init): Fix a bug that |
| 451 | prevented internal hint mode bitflags from being computed correctly. |
| 452 | |
| 453 | * src/base/Jamfile: Adding src/base/ftgxval.c. |
| 454 | |
| 455 | * src/gxvalid/gxvbsln.c, src/gxvalid/gxvcommn.c, |
| 456 | src/gxvalid/gxvfeat.c, src/gxvalid/gxvjust.c, src/gxvalid/gxvkern.c, |
| 457 | src/gxvalid/gxvlcar.c, src/gxvalid/gxvmort.c, |
| 458 | src/gxvalid/gxvmort0.c, src/gxvalid/gxvmort1.c, |
| 459 | src/gxvalid/gxvmort2.c, src/gxvalid/gxvmort4.c, |
| 460 | src/gxvalid/gxvmort5.c, src/gxvalid/gxvmorx.c, |
| 461 | src/gxvalid/gxvmorx0.c, src/gxvalid/gxvmorx1.c, |
| 462 | src/gxvalid/gxvmorx2.c, src/gxvalid/gxvmorx5.c, |
| 463 | src/gxvalid/gxvopbd.c, src/gxvalid/gxvprop.c, |
| 464 | src/truetype/ttgload.c: Remove _many_ compiler warnings when |
| 465 | compiling with Visual C++ at maximum level (/W4). |
| 466 | |
| 467 | * src/autofit/afangles.c (af_angle_atan): Replaced CORDIC-based |
| 468 | implementation with one using lookup tables. This simple thing |
| 469 | speeds up glyph loading by 18%, according to ftbench! |
| 470 | |
| 471 | * src/sfnt/sfdriver.c (sfnt_get_interface): Don't check for |
| 472 | `get_sfnt' and `load_sfnt' module interfaces. |
| 473 | |
| 474 | 2005-09-22 Werner Lemberg <wl@gnu.org> |
| 475 | |
| 476 | * docs/CHANGES: Mention SING Glyphlet support. |
| 477 | |
| 478 | 2005-09-22 David Turner <david@freetype.org> |
| 479 | |
| 480 | * src/base/Jamfile: Disable compilation of ftgxval module |
| 481 | temporarily. |
| 482 | |
| 483 | 2005-09-19 David Somers <dsomers@omz13.com> |
| 484 | |
| 485 | * freetype2/src/sfnt/ttload.c (sfnt_dir_check): Modified to allow a |
| 486 | font to have no `head' table if tables `SING' and `META' are |
| 487 | present; this is to support `SING Glyphlet'. |
| 488 | |
| 489 | `SING Glyphlet' is an extension to OpenType developed by Adobe |
| 490 | primarily to facilitate adding supplemental glyphs to an OpenType |
| 491 | font (with emphasis on, but not necessariy limited to, gaiji to a |
| 492 | CJK font). A SING Glyphlet Font is an OpenType font that contains |
| 493 | the outline(s), either in a `glyf' or `CFF' table, for a glyph; |
| 494 | `cmap', `BASE', and `GSUB' tables are present with the same format |
| 495 | and functionaliy as a regular OpenType font; there are no `name', |
| 496 | `head', `OS/2', and `post' tables; there are two new tables, `SING' |
| 497 | which contains details about the glyphlet, and `META' which contains |
| 498 | metadata. |
| 499 | |
| 500 | Further information on the SING Glyphlet format can be found at: |
| 501 | |
| 502 | http://www.adobe.com/products/indesign/sing_gaiji.html |
| 503 | |
| 504 | * freetype2/include/freetype/ttags.h (TTAG_SING, TTAG_META): New |
| 505 | macros for the OpenType tables `SING' and `META'. These two tables |
| 506 | are used in SING Glyphlet Format fonts. |
| 507 | |
| 508 | 2005-09-09 Werner Lemberg <wl@gnu.org> |
| 509 | |
| 510 | * src/sfnt/sfobjs.c (sfnt_load_face): Reactivate code to set |
| 511 | FT_FACE_FLAG_KERNING which has been commented out erroneously. |
| 512 | |
| 513 | * docs/CHANGES: Document it. |
| 514 | |
| 515 | 2005-09-05 Werner Lemberg <wl@gnu.org> |
| 516 | |
| 517 | Fixes for `make multi' and using C++ compiler. |
| 518 | |
| 519 | * gxvalid/gxvcommn.c (gxv_set_length_by_ushort_offset, |
| 520 | gxv_set_length_by_ulong_offset, gxv_array_getlimits_byte, |
| 521 | gxv_array_getlimits_ushort): Declare with FT_LOCAL_DEF. |
| 522 | (gxv_compare_ranges): Make it static. |
| 523 | (gxv_LookupTable_fmt0_validate, gxv_LookupTable_fmt2_validate, |
| 524 | gxv_LookupTable_fmt4_validate, gxv_LookupTable_fmt6_validate, |
| 525 | gxv_LookupTable_fmt8_validate, gxv_LookupTable_validate): Improve |
| 526 | trace messages. |
| 527 | (gxv_StateArray_validate, gxv_XStateArray_validate): s/class/clazz/. |
| 528 | (GXV_STATETABLE_HEADER_SIZE, GXV_STATEHEADER_SIZE, |
| 529 | GXV_XSTATETABLE_HEADER_SIZE, GXV_XSTATEHEADER_SIZE): Move to |
| 530 | gxvcommn.h. |
| 531 | |
| 532 | * gxvalid/gxvcommn.h: Add prototypes for |
| 533 | gxv_StateTable_subtable_setup, gxv_XStateTable_subtable_setup, |
| 534 | gxv_XStateTable_validate, gxv_array_getlimits_byte, |
| 535 | gxv_array_getlimits_ushort, gxv_set_length_by_ushort_offset, |
| 536 | gxv_set_length_by_ulong_offset, gxv_odtect_add_range, |
| 537 | gxv_odtect_validate. |
| 538 | (GXV_STATETABLE_HEADER_SIZE, GXV_STATEHEADER_SIZE, |
| 539 | GXV_XSTATETABLE_HEADER_SIZE, GXV_XSTATEHEADER_SIZE): Moved from |
| 540 | gxvcommn.c. |
| 541 | |
| 542 | * src/gxvalid/gxvbsln.c (gxv_bsln_LookupValue_validate, |
| 543 | gxv_bsln_parts_fmt1_validate): Improve trace messages. |
| 544 | |
| 545 | * gxvalid/gxvfeat.c: Split off predefined registry stuff to... |
| 546 | * gxvalid/gxvfeat.h: New file. |
| 547 | |
| 548 | * gxvalid/gxvjust.c (gxv_just_wdc_entry_validate): Improve trace |
| 549 | message. |
| 550 | |
| 551 | * gxvalid/gxvkern.c (GXV_kern_Dialect): Add KERN_DIALECT_UNKNOWN. |
| 552 | (gxv_kern_subtable_fmt1_valueTable_load, |
| 553 | gxv_kern_subtable_fmt1_subtable_setup, |
| 554 | gxv_kern_subtable_fmt1_entry_validate): Fix C++ compiler errors. |
| 555 | (gxv_kern_coverage_validate): Use KERN_DIALECT_UNKWOWN. |
| 556 | Improve trace message. |
| 557 | (gxv_kern_validate_generic): Fix C++ compiler error. |
| 558 | Improve trace message. |
| 559 | (gxv_kern_validate_classic): Fix C++ compiler error. |
| 560 | |
| 561 | * gxvalid/gxvmort0.c (gxv_mort_subtable_type0_validate): Declare |
| 562 | with FT_LOCAL_DEF. |
| 563 | |
| 564 | * gxvalid/gxvmort1.c |
| 565 | (gxv_mort_subtable_type1_substitutionTable_load, |
| 566 | gxv_mort_subtable_type1_subtable_setup): Fix C++ compiler errors. |
| 567 | (gxv_mort_subtable_type1_substTable_validate): Improve trace |
| 568 | message. |
| 569 | (gxv_mort_subtable_type1_validate): Declare with FT_LOCAL_DEF. |
| 570 | |
| 571 | * gxvalid/gxvmort2.c (gxv_mort_subtable_type2_opttable_load, |
| 572 | gxv_mort_subtable_type2_subtable_setup, |
| 573 | gxv_mort_subtable_type2_ligActionOffset_validate, |
| 574 | gxv_mort_subtable_type2_ligatureTable_validate): Fix C++ compiler |
| 575 | errors. |
| 576 | (gxv_mort_subtable_type2_validate): Declare with FT_LOCAL_DEF. |
| 577 | |
| 578 | * gxvalid/gxvmort4.c (gxv_mort_subtable_type4_validate): Declare |
| 579 | with FT_LOCAL_DEF. |
| 580 | |
| 581 | * gxvalid/gxvmort5.c (gxv_mort_subtable_type5_subtable_setup, |
| 582 | gxv_mort_subtable_type5_InsertList_validate): Fix C++ compiler |
| 583 | errors. |
| 584 | (gxv_mort_subtable_type5_validate): Declare with FT_LOCAL_DEF. |
| 585 | |
| 586 | * gxvalid/gxvmort.c: Include gxvfeat.h. |
| 587 | (gxv_mort_featurearray_validate, gxv_mort_coverage_validate): |
| 588 | Declare with FT_LOCAL_DEF. |
| 589 | (gxv_mort_subtables_validate, gxv_mort_validate): Improve trace |
| 590 | messages. |
| 591 | |
| 592 | * gxvalid/gxvmort.h (gxv_mort_feature_validate): Remove. |
| 593 | |
| 594 | * gxvalid/gxvmorx0.c (gxv_morx_subtable_type0_validate): Declare |
| 595 | with FT_LOCAL_DEF. |
| 596 | |
| 597 | * gxvalid/gxvmorx1.c |
| 598 | (gxv_morx_subtable_type1_substitutionTable_load, |
| 599 | gxv_morx_subtable_type1_subtable_setup, |
| 600 | gxv_morx_subtable_type1_entry_validate, |
| 601 | gxv_morx_subtable_type1_substitutionTable_validate): Fix C++ |
| 602 | compiler errors. |
| 603 | (gxv_morx_subtable_type1_validate): Declare with FT_LOCAL_DEF. |
| 604 | |
| 605 | * gxvalid/gxvmorx2.c (gxv_morx_subtable_type2_opttable_load, |
| 606 | gxv_morx_subtable_type2_subtable_setup, |
| 607 | gxv_morx_subtable_type2_ligActionIndex_validate, |
| 608 | gxv_morx_subtable_type2_ligatureTable_validate): Fix C++ compiler |
| 609 | errors. |
| 610 | (gxv_morx_subtable_type2_validate): Declare with FT_LOCAL_DEF. |
| 611 | Fix typo. |
| 612 | |
| 613 | * gxvalid/gxvmorx4.c (gxv_morx_subtable_type4_validate): Declare |
| 614 | with FT_LOCAL_DEF. |
| 615 | |
| 616 | * gxvalid/gxvmorx5.c (gxv_morx_subtable_type5_insertionGlyph_load, |
| 617 | gxv_morx_subtable_type5_subtable_setup): Fix C++ compiler error. |
| 618 | (gxv_morx_subtable_type5_validate): Declare with FT_LOCAL_DEF. |
| 619 | |
| 620 | * gxvalid/gxvmorx.c (gxv_morx_subtables_validate, |
| 621 | gxv_morx_validate): Improve trace message. |
| 622 | |
| 623 | * gxvalid/gxvopbd.c (gxv_opbd_LookupFmt4_transit): Fix compiler |
| 624 | warnings. |
| 625 | (gxv_opbd_validate): Improve trace message. |
| 626 | |
| 627 | * gxvalid/gxvprop.c: Decorate constants with `U' and `L' where |
| 628 | appropriate. |
| 629 | (gxv_prop_zero_advance_validate, gxv_prop_validate): Improve trace |
| 630 | message. |
| 631 | |
| 632 | * gxvalid/gxvtrak.c (gxv_trak_trackTable_validate): Remove unused |
| 633 | parameter. Update all callers. |
| 634 | (gxv_trak_validate): Improve trace message. |
| 635 | |
| 636 | * rules.mk (GXV_DRV_H): Add gxvfeat.h. |
| 637 | |
| 638 | 2005-09-01 Werner Lemberg <wl@gnu.org> |
| 639 | |
| 640 | * src/gxvalid/gxvbsln.c (GXV_BSLN_VALUE_EMPTY): Add `U'. |
| 641 | |
| 642 | * src/gxvalid/gxmort1.c (GXV_MORT_SUBTABLE_TYPE1_HEADER_SIZE), |
| 643 | src/gxvalid/gxmort2.c (GXV_MORT_SUBTABLE_TYPE2_HEADER_SIZE): Fix |
| 644 | typo. |
| 645 | |
| 646 | * src/gxvalid/gxvmorx0.c, src/gxvalid/gxvmorx1.c, |
| 647 | src/gxvalid/gxvmorx2.c, src/gxvalid/gxvmorx4.c, |
| 648 | src/gxvalid/gxvmorx5.c, src/gxvalid/gxvmort.c: Improve trace |
| 649 | messages. |
| 650 | Decorate constants with `U' and `L' where appropriate. |
| 651 | Fix compiler warnings. |
| 652 | |
| 653 | 2005-08-31 Werner Lemberg <wl@gnu.org> |
| 654 | |
| 655 | * src/truetype/ttgload.c (load_truetype_glyph): Fix typo. |
| 656 | |
| 657 | * src/gxvalid/gxvbsln.c (gxv_bsln_validate): Fix trace message. |
| 658 | |
| 659 | * src/gxvalid/gxvcommn.c (gxv_odtect_add_range): Use `const'. |
| 660 | |
| 661 | * src/gxvalid/gxvfeat.c, src/gxvalid/gxvjust.c, |
| 662 | src/gxvalid/gxvkern.c, src/gxvalid/gxvlcar.c, src/gxvalid/gxvmod.c, |
| 663 | src/gxvalid/gxvmort0.c, src/gxvalid/gxvmort1.c, |
| 664 | src/gxvalid/gxvmort2.c, src/gxvalid/gxvmort4.c, |
| 665 | src/gxvalid/gxvmort5.c, src/gxvalid/gxvmort.c: Improve trace |
| 666 | messages. |
| 667 | Decorate constants with `U' and `L' where appropriate. |
| 668 | Fix compiler warnings. |
| 669 | |
| 670 | 2005-08-30 Werner Lemberg <wl@gnu.org> |
| 671 | |
| 672 | * src/gxvalid/README: Revised. |
| 673 | * src/gxvalid/gxvbsln.c: Fix compiler warnings. |
| 674 | * src/gxvalid/gxvcommn.c: Fix compiler warnings. |
| 675 | (gxv_XEntryTable_validate, gxv_compare_ranges): Remove unused |
| 676 | parameter. Update all callers. |
| 677 | Improve trace messages. |
| 678 | Some formatting. |
| 679 | |
| 680 | 2005-08-29 Werner Lemberg <wl@gnu.org> |
| 681 | |
| 682 | * include/freetype/freetype.h, include/freetype/ftchapters.h: Add |
| 683 | a preliminary section with some explanations about user allocation. |
| 684 | |
| 685 | * src/tools/docmaker/tohtml.py (HtmlFormatter.section_enter): |
| 686 | Don't abort if there are no data types, functions, etc., in a |
| 687 | section. |
| 688 | Print synopsis only if we have a data type, function, etc. |
| 689 | |
| 690 | * docs/INSTALL.ANY, docs/INSTALL, docs/INSTALL.UNX, docs/CUSTOMIZE, |
| 691 | docs/INSTALL.GNU, docs/TRUETYPE, docs/DEBUG, docs/UPGRADE.UNX, |
| 692 | docs/VERSION.DLL, docs/formats.txt: Revised, formatted. |
| 693 | |
| 694 | 2005-08-28 George Williams <gww@silcom.com> |
| 695 | |
| 696 | * src/truetype/ttgload.c [TT_MAX_COMPOSITE_RECURSE]: Removed. |
| 697 | (load_truetype_glyph): Limit recursion depth by `maxComponentDepth'. |
| 698 | |
| 699 | 2005-08-25 J. Ali Harlow <ali@avrc.city.ac.uk> |
| 700 | |
| 701 | * builds/unix/freetype2.in (CFlags): Add missing directory. |
| 702 | |
| 703 | 2005-08-24 Werner Lemberg <wl@gnu.org> |
| 704 | |
| 705 | * docs/CHANGES: Mention gxvalid module. |
| 706 | |
| 707 | 2005-08-23 Werner Lemberg <wl@gnu.org> |
| 708 | |
| 709 | * src/autofit/aflatin.c (af_latin_metrics_scale): Initialize |
| 710 | render mode properly. Reported by chris@dokein.co.uk. |
| 711 | |
| 712 | 2005-08-23 suzuki toshiya <mpsuzuki@hiroshima-u.ac.jp> |
| 713 | |
| 714 | Add gxvalid module to validate TrueType GX/AAT tables. |
| 715 | |
| 716 | Modifications on existing files: |
| 717 | |
| 718 | * Jamfile: Register gxvalid module. |
| 719 | * src/base/Jamfile: Register ftgxval.c. |
| 720 | * src/base/rule.mk: Register ftgxval.c. |
| 721 | * docs/INSTALL.ANY: Register gxvalid/gxvalid.c. |
| 722 | |
| 723 | * include/freetype/config/ftheader.h (FT_GX_VALIDATE_H): New macro |
| 724 | to include gxvalid header file. |
| 725 | * include/freetype/config/ftmodule.h: Register gxv_module_class. |
| 726 | |
| 727 | * include/freetype/ftchapters.h: Add comment about gx_validation. |
| 728 | * include/freetype/ftotval.h: Change keyword FT_VALIDATE_XXX |
| 729 | to FT_VALIDATE_OTXXX to co-exist with gxvalid. |
| 730 | * include/freetype/tttags.h: Add tags for TrueType GX/AAT tables. |
| 731 | |
| 732 | * include/freetype/internal/ftserv.h (FT_SERVICE_GX_VALIDATE_H): New |
| 733 | macro for gxvalid service. |
| 734 | * include/freetype/internal/fttrace.h: Add trace facilities for |
| 735 | gxvalid. |
| 736 | |
| 737 | New files on existing directories: |
| 738 | |
| 739 | * include/freetype/internal/services/svgxval.h: Registration of |
| 740 | validation service for TrueType GX/AAT and classic kern table. |
| 741 | * include/freetype/ftgxval.h: Public API definition to use gxvalid. |
| 742 | * src/base/ftgxval.c: Public API of gxvalid. |
| 743 | |
| 744 | New files under src/gxvalid/: |
| 745 | |
| 746 | * src/gxvalid/Jamfile src/gxvalid/README src/gxvalid/module.mk |
| 747 | src/gxvalid/rules.mk src/gxvalid/gxvalid.c src/gxvalid/gxvalid.h |
| 748 | src/gxvalid/gxvbsln.c src/gxvalid/gxvcommn.c src/gxvalid/gxvcommn.h |
| 749 | src/gxvalid/gxverror.h src/gxvalid/gxvfeat.c src/gxvalid/gxvfgen.c |
| 750 | src/gxvalid/gxvjust.c src/gxvalid/gxvkern.c src/gxvalid/gxvlcar.c |
| 751 | src/gxvalid/gxvmod.c src/gxvalid/gxvmod.h src/gxvalid/gxvmort.c |
| 752 | src/gxvalid/gxvmort.h src/gxvalid/gxvmort0.c src/gxvalid/gxvmort1.c |
| 753 | src/gxvalid/gxvmort2.c src/gxvalid/gxvmort4.c src/gxvalid/gxvmort5.c |
| 754 | src/gxvalid/gxvmorx.c src/gxvalid/gxvmorx.h src/gxvalid/gxvmorx0.c |
| 755 | src/gxvalid/gxvmorx1.c src/gxvalid/gxvmorx2.c src/gxvalid/gxvmorx4.c |
| 756 | src/gxvalid/gxvmorx5.c src/gxvalid/gxvopbd.c src/gxvalid/gxvprop.c |
| 757 | src/gxvalid/gxvtrak.c: New files, gxvalid body. |
| 758 | |
| 759 | 2005-08-21 Werner Lemberg <wl@gnu.org> |
| 760 | |
| 761 | * src/truetype/ttgload.c (TT_Load_Glyph): Only translate outline |
| 762 | to (0,0) if bit 1 of the `head' table isn't set. This improves |
| 763 | rendering of buggy fonts. |
| 764 | |
| 765 | 2005-08-20 Chia I Wu <b90201047@ntu.edu.tw> |
| 766 | |
| 767 | * src/truetype/ttdriver.c (Load_Glyph): Don't check the validity of |
| 768 | ttmetrics here. TrueType fonts with only sbits always have |
| 769 | ttmetrics.valid set to false. |
| 770 | |
| 771 | * src/truetype/ttgload.c (TT_Load_Glyph): Check that ttmetrics is |
| 772 | valid before loading outline glyph. |
| 773 | |
| 774 | * src/cache/ftcimage.c (FTC_INode_New): Fix a memory leak. |
| 775 | |
| 776 | 2005-08-20 Werner Lemberg <wl@gnu.org> |
| 777 | |
| 778 | * src/sfnt/ttload.c (tt_face_load_metrics_header): Ignore missing |
| 779 | `hhea' table for SFNT Mac fonts. Change based on a patch by |
| 780 | mpsuzuki@hiroshima-u.ac.jp. |
| 781 | |
| 782 | 2005-08-20 Masatake YAMATO <jet@gyve.org> |
| 783 | |
| 784 | * src/otvalid/otvmod.c (otv_validate): Use ft_validator_run instead |
| 785 | of ft_setjmp. |
| 786 | |
| 787 | 2005-08-19 Werner Lemberg <wl@gnu.org> |
| 788 | |
| 789 | * src/truetype/ttgload.c (load_truetype_glyph): Fix compiler |
| 790 | warnings. |
| 791 | |
| 792 | 2005-08-16 Chia I Wu <b90201047@ntu.edu.tw> |
| 793 | |
| 794 | * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Update copyright |
| 795 | messages. |
| 796 | |
| 797 | 2005-08-16 Chia I Wu <b90201047@ntu.edu.tw> |
| 798 | |
| 799 | * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Remove original |
| 800 | TT_Done_Context and rename TT_Destroy_Context to TT_Done_Context |
| 801 | with slight changes. |
| 802 | Update all callers. |
| 803 | (TT_New_Context): Now takes TT_Driver argument directly. |
| 804 | Update all callers. |
| 805 | |
| 806 | * src/truetype/ttobjs.h (tt_slot_init): New function. |
| 807 | * src/truetype/ttobjs.c (tt_driver_init): Initialize execution |
| 808 | context here. |
| 809 | (tt_slot_init): New function to create extra points for the internal |
| 810 | glyph loader. We then use it directly, instead of face's glyph |
| 811 | loader, when loading glyph. |
| 812 | |
| 813 | * src/truetype/ttdriver.c (tt_driver_class): Use tt_slot_init for |
| 814 | glyph slot initialization. |
| 815 | (Load_Glyph): Load flag dependencies are handled here. Return error |
| 816 | if size is NULL. |
| 817 | |
| 818 | * src/truetype/ttgload.c: Heavy cleanup and refactoring. |
| 819 | (org_to_cur): Removed. |
| 820 | (TT_Load_Simple_Glyph): Call FT_GlyphLoader_CheckPoints. |
| 821 | (TT_Hint_Glyph): New funcion to hint a zone, prepared by caller. |
| 822 | (TT_Process_Simple_Glyph): s/load/loader/. |
| 823 | Use loader->pp values instead of recalculation. |
| 824 | Use TT_Hint_Glyph. |
| 825 | No need to save/restore loader->stream before and after |
| 826 | TT_Vary_Get_Glyph_Deltas now. |
| 827 | (TT_LOADER_SET_PP): New macro to calculate and set the four phantom |
| 828 | points. |
| 829 | (load_truetype_glyph): Never set exec->glyphSize to 0. This closes |
| 830 | Savannah bug #13107. |
| 831 | Forget glyph frame before calling TT_Process_Simple_Glyph. |
| 832 | Use TT_LOADER_SET_PP. |
| 833 | Scale all four phantom points. |
| 834 | Split off some functionality to ... |
| 835 | (TT_Process_Composite_Component, TT_Process_Composite_Glyph): These |
| 836 | new functions. |
| 837 | (TT_Load_Glyph): Set various fields of `glyph' here, not in |
| 838 | load_truetype_glyph and compute_glyph_metrics. |
| 839 | Split off some functionality to ... |
| 840 | (load_sbit_image, tt_loader_init): These new functions. |
| 841 | (compute_glyph_metrics): Call FT_Outline_Get_CBox. |
| 842 | |
| 843 | 2005-08-08 Werner Lemberg <wl@gnu.org> |
| 844 | |
| 845 | * docs/INSTALL.ANY: Updated. |
| 846 | |
| 847 | 2005-08-05 Werner Lemberg <wl@gnu.org> |
| 848 | |
| 849 | * src/cff/cffgload.c (cff_builder_close_contour), |
| 850 | src/psaux/psobjs.c (t1_builder_close_contour): Protect against |
| 851 | zero `outline' pointer. |
| 852 | |
| 853 | * src/base/ftgloadr.c (FT_GlyphLoader_Add): Protect against zero |
| 854 | `loader' address. |
| 855 | |
| 856 | 2005-08-03 Werner Lemberg <wl@gnu.org> |
| 857 | |
| 858 | * src/sfnt/sfdriver.c (sfnt_interface) [FT_OPTIMIZE_MEMORY]: |
| 859 | Reactivate pointers to tt_find_sbit_image and tt_load_sbit_metrics |
| 860 | to make X work again. |
| 861 | |
| 862 | 2005-08-02 Werner Lemberg <wl@gnu.org> |
| 863 | |
| 864 | * src/otvalid/otvcommn.h: Remove dead code. |
| 865 | |
| 866 | 2005-07-31 Chia I Wu <b90201047@ntu.edu.tw> |
| 867 | |
| 868 | * src/truetype/ttobjs.h (tt_size_run_fpgm, tt_size_run_prep): New |
| 869 | functions. |
| 870 | |
| 871 | * src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): New |
| 872 | functions. |
| 873 | (tt_size_init): Add 4, instead of 2, (phantom) points to twilight |
| 874 | zone. |
| 875 | Move code that runs fpgm to tt_size_run_fpgm. |
| 876 | (Reset_Outline_Size): Move code that runs prep to tt_size_run_prep. |
| 877 | (tt_glyphzone_new): Allocate right size of arrays. |
| 878 | Set max_points and max_contours properly. |
| 879 | |
| 880 | 2005-07-26 Chia I Wu <b90201047@ntu.edu.tw> |
| 881 | |
| 882 | * src/truetype/ttdriver.c (Set_Char_Sizes): Avoid unnecessary |
| 883 | computations and clean up. |
| 884 | |
| 885 | * src/truetype/ttobjs.h (struct TT_SizeRec_): Comment on the |
| 886 | internal copy of metrics. |
| 887 | |
| 888 | 2005-07-12 Werner Lemberg <wl@gnu.org> |
| 889 | |
| 890 | * include/freetype/ftoutln.h (FT_Outline_Embolden): Fix prototype. |
| 891 | Reported by Xerxes. |
| 892 | |
| 893 | 2005-07-04 Werner Lemberg <wl@gnu.org> |
| 894 | |
| 895 | * include/freetype/internal/ftmemory.h (FT_REALLOC_ARRAY): Fix typo. |
| 896 | Reported by Brett Hutley. |
| 897 | |
| 898 | 2005-06-30 David Turner <david@freetype.org> |
| 899 | |
| 900 | * src/sfnt/ftbitmap.c, src/truetype/ttgload.c, src/sfnt/ttcmap.c: |
| 901 | Removing compiler warnings (Visual C++ /W4). |
| 902 | |
| 903 | |
| 904 | Implement a work-around for broken C preprocessor in Visual C++ (it |
| 905 | has been confirmed by the MS developers that it is indeed a bug |
| 906 | which won't be fixed in the very near future). |
| 907 | |
| 908 | * Jamfile (FT2_COMPONENTS): Include otvalid (again). |
| 909 | |
| 910 | * src/otvalid/otvcommn.h (OTV_NAME, OTV_FUNC): New macros. |
| 911 | (OTV_NEST1, OTV_NEST2, OTV_NEST3): Use OTV_NAME and OTV_FUNC to |
| 912 | avoid argument expansion by argument prescan. |
| 913 | Append `Func' to all affected macros and change them to take just a |
| 914 | single argument. Example: `AttachList' is renamed to |
| 915 | `AttachListFunc'. |
| 916 | |
| 917 | * src/otvalid/otvgdef.c, src/otvalid/otvgpos.c, |
| 918 | src/otvalid/otvgsub.c, src/otvjstf.c: Append `Func' to macros |
| 919 | affected by the changes to OTV_NESTx and modify them to take just a |
| 920 | single argument. |
| 921 | |
| 922 | 2005-06-20 Chia I Wu <b90201047@ntu.edu.tw> |
| 923 | |
| 924 | * include/freetype/internal/ftobjs.h, src/base/ftobjs.c: New function |
| 925 | ft_glyphslot_grid_fit_metrics. |
| 926 | |
| 927 | * src/truetype/ttgload.c (compute_glyph_metrics): Use |
| 928 | ft_glyphslot_grid_fit_metrics. |
| 929 | |
| 930 | * src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c |
| 931 | (cid_slot_load_glyph), src/type1/t1gload.c (T1_Load_Glyph): Use |
| 932 | ft_glyphslot_grid_fit_metrics. |
| 933 | FT_Outline_Get_CBox is called twice. |
| 934 | |
| 935 | * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Modify metrics to more |
| 936 | reasonable values when emboldening outline glyphs. The theoretic |
| 937 | ones are unrealistic. |
| 938 | |
| 939 | 2005-06-16 Chia I Wu <b90201047@ntu.edu.tw> |
| 940 | |
| 941 | * src/base/ftoutln.c (FT_Outline_Embolden): Strength should be |
| 942 | halved. |
| 943 | |
| 944 | * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Change the default |
| 945 | strength. |
| 946 | Don't increase slot->advance.y. |
| 947 | |
| 948 | 2005-06-16 Werner Lemberg <wl@gnu.org> |
| 949 | |
| 950 | * include/freetype/freetype.h (FREETYPE_MINOR): Set to 2. |
| 951 | (FREETYPE_PATCH): Set to 0. |
| 952 | |
| 953 | * builds/unix/configure.ac (version_info): Set to 9:9:3. |
| 954 | Currently, we are still binary compatible. |
| 955 | |
| 956 | * builds/win32/visualc/index.html, |
| 957 | builds/win32/visualc/freetype.dsp, |
| 958 | builds/win32/visualc/freetype.vcproj: s/219/2110/, s/2.1.9/2.1.10/. |
| 959 | |
| 960 | * builds/freetype.mk (refdoc), README, Jamfile (RefDoc): |
| 961 | s/2.1.9/2.1.10/. |
| 962 | |
| 963 | * docs/CHANGES, docs/VERSION.DLL: Updated. |
| 964 | |
| 965 | * ChangeLog: Split off older entries into... |
| 966 | * ChangeLog.20, ChangeLog.21: These new files. |
| 967 | |
| 968 | 2005-06-15 Kirill Smelkov <kirr@mns.spb.ru> |
| 969 | |
| 970 | The next release will be 2.2.0, so don't worry about source code |
| 971 | backwards compatibility. |
| 972 | |
| 973 | * include/freetype/ftimage.h (FT_Outline_MoveToFunc, |
| 974 | FT_Outline_LineToFunc, FT_Outline_ConicToFunc, |
| 975 | FT_Outline_CubicToFunc, FT_SpanFunc, FT_Raster_RenderFunc), |
| 976 | include/freetype/ftrender.h (FT_Glyph_TransformFunc, |
| 977 | FT_Renderer_RenderFunc, FT_Renderer_TransformFunc): Decorate |
| 978 | parameters with `const' where appropriate. |
| 979 | |
| 980 | 2005-06-15 Chia I Wu <b90201047@ntu.edu.tw> |
| 981 | |
| 982 | * src/sfnt/ttsbit.c (tt_face_load_sbit_image): Compute vertBearingY |
| 983 | to make glyphs centered vertically. |
| 984 | |
| 985 | * src/truetype/ttgload.c (compute_glyph_metrics): Compute |
| 986 | vertBearingY to make glyphs centered vertically. |
| 987 | Fix some bugs in vertical metrics: |
| 988 | |
| 989 | . loader->pp3.y and loader->pp4.y are in 26.6 format, not in font |
| 990 | units. |
| 991 | . As we use the glyph's cbox to calculate the top bearing now |
| 992 | there iss no need to adjust `top'. |
| 993 | |
| 994 | 2005-06-15 Werner Lemberg <wl@gnu.org> |
| 995 | |
| 996 | * src/otvalid/otvcommn.h (OTV_OPTIONAL_TABLE): Use FT_UShort to be |
| 997 | in sync with OTV_OPTIONAL_OFFSET. Reported by YAMATO Masatake. |
| 998 | |
| 999 | 2005-06-13 Werner Lemberg <wl@gnu.org> |
| 1000 | |
| 1001 | * docs/release: Update. |
| 1002 | |
| 1003 | ---------------------------------------------------------------------------- |
| 1004 | |
| 1005 | Copyright 2005 by |
| 1006 | David Turner, Robert Wilhelm, and Werner Lemberg. |
| 1007 | |
| 1008 | This file is part of the FreeType project, and may only be used, modified, |
| 1009 | and distributed under the terms of the FreeType project license, |
| 1010 | LICENSE.TXT. By continuing to use, modify, or distribute this file you |
| 1011 | indicate that you have read the license and understand and accept it |
| 1012 | fully. |
| 1013 | |
| 1014 | |
| 1015 | Local Variables: |
| 1016 | version-control: never |
| 1017 | coding: latin-1 |
| 1018 | End: |