freetype/src/base
Werner Lemberg e6e6eade04 Finish fix of scaling bug of CID-keyed CFF subfonts.
* include/freetype/internal/ftcalc.h, src/base/ftcalc.c
(FT_Matrix_Multiply_Scaled, FT_Vector_Transform_Scaled): New
functions.

* src/cff/cffobjs.h (CFF_Internal): New struct.  It is used to
provide global hinting data for both the top-font and all subfonts
(with proper scaling).

* src/cff/cffobjs.c (cff_make_private_dict): New function, using
code from `cff_size_init'.
(cff_size_init, cff_size_done, cff_size_select, cff_size_request):
Use CFF_Internal and handle subfonts.
(cff_face_init): Handle top-dict and subfont matrices correctly;
apply some heuristic in case of unlikely matrix concatenation
results.  This has been discussed with people from Adobe (thanks
goes mainly to David Lemon) who confirm that the CFF specs are fuzzy
and not correct.

* src/cff/cffgload.h (cff_decoder_prepare): Add `size' argument.

* src/cff/cffgload.c (cff_builder_init): Updated.
(cff_decoder_prepare): Handle hints globals for subfonts.
Update all callers.
(cff_slot_load): Handling scaling of subfonts properly.

* src/cff/cffparse.c (cff_parse_fixed_dynamic): New function.
(cff_parse_font_matrix): Use it.

* src/cff/cfftypes.h (CFF_FontDictRec): Make `units_per_em'
FT_ULong.

* docs/CHANGES: Document it.
2008-05-14 23:05:38 +00:00
..
ftapi.c Remove trailing whitespace. From Alexei. 2007-01-16 06:11:27 +00:00
ftbase.c * src/base/ftbase.c: <ftmac.c> is replaced by "ftmac.c" 2008-02-14 02:55:16 +00:00
ftbbox.c Spelling fixes from Alexei. 2007-01-26 22:18:56 +00:00
ftbdf.c * include/freetype/ftbitmap.h (FT_Bitmap_Copy, FT_Bitmap_Embolden), 2005-10-20 02:13:46 +00:00
ftbitmap.c fixed a memory buffer overwrite bug. Damn !! 2007-04-06 08:19:04 +00:00
ftcalc.c Finish fix of scaling bug of CID-keyed CFF subfonts. 2008-05-14 23:05:38 +00:00
ftcid.c Formatting. 2008-01-04 01:43:23 +00:00
ftdbgmem.c 2006-08-27 Jens Claudius <jens.claudius@yahoo.com> 2006-08-27 11:26:18 +00:00
ftdebug.c * src/base/ftcalc.c (FT_MulTo64): Commented out. 2005-11-17 01:53:07 +00:00
ftgasp.c formatting, copyright years and messages, doc polishing 2007-01-09 10:37:36 +00:00
ftgloadr.c formatting 2006-08-19 11:18:09 +00:00
ftglyph.c * src/base/ftglyph.c (FT_Glyph_Copy): Fix initialization of 2007-07-08 07:13:12 +00:00
ftgxval.c formatting, copyright years 2006-06-25 06:07:14 +00:00
ftinit.c formatting, copyright years 2007-03-06 12:06:56 +00:00
ftlcdfil.c * src/base/ftlcdfil.c (_ft_lcd_filter_legacy): Updated comment to 2008-01-18 05:32:55 +00:00
ftmac.c minor improvements, copyright years 2008-02-21 23:22:06 +00:00
ftmm.c Remove trailing whitespace. From Alexei. 2007-01-16 06:11:27 +00:00
ftnames.c * src/cache/ftccache.c (ftc_node_hash_unlink, ftc_node_hash_link) 2002-06-08 06:47:18 +00:00
ftobjs.c * src/base/ftobjs.c (FT_Load_Glyph): Call the auto-hinter without 2008-05-03 15:54:15 +00:00
ftotval.c formatting, copyright years 2006-06-25 06:07:14 +00:00
ftoutln.c Finish fix of scaling bug of CID-keyed CFF subfonts. 2008-05-14 23:05:38 +00:00
ftpatent.c formatting 2007-07-02 14:58:58 +00:00
ftpfr.c Documentation updates, whitespace. 2004-12-13 23:16:59 +00:00
ftrfork.c * src/smooth/ftgrays.c (gray_raster_render): Check `outline' 2007-12-30 23:49:14 +00:00
ftstream.c * include/freetype/internal/ftmemory.h: s/new/newsz/ (for C++). 2006-05-02 22:22:16 +00:00
ftstroke.c Formatting, copyright years, documentation. 2006-04-22 12:24:52 +00:00
ftsynth.c Formatting. 2006-11-07 09:47:04 +00:00
ftsystem.c Further C library abstraction. Based on a patch from 2006-04-29 07:31:16 +00:00
fttrigon.c * src/base/fttrigon.c (ft_trig_prenorm): fixed a bug that created 2005-11-15 17:30:56 +00:00
fttype1.c Add new function FT_Get_PS_Font_Private(). 2004-11-12 07:02:45 +00:00
ftutil.c fixing implementation bug in ft_mem_strcpyn 2007-03-08 10:50:38 +00:00
ftwinfnt.c Documentation updates, whitespace. 2004-12-13 23:16:59 +00:00
ftxf86.c Documentation updates, whitespace. 2004-12-13 23:16:59 +00:00
Jamfile * include/freetype/config/ftoption.h: clarify documentation regarding 2007-06-10 20:51:04 +00:00
rules.mk * src/base/ftoutln.c (FT_Outline_Get_Orientation): Fix compilation 2007-01-13 08:45:00 +00:00