freetype/src/sfnt
Dave Arnold 9f62d2ca06 [cff] Implement CFF2 support (1/2).
This commit does not contain the blend code for font variation
support, which follows in another commit.

You should ignore whitespace while inspecting this commit.

* include/freetype/internal/tttypes.h (TT_Face): Add `isCFF2'
member.

* src/cff/cf2font.h (CF2_Font): Add `isCFF2' member.

* src/cff/cf2ft.c (cf2_decoder_parse_charstrings): Handle `isCFF2'
flag.
(cf2_getMaxstack): New function.
* src/cff/cf2ft.h: Updated.

* src/cff/cf2intrp.c (cf2_escRESERVED_38): New enum.
(cf2_interpT2CharString): Handle CFF2 differences.
Add tracing message for errors.

* src/cff/cffdrivr.c (cff_get_glyph_name, cff_get_name_index):
Update for CFF2.

* src/cff/cffload.c (FT_FIXED_ONE): New macro.
(cff_index_init, cff_index_load_offsets, cff_index_access_element,
cff_index_get_name, cff_ft_select_get, cff_load_private_dict,
cff_subfont_load, cff_font_load): Handle CFF2.
* src/cff/cffload.h: Updated.

* src/cff/cffobjs.c (cff_face_init): Handle CFF2.

* src/cff/cffparse.c (cff_parse_maxstack): New function.
(CFFCODE_TOPDICT, CFFCODE_PRIVATE): Removed
* src/cff/cffparse.h (CFF2_MAX_STACK, CFF2_DEFAULT_STACK): New
macros.
(CFF2_CODE_TOPDICT, CFF2_CODE_FONTDICT, CFF2_CODE_PRIVATE): New
macros.

* src/cff/cfftoken.h: Add fields for CFF2 dictionaries (but no blend
stuff).

* src/cff/cfftypes.h (CFF_Index): Add `hdr_size' field.
(CFF_FontRecDict): Add `maxstack' field.
(CFF_Private): Add `subfont' field.
(CFF_Font): Add `top_dict_length' and `cff2' fields.

* src/sfnt/sfobjs.c (sfnt_load_face): Handle `CFF2' table.
2016-12-15 20:27:47 +01:00
..
Jamfile Update copyright year. 2016-01-13 11:54:10 +01:00
module.mk Update copyright year. 2016-01-13 11:54:10 +01:00
pngshim.c [sfnt] Improve FT_LOAD_BITMAP_METRICS_ONLY for `sbix' format. 2016-11-06 12:37:55 +01:00
pngshim.h [sfnt] Improve FT_LOAD_BITMAP_METRICS_ONLY for `sbix' format. 2016-11-06 12:37:55 +01:00
rules.mk Update copyright year. 2016-01-13 11:54:10 +01:00
sfdriver.c [sfnt] Revert change from 2016-12-08. 2016-12-09 06:55:34 +01:00
sfdriver.h Update copyright year. 2016-01-13 11:54:10 +01:00
sferrors.h Update copyright year. 2016-01-13 11:54:10 +01:00
sfnt.c Update copyright year. 2016-01-13 11:54:10 +01:00
sfntpic.c Update copyright year. 2016-01-13 11:54:10 +01:00
sfntpic.h Update copyright year. 2016-01-13 11:54:10 +01:00
sfobjs.c [cff] Implement CFF2 support (1/2). 2016-12-15 20:27:47 +01:00
sfobjs.h Update copyright year. 2016-01-13 11:54:10 +01:00
ttbdf.c Update copyright year. 2016-01-13 11:54:10 +01:00
ttbdf.h Update copyright year. 2016-01-13 11:54:10 +01:00
ttcmap.c s/0/NULL/ for function pointers; comments, formatting. 2016-09-17 17:12:50 +02:00
ttcmap.h Update copyright year. 2016-01-13 11:54:10 +01:00
ttcmapc.h Update copyright year. 2016-01-13 11:54:10 +01:00
ttkern.c Update copyright year. 2016-01-13 11:54:10 +01:00
ttkern.h Update copyright year. 2016-01-13 11:54:10 +01:00
ttload.c Comments. 2016-09-29 19:51:28 +02:00
ttload.h Update copyright year. 2016-01-13 11:54:10 +01:00
ttmtx.c [truetype] Provide HVAR advance width variation as a service. 2016-12-15 14:34:57 +01:00
ttmtx.h Update copyright year. 2016-01-13 11:54:10 +01:00
ttpost.c [sfnt] Improve handling of invalid post 2.5 tables [#49393]. 2016-10-22 18:34:48 +02:00
ttpost.h Typos. 2016-04-13 00:11:52 -04:00
ttsbit.c [sfnt] Improve FT_LOAD_BITMAP_METRICS_ONLY for `sbix' format. 2016-11-06 12:37:55 +01:00
ttsbit.h Update copyright year. 2016-01-13 11:54:10 +01:00