freetype2/include/freetype/internal
Werner Lemberg 24aa9c665e [autofit] Rewrite HarfBuzz interface to support character clusters.
Scripts like Khmer have blue zones that can't be directly
represented by Unicode characters.  Instead, it is necessary to let
HarfBuzz convert character clusters into proper glyph representation
forms, then deriving the blue zone information from the resulting
glyphs.

* src/autofit/hbshim.c, src/autofit/hbshim.h: Replaced by...
* src/autofit/afshaper.c, src/autofit/afshaper.h: ... these two new
files, providing a new API to access HarfBuzz.

The new API manages a HarfBuzz buffer with `af_shaper_buf_create'
and `af_shaper_buf_destroy'.  The buffer receives a UTF8 encoded
string with function `af_shaper_get_cluster', and the resulting
glyph data (indices, advance widths, vertical offsets) can be
iteratively accessed with function `af_shaper_get_elem'.

* src/autofit/afcjk.c (af_cjk_metrics_init_widths,
af_cjk_metrics_init_blues, af_cjk_metrics_check_digits): Updated.

* src/autofit/aflatin.c (af_latin_metrics_init_widths,
af_latin_metrics_init_blues, af_latin_metrics_check_digits):
Updated.

* include/freetype/internal/fttrace.h: s/afharfbuzz/afshaper/.

* src/autofit/afglobal.c: s/hbshim.h/afshaper.h/.
(af_face_globals_compute_style_coverage): Updated.

* src/autofit/afglocal.h: s/hbshim.h/afshaper.h/.

* src/autofit/autofit.c: s/hbshim.c/afshaper.c/.

* src/autofit/Jamfile, src/autofit/rules.mk (AUTOF_DRV_SRC):
Updated.
2015-12-06 18:52:41 +01:00
..
services [sfnt] Better checks for invalid cmaps (2/2) (#46019). 2015-09-24 13:39:44 +02:00
autohint.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
ftcalc.h * include/freetype/internal/ftcalc.h: Don't use `register' keyword. 2015-11-21 06:30:43 +01:00
ftdebug.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
ftdriver.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
ftgloadr.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
ftmemory.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
ftobjs.h Allow native CFF hinter in FT_RENDER_MODE_LIGHT. 2015-11-10 22:33:45 +01:00
ftpic.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
ftrfork.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
ftserv.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
ftstream.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
fttrace.h [autofit] Rewrite HarfBuzz interface to support character clusters. 2015-12-06 18:52:41 +01:00
ftvalid.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
internal.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
psaux.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
pshints.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
sfnt.h [truetype] Introduce named instance access to GX fonts. 2015-08-13 15:22:17 +02:00
t1types.h Another adjustment to header locations. 2015-06-26 06:48:00 +02:00
tttypes.h [truetype] Catch infinite recursion in subglyphs (#46372). 2015-11-04 11:44:47 +01:00