src/cff/cffgload.h


Log

Author Commit Date CI Message
Werner Lemberg 2ad91580 2010-01-09T08:22:38 Whitespace.
Werner Lemberg 2d15120c 2009-10-19T21:09:13 Fix handling of `get' and `put' CFF instructions. * src/cff/cffgload.c (cff_decoder_parse_charstrings) <cff_op_get, cff_op_put>: Appendix B of Adobe Technote #5177 limits the number of elements for the `get' and `put' operators to 32. * src/cff/cffgload.h (CFF_MAX_TRANS_ELEMENTS): Define. (CFF_Decoder): Use it for `buildchar' and remove `len_buildchar'.
Werner Lemberg e7389a44 2009-06-28T01:25:55 [psaux, cff] Protect against nested `seac' calls. * include/freetype/internal/psaux.h (T1_Decoder), src/cff/cffgload.h (CFF_Decoder): Add `seac' boolean variable. * src/cff/cffgload.c (cff_operator_seac, cff_decoder_parse_charstrings), src/psaux/t1decode.c (t1operator_seac, t1_decoder_parse_charstrings): Use it.
Werner Lemberg 1f540eff 2009-06-20T13:24:08 Remove unused variables. * include/freetype/internal/psaux.h (T1_BuilderRec), src/cff/cffgload.h (CFF_Builder): Remove `last'. Update all users.
Werner Lemberg 634df6e3 2008-09-16T07:25:31 * src/cff/cffgload.h, src/cff/cffgload.c (cff_decoder_set_width_only): Eliminate function call.
David Turner 28534d61 2008-09-01T21:35:21 * include/freetype/ftadvanc.h, src/base/ftadvanc.c, include/freetype/config/ftheader.h, include/freetype/freetype.h, src/base/Jamfile, src/base/rules.mk, src/cff/cffdrivr.c, src/cff/cffgload.c, src/cff/cffgload.h, src/truetype/ttdriver.c, src/truetype/ttgload.h, src/truetype/ttgload.c, src/type1/t1driver.c, src/type1/t1gload.h, src/type1/t1gload.c: Add a new header named FT_ADVANCES_H declaring some new APIs to extract the advances of one or more glyphs without necessarily loading their outlines. Also provide 'fast loaders' for the TrueType, Type1 and CFF font drivers (more to come later) * autogen.sh: add checks for minimum version of the 'autotools' stuff.
Werner Lemberg 6174e17c 2008-06-10T05:58:25 * Version 2.3.6 released. ========================= Tag sources with `VER-2-3-6'. * docs/CHANGES, docs/VERSION.DLL: Update documentation and bump version number to 2.3.6. * README, Jamfile (RefDoc), builds/win32/visualc/index.html, builds/win32/visualc/freetype.dsp, builds/win32/visualc/freetype.vcproj, builds/win32/visualce/index.html, builds/win32/visualce/freetype.dsp, builds/win32/visualce/freetype.vcproj: s/2.3.5/2.3.6/, s/235/236/. * include/freetype/freetype.h (FREETYPE_PATCH): Set to 6. * builds/unix/configure.raw (version_info): Set to 9:17:3. * include/freetype/internal/psaux.h (T1_BuilderRec): Remove `scale_x' and `scale_y'. * src/cff/cffgload.h (CFF_Builder): Remove `scale_x' and `scale_y'. * src/cff/cffparse.c: Include FT_INTERNAL_DEBUG_H. * src/cff/cffobjs.h: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
Werner Lemberg 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.
Werner Lemberg de9479a0 2008-04-26T12:52:57 * include/freetype/internal/psaux.h (T1_BuilderRec): Mark `scale_x' and `scale_y' as obsolete since they aren't used. * src/psaux/psobjs.c (t1_builder_init): Updated. * src/cff/cffgload.h (CFF_Builder): Mark `scale_x' and `scale_y' as obsolete since they aren't used. * src/cff/cffgload.c (cff_builder_init): Updated.
Werner Lemberg 470210b7 2007-06-06T10:05:49 * src/winfonts/winfnt.c (fnt_face_get_dll_font): Do a rough check of `font_count'. * src/type1/t1load.c (parse_font_matrix): Check `temp_scale'. * src/cff/cffgload.c (cff_decoder_prepare): Change return type to `FT_Error'. Check `fd_index'. (cff_slot_load): Updated. * src/cff/cffgload.h: Updated.
Werner Lemberg 26377008 2006-03-21T18:41:40 * src/cff/cfftypes.h (CFF_CharsetRec): Add `max_cid' member. * src/cff/cffload.c (cff_charset_load): Set `charset->max_cid'. * src/cff/cffgload.c (cff_slot_load): Change type of third parameter to `FT_UInt'. Check range of `glyph_index'. * src/cff/cffgload.h: Updated.
Werner Lemberg f258627e 2004-05-13T21:59:17 * src/cff/cffgload.h (CFF_Builder): Remove `error' * src/cff/cffgload.c (cff_decoder_parse_charstrings): Replace `Memory_Error' with `Fail' und update all users.
Werner Lemberg 8b884660 2003-06-03T11:51:43 * src/autohint/ahhint.c (ah_hinter_hint_edges): Removed. Just a wrapper for ah_hint_edges. (ah_hint_edges): Renamed to... (ah_hinter_hint_edges): This. * src/base/ftobjs.c (FT_Set_Hint_Flags): Removed. Unused. * include/freetype/internal/ftobjs.h (FT_Face_InternalRec), include/freetype/internal/psaux.h (T1_DecoderRec), src/cff/cffgload.h (CFF_Builder): Remove `hint_flags' field. Unused. * src/cff/cffgload.c (cff_builder_init): Updated. (cff_decoder_parse_charstrings) <cff_op_endchar>: Call hinter->apply with decoder->hint_mode instead of builder->hint_flags. * src/psaux/t1decode.c (t1_decoder_init): Updated. * src/base/ftstroker.c (ft_stroke_border_export): s/index/idx/. * src/sfnt/sfobjs.c (sfnt_load_face): Commented out code which increased root->height by 15% if the line gap was zero. There exist fonts (containing e.g. form drawing characters) which intentionally have a zero line gap value.
Werner Lemberg 68e9f927 2002-09-27T11:09:23 * src/sfnt/ttpost.c (load_post_names, tt_face_free_ps_names, tt_face_get_ps_name): Replace switch statement with if clauses to make it more portable. * src/cff/cffobjs.c (cff_face_init): Ditto. * include/freetype/ftmodule.h (FT_Module_Class): Use `FT_Long' for `module_size'. * include/freetype/ftrender.h (FT_Glyph_Class_): Use `FT_Long' for `glyph_size'. * src/base/ftobjs.c (FT_Render_Glyph): Change second parameter to `FT_Render_Mode'. (FT_Render_Glyph_Internal): Change third parameter to `FT_Render_Mode'. * src/base/ftglyph.c (FT_Glyph_To_Bitmap): Change second parameter to `FT_Render_Mode'. * src/raster/ftrend1.c (ft_raster1_render): Change third parameter to `FT_Render_Mode'. * src/smooth/ftsmooth.c (ft_smooth_render, ft_smooth_render_lcd, ft_smooth_render_lcd_v): Ditto. (ft_smooth_render_generic): Change third and fifth parameter to `FT_Render_Mode'. * include/freetype/freetype.h, include/freetype/internal/ftobjs.h, include/freetype/ftglyph.h: Updated. * src/cff/cffdrivr.c (Load_Glyph), src/pcf/pcfdriver.c (PCF_Glyph_Load), src/pfr/pfrobjs.c (pfr_slot_load), src/winfonts/winfnt.c (FNT_Load_Glyph), src/t42/t42objs.c (T42_GlyphSlot_Load), src/bdf/bdfdrivr.c (BDF_Glyph_Load): Change fourth parameter to `FT_Int32'. * src/pfr/pfrobjs.c (pfr_face_init): Add two missing parameters and declare them as unused. * src/cid/cidparse.h (CID_Parser): Use FT_Long for `postscript_len'. * src/psnames/psnames.h (PS_Unicode_Value_Func): Change return value to FT_UInt32. * src/psnames/psmodule.c (ps_unicode_value, ps_build_unicode_table): Updated accordingly. * src/cff/cffdrivr.c (Get_Kerning): Use FT_Long for `middle'. (cff_get_glyph_name): Use cast for result of ft_strlen. * src/cff/cffparse.c (cff_parse_real): User cast for assigning `exp'. * src/cff/cffload.c (cff_index_get_pointers): Use FT_ULong for some local variables. (cff_charset_load, cff_encoding_load): Use casts to FT_UInt for some switch statements. (cff_font_load): Use cast in call to CFF_Load_FD_Select. * src/cff/cffobjs.c (cff_size_init): Use more casts. (cff_face_init): Use FT_Int32 for `flags'. * src/cff/cffgload.c (cff_operator_seac): Use cast for assigning `adx' and `ady'. (cff_decoder_parse_charstrings): Use FT_ULong for third parameter. Use more casts. * src/cff/cffcmap.c (cff_cmap_unicode_init): Use cast for `count'. * src/cid/cidload.c (cid_read_subrs): Use FT_ULong for `len'. * src/cid/cidgload.c (cid_load_glyph): Add missing cast for `cid_get_offset'. * src/psaux/t1decode.c (t1_decoder_parse_charstrings) <18>: Use cast for `num_points'. (t1_decoder_init): Use cast for assigning `decoder->num_glyphs'. * src/base/ftdebug.c (ft_debug_init): Use FT_Int. * include/freetype/internal/ftdriver.h (FT_Slot_LoadFunc): Use `FT_Int32' for fourth parameter. * src/base/ftobjs.c (open_face): Use cast for calling clazz->init_face. * src/raster/ftraster.c (Set_High_Precision): Use `1' instead of `1L'. (Finalize_Profile_Table, Line_Up, ft_black_init): Use casts. * src/raster/ftrend1.c (ft_raster1_render): Ditto. * src/sfnt/sfnt_dir_check: Compare `magic' with unsigned long constant. * builds/amiga/include/freetype/config/ftmodule.h: Updated.
David Turner d1245c0d 2002-08-27T22:34:20 updating sources to support the new FT_LOAD_TARGET_ constants to support target-specific hinting
David Turner b9b2cac6 2002-07-10T16:52:06 * src/cff/cffcmap.c, src/cff/cffcmap.h, Jamfile, rules.mk: new files added to support charmaps for CFF fonts * src/cff/cffload.c, src/cff/cffload.h, src/cff/cffobjs.c, src/cff/cffobjs.h, src/cff/cffparse.c, src/cffparse.h, src/cff/cffgload.c, src/cff/cffgload.h: adding support for CFF charmaps, reformatting the sources, and removing some bugs in the Encoding and Charset loaders
David Turner 27c322e9 2002-07-08T22:26:11 * include/freetype/freetype.h, src/base/ftobjs.h, freetype/internal/ftobjs.h, freetype/internal/psaux.h, freetype/internal/pshints.h, src/psaux/t1decode.c, src/cff/cffgload.h, src/cff/cffgload.c, src/pshinter/pshalgo1.h, src/pshinter/pshalgo1.c, src/pshinter/pshalgo2.h, src/pshinter/pshalgo2.c, src/pshinter/pshalgo3.h, src/pshinter/pshalgo3.c: Adding support for hinter-specific bit flags, and the new FT_Set_Hint_Flags high-level API
Werner Lemberg 48c984b5 2002-03-30T16:41:09 * src/cff/cffdrivr.c (cff_get_glyph_name): Fix debug message. * src/cff/cffobjs.c (CFF_Driver_Init, CFF_Driver_Done) [TT_CONFIG_OPTION_EXTEND_ENGINE]: Removed. * src/cff/sfobjs.c (SFNT_Load_Face) [TT_CONFIG_OPTION_EXTEND_ENGINE]: Ditto. * src/truetype/ttobjs.c (TT_Init_Driver, TT_Done_Driver) [TT_CONFIG_OPTION_EXTEND_ENGINE]: Ditto. * src/truetype/ttdriver.c, src/truetype/ttobjs.c, src/truetype/ttobjs.h: Renaming driver functions to the FT_<Subject>_<Action> scheme: TT_Init_Driver => TT_Driver_Init TT_Done_Driver => TT_Driver_Done TT_Init_Face => TT_Face_Init TT_Done_Face => TT_Face_Done TT_Init_Size => TT_Size_Init TT_Done_Size => TT_Size_Done TT_Reset_Size => TT_Size_Reset
David Turner ab4fc4da 2002-03-14T08:57:10 * include/freetype/internal/cfftypes.h, src/cff/*.c: updating the type definitions of the CFF font driver (i.e. CFF_Font => CFF_FontRec CFF_Font* => CFF_Font, etc...)
David Turner bc82f1bb 2002-03-01T02:26:22 * include/freetype/ftconfig.h: changed FT_LOCAL xxxx to FT_LOCAL( xxxx ) everywhere in the source. Sames goes for FT_LOCAL_DEF xxxx translated into FT_LOCAL_DEF( xxxxx )
David Turner 4d57024d 2002-02-24T02:59:24 * moving all code related to glyph loaders to "internal/ftgloadr.h" and "src/base/ftgloadr.c". Note also that the type "FT_GlyphLoader" is now a pointer to the structure "FT_GlyphLoaderRec"..
David Turner c8087481 2001-12-20T13:14:18 * docs/TODO: added "stem3 and counter hints support" to the TODO list for the Postscript hinter * docs/BUGS: closed the AUTOHINT-NO-SBITS bug. * src/pshinter/pshrec.c (t2_hint_stems), src/cff/cffobjs.h, src/cff/cffobjs.c, src/cff/cffload.c, src/cff/cffload.h, src/cff/cffgload.c, src/cff/cffgload.h, src/cff/cffdriver.c, include/freetype/internal/cfftypes.h: added Postscript hinter support to the CFF driver * src/base/ftobjs.c (FT_Done_Library): fixed a stupid bug that crashed the library on exit
David Turner 2b30c17f 2001-12-12T16:07:29 * src/pshint/pshglob.c: adding correct BlueScale/BlueShift support, plus family blues processing * src/cff/cffgload.c: started adding support for the Postscript hinter
Werner Lemberg 415235df 2001-06-28T17:49:10 finishing function header formatting updating copyrights
Werner Lemberg 93616ecb 2001-06-27T19:46:12 next round in function header formatting
David Turner 8d3a401f 2001-03-20T11:14:24 * builds/*/*-def.mk: changed the objects directory from "obj" to "objs" * include/freetype/config/ftheader.h: removed obsolete macros like FT_SOURCE_FILE, etc.. and added cache-specific macro definitions that were previously defined in <freetype/ftcache.h>. Added comments to be included in a new API Reference section. * src/*/*: removed the use of FT_SOURCE_FILE, etc.. now, each component needs to added its own directory to the include path at compile time. Modified all "rules.mk" and "descrip.mms" accordingly..
Werner Lemberg d573c7e7 2001-01-03T07:14:12 formatting
Tom Kacvinsky 8050a6b8 2001-01-03T00:17:58 This file was previously known as t2gload.h.