/[freetype]/freetype2/ChangeLog
ViewVC logotype

Diff of /freetype2/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.1147 by wl, Wed Nov 30 08:55:51 2005 UTC revision 1.1148 by wl, Wed Nov 30 18:47:49 2005 UTC
# Line 3  Line 3 
3          * docs/CHANGES: Document ftdump's `-v' option.          * docs/CHANGES: Document ftdump's `-v' option.
4          Document latest charmap code changes.          Document latest charmap code changes.
5    
6            * src/sfnt/ttcmap.c, src/sfnt/ttcmap.h:
7            s/TT_CMAP_FLAG_OVERLAPPED/TT_CMAP_FLAG_OVERLAPPING/.
8    
9  2005-11-30  Chia-I Wu  <b90201047@ntu.edu.tw>  2005-11-30  Chia-I Wu  <b90201047@ntu.edu.tw>
10    
11          * src/sfnt/ttcmap.c (tt_cmap4_char_map_binary,          * src/sfnt/ttcmap.c (tt_cmap4_char_map_binary,
# Line 10  Line 13 
13    
14  2005-11-29  Chia-I Wu  <b90201047@ntu.edu.tw>  2005-11-29  Chia-I Wu  <b90201047@ntu.edu.tw>
15    
16          Major update to distinguish between unsorted and overlapped segments          Major update to distinguish between unsorted and overlapping
17          for cmap format 4.  For overlapped but sorted segments, which is          segments for cmap format 4.  For overlapping but sorted segments,
18          previously considered unsorted, we still use binary search.          which is previously considered unsorted, we still use binary search.
19    
20          * src/sfnt/ttcmap.h (struct  TT_CMapRec_): Replace `unsorted' by          * src/sfnt/ttcmap.h (TT_CMapRec_): Replace `unsorted' by `flags'.
         `flags'.  
21          (TT_CMAP_FLAG_UNSORTED, TT_CMAP_FLAG_OVERLAPPED): New macros.          (TT_CMAP_FLAG_UNSORTED, TT_CMAP_FLAG_OVERLAPPED): New macros.
22    
23          * src/sfnt/ttcmap.c (OPT_CMAP4): Removed as it is always defined.          * src/sfnt/ttcmap.c (OPT_CMAP4): Removed as it is always defined.
24          (struct TT_CMap4Rec_): Remove `old_charcode' and `table_length'.            (TT_CMap4Rec_): Remove `old_charcode' and `table_length'.  
25          (tt_cmap4_reset): Removed.          (tt_cmap4_reset): Removed.
26          (tt_cmap4_init): Updated accordingly.          (tt_cmap4_init): Updated accordingly.
27          (tt_cmap4_next): Updated accordingly.          (tt_cmap4_next): Updated accordingly.
28          Take care of overlapped segments.          Take care of overlapping segments.
29          (tt_cmap4_validate): Make sure the subtable is large enough.          (tt_cmap4_validate): Make sure the subtable is large enough.
30          Do not check glyph_ids because some fonts set the length wrongly.          Do not check glyph_ids because some fonts set the length wrongly.
31          Also, when all segments have offset 0, glyph_ids is always invalid. It          Also, when all segments have offset 0, glyph_ids is always invalid.
32          does not cause any problem so far only because the check misses          It does not cause any problem so far only because the check misses
33          equality.          equality.
34          Distinguish between unsorted and overlapped segments.          Distinguish between unsorted and overlapping segments.
35          (tt_cmap4_char_map_linear, tt_cmap4_char_map_binary): New functions to          (tt_cmap4_char_map_linear, tt_cmap4_char_map_binary): New functions
36          do "charcode => glyph index" by linear/binary search.          to do `charcode => glyph index' by linear/binary search.
37          (tt_cmap4_char_index, tt_cmap4_char_next): Use          (tt_cmap4_char_index, tt_cmap4_char_next): Use
38          tt_cmap4_char_map_linear and tt_cmap4_char_map_binary.          tt_cmap4_char_map_linear and tt_cmap4_char_map_binary.
39          (tt_face_build_cmaps): Treat the return value of validator as flags          (tt_face_build_cmaps): Treat the return value of validator as flags
# Line 39  Line 41 
41    
42  2005-11-29  Chia-I Wu  <b90201047@ntu.edu.tw>  2005-11-29  Chia-I Wu  <b90201047@ntu.edu.tw>
43    
44          * src/sfnt/ttcmap.c (struct  TT_CMap12Rec_, tt_cmap12_init,          * src/sfnt/ttcmap.c (TT_CMap12Rec_, tt_cmap12_init, tt_cmap12_next):
45          tt_cmap12_next): New struct/function for fast "next char".          New structures and functions for fast `next char'.
46          (tt_cmap12_char_map_binary): New function to do "charcode => glyph          (tt_cmap12_char_map_binary): New function to do `charcode => glyph
47          index" by binary search.          index' by binary search.
48          (tt_cmap12_char_index, tt_cmap12_char_next): Use          (tt_cmap12_char_index, tt_cmap12_char_next): Use
49          tt_cmap12_char_map_binary.          tt_cmap12_char_map_binary.
50          (tt_face_build_cmaps): Check table and offset correctly (equality is          (tt_face_build_cmaps): Check table and offset correctly (equality is

Legend:
Removed from v.1.1147  
changed lines
  Added in v.1.1148

savannah-hackers-public@gnu.org
ViewVC Help
Powered by ViewVC 1.1.26