|
e6e6eade
|
2008-05-14T23:05:38
|
|
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.
|
|
7723dc34
|
2007-06-26T04:44:35
|
|
Add autofit module for Indic scripts. This currently just reuses
the CJK-specific functions.
* include/freetype/config/ftoption.h (AF_CONFIG_OPTION_INDIC): New
macro.
* devel/ftoption.h: Synchronize with
include/freetype/config/ftoption.h.
* src/autofit/afindic.c, src/autofit/afindic.h: New files.
* src/autofit/afglobal.c, src/autofit/aftypes.h,
src/autofit/autofit.c: Updated.
* src/autofit/Jamfile (_sources), * src/autofit/rules.mk
(AUTOF_DRV_SRC): Updated.
|
|
49e18b8d
|
2007-06-11T21:15:09
|
|
formatting
|
|
b792017f
|
2007-06-11T05:37:35
|
|
experimental changes for the Latin auto-hinter.
note that the new code is disabled by default.
|
|
f0cd69c1
|
2007-05-28T15:42:09
|
|
2007-05-28 David Turner <david@freetype.org>
* src/autofit/afglobal.c: change default hinting script to
CJK, since it works well with a larger array of scripts. thanks to
"Rahul Bhalerao" <b.rahul.pm@gmail.com> for pointing this out !
|
|
689dd66b
|
2007-01-30T23:08:50
|
|
More typo fixes from Alexei.
|
|
4cdb45c0
|
2006-02-09T14:17:04
|
|
Introduce experimental autofit CJK module based on akito's autohint
patch. You need to #define AF_MOD_CJK in afcjk.c to enable it.
* src/autofit/afglobal.c, src/autofit/afcjk.h, src/autofit/afcjk.c,
src/autofit/rules.mk, src/autofit/autofit.c, src/autofit/aftypes.h:
Add CJK module based on akito's autohint patch.
* src/autofit/afhints.h (AF_SegmentRec): New field `len' for the
overlap length of the segments. (AF_SEGMENT_LEN, AF_SEGMENT_DIST):
New macros.
* src/autofit/aflatin.h (af_latin_metrics_init_widths),
src/autofit/aflatin.c (af_latin_metrics_init_widths): Made `FT_LOCAL'.
Use the character given by the caller.
(af_latin_metrics_init_widths, af_latin_hints_link_segments): Scale
the thresholds.
* src/autofit/afloader.c (af_loader_load_g): Respect
AF_SCALER_FLAG_NO_ADVANCE.
|
|
2cefb52f
|
2005-03-26T10:27:09
|
|
* src/autofit/afglobal.c (af_face_globals_get_metrics):
s/index/gidx/.
* src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): Fix compiler
warnings.
* src/sfnt/rules.mk (SFNT_DRV_SRC): Add ttsbit0.c.
* src/sfnt/ttsbit0.h: Dummy file for build with `make'.
|
|
a37745ba
|
2005-03-23T16:45:24
|
|
* docs/CHANGES, docs/INSTALL.ANY: Updated.
* include/freetype/ftmoderr.h: Replace `Autohint' with `Autofit'.
Add `OTvalid'.
* src/autofit/aferrors.h: New file.
* src/autofit/afglobal.c, src/autofit/afhints.c,
src/autofit/aflatin.c, src/autofit/afloader.c: s/FT_Err_/AF_Err_/.
Include aferrors.h.
* src/autofit/rules.mk (AUTOF_DRV_H): Include aferrors.h.
* src/otvalid/otverror.h: s/FT_Mod_Err_OTV/FT_Mod_Err_OTvalid/.
|
|
f13516c8
|
2005-03-03T17:09:08
|
|
Various fixes for C and C++ compiling.
* src/autofit/*: Add copyright messages.
Formatting.
* src/autofit/afhints.c (af_glyph_hints_done): Don't use
`AF_Dimension' but `int' for loop counter.
* src/autofit/aflatin.c (af_latin_metrics_init_widths): Don't use
`AF_Dimension' but `int' for loop counter.
Use proper enumeration value for `render_mode'.
(af_latin_metrics_scale_dim): Don't shadow variables.
(af_latin_hints_compute_segments): Use proper cast for `major_dir'
and `segment_dir'.
(af_latin_align_linked_edge, af_latin_hint_edges): Fix arguments of call to
`af_latin_compute_stem_width'.
(af_latin_hints_apply): Don't use `AF_Dimension' but `int' for loop
counter.
* src/base/ftdbgmem.c (ft_mem_table_get_source, FT_DumpMemory): Use
proper cast for memory allocation.
* src/cff/cffdrivr.c (cff_get_kerning): Use proper cast for
initialization of `sfnt'.
* src/sfnt/sfdriver.c: Include `ttkern.h'.
* src/sfnt/ttkern.c (tt_face_get_kerning): Don't shadow variables.
* src/truetype/ttgload.c: Include `ttpload.h'.
* src/truetype/ttpload.c (tt_face_load_loca) [FT_OPTIMIZE_MEMORY]:
Remove redundant variable.
|
|
e664efad
|
2004-06-04T17:41:59
|
|
* src/autofit/*: important fixes to the auto-fitter. The output
now seems to be 100% equivalent to the auto-hinter, while being
about 2% faster (which proves that script-specific algorithm
selection isn't a performance problem).
to test it, change "autohint" to "autofit" in
<freetype/config/ftmodule.h> and recompile.
a few more testing is needed before making this the official
auto-hinting module
|
|
9bfbf79c
|
2004-02-23T21:08:37
|
|
adding support for dummy script, i.e. no-hinting for non latin glyphs
|
|
8ccb4552
|
2004-01-16T09:51:00
|
|
updates
|
|
cf2c49c8
|
2003-12-24T18:42:04
|
|
* fixed compilation problems in the cache sub-system
* partial updates to src/autofit
|
|
ff9d2415
|
2003-11-23T21:39:51
|
|
* src/autofit/*: more updates
|