src


Log

Author Commit Date CI Message
Werner Lemberg 435046b5 2006-01-11T10:57:42 Formatting, improving comments.
Werner Lemberg adf828ff 2006-01-11T10:08:49 Fix Savannah bug #15056 and use pscmap service in psaux module. * include/freetype/internal/services/svpscmap.h (PS_UniMap): Use FT_UInt32 for `glyph_index'. (PS_Unicodes_InitFunc): Use FT_String for `glyph_names'. (PS_Unicodes_CharIndexFunc): Use FT_UInt32 for `unicode'. (PS_Unicodes_CharNextFunc): Make second argument a pointer to FT_UInt32. * src/psnames/psmodule.c (VARIANT_BIT, BASE_GLYPH): New macros. (ps_unicode_value): Set VARIANT_BIT in return value if glyph is a variant glyph (this is, it has non-leading `.' in its name). (compare_uni_maps): Sort base glyphs before variant glyphs. (ps_unicodes_init): Use FT_String for `glyph_names' argument. Reallocate only if number of used entries is much smaller. Updated to handle variant glyphs. (ps_unicodes_char_index, ps_unicodes_char_next): Prefer base glyphs over variant glyphs. Simplify code. * src/psaux/t1cmap.c (t1_cmap_uni_pair_compare): Removed. (t1_cmap_unicode_init, t1_cmap_unicode_char_index, t1_cmap_unicode_char_next): Use pscmap service. (t1_cmap_unicode_done): Updated. * src/psaux/t1cmap.h (T1_CMapUniPair): Removed. (T1_CMapUnicode): Use PS_Unicodes structure.
Suzuki, Toshiya (鈴木俊哉) f8d16cc5 2006-01-11T09:28:38 * Fix 'deprecated' warnings in building for MacOS
Werner Lemberg 6cdab92b 2006-01-08T22:34:01 * docs/CHANGES: Updated. * include/freetype/ftmodapi.h (FT_Module_Get_Flags): New declaration. * src/base/ftobjs.c (FT_Module_Get_Flags): New function.
Werner Lemberg 30bd2844 2006-01-08T19:38:42 * src/base/ftutil.c (ft_highpow2): s/FT_BASE/FT_BASE_DEF/. Reported by Niels Boldt <nielsboldt@gmail.com>.
Werner Lemberg e8f92af3 2006-01-08T13:43:30 * src/pcf/pcfread.c (pcf_get_bitmaps): Remove unused variable `bitmaps'. From Yu Lei <yulei0@gmail.com>.
Suzuki, Toshiya (鈴木俊哉) 3dfcef69 2005-12-28T06:47:12 add '\n' to the end of src/sfnt/ttbdf.c
Werner Lemberg 748b171d 2005-12-25T09:15:09 Doc typos. From Huw Davies.
Werner Lemberg 083ba0b7 2005-12-23T15:10:54 Formatting, documentation improvements.
David Turner e6bb9533 2005-12-23T13:32:06 * Jamfile, docs/reference/README: fix it so that "jam refdoc" works correctly to generate the API reference in 'docs/reference' * src/tools/docmaker/tohtml.py: update to output nicer fields lists in the API reference * src/base/ftobjs.c (FT_Load_Glyph): FT_LOAD_TARGET_LIGHT now forces auto-hinting * freetype/freetype.h: updating the documentation for FT_LOAD_TARGET_XXX and FT_Render_Mode values
Suzuki, Toshiya (鈴木俊哉) 53be6e9b 2005-12-23T12:22:46 ftmac.c counts supported faces only
Werner Lemberg b79b5133 2005-12-20T12:01:58 Formatting, improving comments.
Wu, Chia-I (吳佳一) ce34d122 2005-12-17T13:12:49 * src/truetype/ttinterp.c (Update_Max): Set current size of buffer correctly (so that memory debug system won't panic).
Wu, Chia-I (吳佳一) dcb8b710 2005-12-16T14:27:14 * include/freetype/internal/ftobjs.h (ft_glyphslot_grid_fit_metrics), src/base/ftobjs.c (ft_glyphslot_grid_fit_metrics): Removed. * src/base/ftobjs.c (ft_recompute_scaled_metrics): Do not round. * src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph), src/truetype/ttgload.c (compute_glyph_metrics), src/type1/t1gload.c (T1_Load_Glyph): Do not round glyph metrics. * doc/CHANGES: Mention the changes.
David Turner 89a2a4b5 2005-12-14T20:38:15 * include/freetype/config/ftoption.h, include/freetype/config/ftstdlib.h, include/freetype/internal/tttypes.h, src/sfnt/Jamfile, src/sfnt/rules.mk, src/sfnt/sfdriver.c, src/sfnt/ttbdf.h, src/sfnt/ttbdf.c, src/sfnt/sfobjs.c: Added support for an embedded 'BDF ' table within SFNT-based bitmap font files. This is used to store atoms & properties from the original BDF fonts that were used to generate the font file. the feature is controled by TT_CONFIG_OPTION_BDF within 'ftoption.h' and is used to implement FT_Get_BDF_Property for these font files. At the moment, this is still experimental, the BDF table format isn't cast into stone yet.
David Turner 5b5f382b 2005-12-14T16:37:15 * src/autofit/aflatin.c, src/autofit/afhints.c: changed the implementation of the LIGHT hinting mode to completely disable horizontal hinting. This is an experimental effort to integrate David Chester's latest patch without fucking the other hinting modes as well. Note that this doesn't force auto-hinting for all fonts however.
Werner Lemberg 364db082 2005-12-07T20:34:11 * src/sfnt/sfobjc.c (sfnt_init_face): Move tag check to... * src/sfnt/ttload.c (sfnt_init): Here, before handling TTCs.
Werner Lemberg 3b8db669 2005-12-06T10:47:44 Fix ChangeLog and source code comment.
Wu, Chia-I (吳佳一) a3690cda 2005-12-06T08:24:01 * src/truetype/ttobjs.c (tt_size_init): size->ttmetrics.valid is initialized twice. size->strike_index is not initialized.
Werner Lemberg a10a9f91 2005-12-04T12:48:57 Fix source code comment.
Werner Lemberg 2a0903a5 2005-12-03T08:13:43 * src/type42/t42objs.x (T42_Face_Init): Replace call to FT_New_Memory_Face with call to FT_Open_Face to pass `params'.
Werner Lemberg 44e47d5f 2005-11-30T18:47:49 * src/sfnt/ttcmap.c, src/sfnt/ttcmap.h: s/TT_CMAP_FLAG_OVERLAPPED/TT_CMAP_FLAG_OVERLAPPING/.
Wu, Chia-I (吳佳一) a28bc4c7 2005-11-30T02:39:10 * src/sfnt/ttcmap.c (tt_cmap4_char_map_binary, tt_cmap12_char_map_binary): Fix compiler warnings.
Wu, Chia-I (吳佳一) a0911343 2005-11-29T11:32:53 Major update to distinguish between unsorted and overlapped segments for cmap format 4. For overlapped but sorted segments, which is previously considered unsorted, we still use binary search. * src/sfnt/ttcmap.h (struct TT_CMapRec_): Replace `unsorted' by `flags'. (TT_CMAP_FLAG_UNSORTED, TT_CMAP_FLAG_OVERLAPPED): New macros. * src/sfnt/ttcmap.c (OPT_CMAP4): Removed as it is always defined. (struct TT_CMap4Rec_): Remove `old_charcode' and `table_length'. (tt_cmap4_reset): Removed. (tt_cmap4_init): Updated accordingly. (tt_cmap4_next): Updated accordingly. Take care of overlapped segments. (tt_cmap4_validate): Make sure the subtable is large enough. Do not check glyph_ids because some fonts set the length wrongly. Also, when all segments have offset 0, glyph_ids is always invalid. It does not cause any problem so far only because the check misses equality. Distinguish between unsorted and overlapped segments. (tt_cmap4_char_map_linear, tt_cmap4_char_map_binary): New functions to do "charcode => glyph index" by linear/binary search. (tt_cmap4_char_index, tt_cmap4_char_next): Use tt_cmap4_char_map_linear and tt_cmap4_char_map_binary. (tt_face_build_cmaps): Treat the return value of validator as flags for cmap.
Wu, Chia-I (吳佳一) 569ec4ee 2005-11-29T11:27:51 * src/sfnt/ttcmap.c (struct TT_CMap12Rec_, tt_cmap12_init, tt_cmap12_next): New struct/function for fast "next char". (tt_cmap12_char_map_binary): New function to do "charcode => glyph index" by binary search. (tt_cmap12_char_index, tt_cmap12_char_next): Use tt_cmap12_char_map_binary. (tt_face_build_cmaps): Check table and offset correctly (equality is missing).
Werner Lemberg 67ba2118 2005-11-21T17:32:03 * src/bdf/bdfdrivr.c (bdf_interpret_style, BDF_Face_Done): Fix small memory leak.
Werner Lemberg 840232ad 2005-11-21T12:36:42 * src/sfnt/ttload.c (sfnt_init): Add tracing message.
Wu, Chia-I (吳佳一) 275be9ba 2005-11-21T03:05:34 * src/sfnt/ttsbit0.c (tt_sbit_decoder_load_image): image_offset is added to image_start twice when image_format is 2 or 5.
Wu, Chia-I (吳佳一) d81947e4 2005-11-21T03:04:03 * src/sfnt/sfobjs.c (sfnt_init_face): Check that format_tag is known before loading the table directory. * src/sfnt/ttload.c (tt_face_load_sfnt_header, tt_face_load_directory): Delay sfnt_dir_check from tt_face_load_sfnt_header to tt_face_load_directory.
Wu, Chia-I (吳佳一) 6f1eca04 2005-11-20T08:24:24 * src/sfnt/ttload.c (sfnt_dir_check): Clean up and return correct error code. (sfnt_init): New function to fill in face->ttc_header. A non-TTC font is synthesized into a TTC font with one offset table. (tt_face_load_sfnt_header): Use sfnt_init. Fix an invalid access when the font is TTC and face_index is -1.
Werner Lemberg 6c990459 2005-11-18T21:10:59 * src/sfnt/ttload.c (tt_face_load_metrics): Ignore excess number of metrics instead of aborting. Patch suggested by Derek Noonburg. * src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph), src/type1/t1gload.c (T1_Load_Glyph): Scale the glyph properly if no hinter is available. * docs/CHANGES: Mention scaling bug.
Werner Lemberg 1a293d6c 2005-11-18T08:23:06 * src/sfnt/ttload.c (tt_face_load_metrics): Ignore excess number of metrics instead of aborting. Patch suggested by Derek Noonburg.
Suzuki, Toshiya (鈴木俊哉) 8d81d41a 2005-11-18T07:47:06 add FT_TrueTypeGX_Free() etc to free the buffers allocated by gxvalid, otvalid
Werner Lemberg cfc0cf2e 2005-11-17T08:12:00 Add vertical metrics support to OpenType CFF outlines. Based on a patch from Mike Moening <MikeM@RetekSolutions.com> * src/cff/cffgload.c (cff_face_get_vertical_metrics): New function. (cff_slot_load): Use cff_face_get_vertical_metrics. * docs/CHANGES: Updated.
Wu, Chia-I (吳佳一) 35bfc0f1 2005-11-17T01:53:07 * src/base/ftcalc.c (FT_MulTo64): Commented out. * include/freetype/internal/ftcalc.h (FT_SqrtFixed), src/base/ftcalc.c (FT_SqrtFixed), include/freetype/internal/ftdebug.h (FT_Trace_Get_Count, FT_Trace_Get_Name, FT_Message, FT_Panic), src/base/ftdebug.c (FT_Trace_Get_Count, FT_Trace_Get_Name, FT_Message, FT_Panic), include/freetype/internal/ftobjs.h (FT_New_Memory, FT_Done_Memory), include/freetype/internal/ftstream.h (FT_Stream_Open), src/base/ftsystem.c (FT_New_Memory, FT_Done_Memory, FT_Stream_Open): s/FT_EXPORT/FT_BASE/. * builds/exports.mk: Manually add TT_New_Context to EXPORTS_LIST too.
Werner Lemberg 674ba91f 2005-11-16T18:09:27 formatting
David Turner f7cc1814 2005-11-15T17:30:56 * src/base/fttrigon.c (ft_trig_prenorm): fixed a bug that created invalid computations, resulting in very weird bugs in TrueType bytecode hinted fonts * src/truetype/ttinterp.c: redefined FT_UNUSED_EXEC to not perform a structure copy each time. Wooot. !
Werner Lemberg d829ff76 2005-11-12T17:07:11 * src/cache/ftccache.c (FTC_Cache_Clear), src/cache/ftcmanag.c (FTC_Manager_Check): Remove FT_EXPORT_DEF tag. * src/base/ftcalc.c (FT_Add64): Remove FT_EXPORT_DEF tag. (FT_Div64by32, FT_Sqrt32): Commented out. Unused. * include/freetype/internal/ftcalc.h (SQRT_32): Removed. Unused. (FT_Sqrt32): Commented out. Unused. * include/freetype/cache/ftccache.h: s/ftc_node_destroy/FTC_Node_Destroy/. * src/cache/ftccback.h (ftc_node_destroy): New declaration. * src/cache/ftccache.c (ftc_node_destroy): Use FT_LOCAL_DEF tag. (FTC_Node_Destroy): New exported wrapper function for ftc_node_destroy. * src/cache/ftcmanag.c: Include ftccback.c.
Werner Lemberg cee37a3b 2005-11-12T07:34:40 Clean-up.
Werner Lemberg 4309edcc 2005-11-11T15:49:14 * src/autofit/afangles.c, src/autofit/aftypes.h (af_angle_diff): Comment out. Unused. * builds/beos/beos.mk: Call beos-def.mk before anything else to define the separator. * builds/unix/unix-cc.in (LINK_LIBRARY): Add `-no-undefined' flag.
Werner Lemberg ea4c3dc4 2005-11-08T09:10:16 * src/type1/t1afm.c (T1_Read_PFM): Zero offset means `no kerning table available'. From Sergey Tolstov <stolstov@esri.com>.
Werner Lemberg b2d02530 2005-11-04T06:58:49 * src/base/ftobjs.c (FT_Open_Face): Avoid possible memory leak. Make compiling instructions in docs/CUSTOMIZE work again. * builds/unix/unix-cc.in (CPPFLAGS): New variable. (CFLAGS): Don't include @CPPFLAGS@. * builds/freetype.mk (FT_CFLAGS): Add CPPFLAGS.
David Turner 9fbd2ab8 2005-10-28T16:14:14 - various performance enhancements - fixing apinames.c, adding support for Watcom and Borland compilers - adding generation of exported symbols list to the build system, including the Unix one !! sorry Werner, I have no time to document this in ChangeLog at the moment
Suzuki, Toshiya (鈴木俊哉) 4511576b 2005-10-28T15:39:58 fix invalid cast from NULL to integer typed variables
Werner Lemberg 43b057b6 2005-10-26T18:37:40 * src/sfnt/sfdriver.c (sfnt_interface): Move out `tt_face_get_kerning' from a #ifdef clause. Reported by Tony J. Ibbs <tibs@sj.co.uk>.
Werner Lemberg 6c0e734f 2005-10-23T19:31:01 * src/base/ftdbgmem.c (ft_mem_debug_realloc): Make it compile with C++.
Werner Lemberg 84cacd23 2005-10-23T19:25:41 formatting, comment clean-up
Werner Lemberg f50c73dd 2005-10-22T10:43:12 whitespace
David Turner 398d64c0 2005-10-21T10:01:25 * src/base/ftdbgmem.c: another realloc memory counting bug fix * src/tools/Jamfile: adding missing file * src/lzw/Jamfile: fixing incorrect source file reference
Werner Lemberg 560d5fed 2005-10-21T09:08:28 Minor cleanups. Copyright issues.
David Turner c1b6d082 2005-10-20T15:33:34 * src/base/ftdbgmem.c: fixes to better account for memory reallocations * src/lzw/ftlzw2.c, src/lzw/ftzopen.h, src/lzw/ftzopen.c, src/lzw/rules.mk: first version of LZW loader re-implementation. Apparently, saves about 260 KB of heap memory when loading tir24.pcf.Z
Wu, Chia-I (吳佳一) 7e30776e 2005-10-20T02:13:46 * include/freetype/ftbitmap.h (FT_Bitmap_Copy, FT_Bitmap_Embolden), src/base/ftbdf.c (FT_Get_BDF_Property), src/cache/ftcmru.c (FTC_MruList_Reset, FTC_MruList_Done, FTC_MruList_Lookup): Misuse of FT_EXPORT/FT_EXPORT_DEF.
Wu, Chia-I (吳佳一) 2293bb15 2005-10-19T08:07:38 * src/truetype/ttgload.c (TT_Load_Glyph): Allow size->ttmetrics to be invalid when FT_LOAD_NO_SCALE is set.
Werner Lemberg 8e6c56f9 2005-10-18T06:09:13 Formatting, CR/LF issues.
Werner Lemberg 6d24acb9 2005-10-18T05:59:30 whitespace
David Turner 92f30c81 2005-10-17T21:17:20 * src/base/ftobjs.c (FT_Open_Face): don't call FT_New_GlyphSlot and FT_New_Size if we're opening a face with face_index < 0 (which is only used for testing the format). * src/gxvalid/gxvmort0.c: removed compiler warning
David Turner 6c5299e4 2005-10-16T08:29:12 * src/tools/apinames.c: adding new tool to extract public API function names from header files
Werner Lemberg 7734a1f7 2005-10-05T15:18:29 Add FT_FACE_FLAG_HINTER to indicate that a specific font driver has a hinting engine of its own. * include/freetype/freetype.h (FT_FACE_FLAG_HINTER): New macro. * src/cff/cffobjs.c (cff_face_init), src/cid/cidobjs.c (cid_face_init), src/truetype/ttobjs.c (tt_face_init) [TT_CONFIG_OPTION_BYTECODE_INTERPRETER], src/type1/t1objs.c (T1_Face_Init), src/type42/t42objs.c (T42_Face_Init) [TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Update face flags. * docs/CHANGES: Document it.
Werner Lemberg 7c25946f 2005-09-28T07:34:45 Formatting.
David Turner f582cf3f 2005-09-26T09:27:09 * src/autofit/aflatin.c (af_latin_compute_stem_width): fixed bad computation of the "vertical" flag, causing ugly things in LCD mode and others.
David Turner 03ee7c82 2005-09-23T14:14:15 * src/autofit/afangles.c (af_angle_atan): replaced CORDIC-based implementation with one using lookup tables. This simple thing speeds glyph loading by 18% according to ftbench !
David Turner 18e44430 2005-09-23T13:22:10 * src/base/Jamfile: adding src/base/ftgxval.c * src/gxvalid/gxvbsln.c, src/gxvalid/gxvcommn.c, src/gxvalid/gxvfeat.c, src/gxvalid/gxvjust.c, src/gxvalid/gxvkern.c, src/gxvalid/gxvlcar.c, src/gxvalid/gxvmort.c, src/gxvalid/gxvmort0.c, src/gxvalid/gxvmort1.c, src/gxvalid/gxvmort2.c, src/gxvalid/gxvmort4.c, src/gxvalid/gxvmort5.c, src/gxvalid/gxvmorx.c, src/gxvalid/gxvmorx0.c, src/gxvalid/gxvmorx1.c, src/gxvalid/gxvmorx2.c, src/gxvalid/gxvmorx5.c, src/gxvalid/gxvopbd.c, src/gxvalid/gxvprop.c, src/sfnt/sfdriver.c, src/truetype/ttgload.c: removing _many_ compiler warnings when compiling with Visual C++ at maximum level (/W4)
David Turner 99ded0be 2005-09-23T08:00:51 * src/autofit/aflatin.c (af_latin_hints_init): fixed a bug that prevented internal hint mode bitflags from being computed correctly
Werner Lemberg b3feb80e 2005-09-23T07:40:28 * docs/CHANGES: Mention SING Glyphlet support. Other minor doc fixes and CRLF issues.
David Turner ad20e6ba 2005-09-22T20:37:51 * src/base/Jamfile: fixing broken Jamfile
Werner Lemberg 8eacad6d 2005-09-19T07:07:11 * freetype2/src/sfnt/ttload.c (sfnt_dir_check): Modified to allow a font to have no `head' table if tables `SING' and `META' are present; this is to support `SING Glyphlet'. `SING Glyphlet' is an extension to OpenType developed by Adobe primarily to facilitate adding supplemental glyphs to an OpenType font (with emphasis on, but not necessariy limited to, gaiji to a CJK font). A SING Glyphlet Font is an OpenType font that contains the outline(s), either in a `glyf' or `CFF' table, for a glyph; `cmap', `BASE', and `GSUB' tables are present with the same format and functionaliy as a regular OpenType font; there are no `name', `head', `OS/2', and `post' tables; there are two new tables, `SING' which contains details about the glyphlet, and `META' which contains metadata. Further information on the SING Glyphlet format can be found at: http://www.adobe.com/products/indesign/sing_gaiji.html * freetype2/include/freetype/ttags.h (TTAG_SING, TTAG_META): New macros for the OpenType tables `SING' and `META'. These two tables are used in SING Glyphlet Format fonts.
Werner Lemberg 7e25c688 2005-09-09T18:00:06 * src/sfnt/sfobjs.c (sfnt_load_face): Reactivate code to set FT_FACE_FLAG_KERNING which has been commented out erroneously. * docs/CHANGES: Document it.
Werner Lemberg 99aa14c2 2005-09-05T19:31:27 Fixes for `make multi' and using C++ compiler. * gxvalid/gxvcommn.c (gxv_set_length_by_ushort_offset, gxv_set_length_by_ulong_offset, gxv_array_getlimits_byte, gxv_array_getlimits_ushort): Declare with FT_LOCAL_DEF. (gxv_compare_ranges): Make it static. (gxv_LookupTable_fmt0_validate, gxv_LookupTable_fmt2_validate, gxv_LookupTable_fmt4_validate, gxv_LookupTable_fmt6_validate, gxv_LookupTable_fmt8_validate, gxv_LookupTable_validate): Improve trace messages. (gxv_StateArray_validate, gxv_XStateArray_validate): s/class/clazz/. (GXV_STATETABLE_HEADER_SIZE, GXV_STATEHEADER_SIZE, GXV_XSTATETABLE_HEADER_SIZE, GXV_XSTATEHEADER_SIZE): Move to gxvcommn.h. * gxvalid/gxvcommn.h: Add prototypes for gxv_StateTable_subtable_setup, gxv_XStateTable_subtable_setup, gxv_XStateTable_validate, gxv_array_getlimits_byte, gxv_array_getlimits_ushort, gxv_set_length_by_ushort_offset, gxv_set_length_by_ulong_offset, gxv_odtect_add_range, gxv_odtect_validate. (GXV_STATETABLE_HEADER_SIZE, GXV_STATEHEADER_SIZE, GXV_XSTATETABLE_HEADER_SIZE, GXV_XSTATEHEADER_SIZE): Moved from gxvcommn.c. * src/gxvalid/gxvbsln.c (gxv_bsln_LookupValue_validate, gxv_bsln_parts_fmt1_validate): Improve trace messages. * gxvalid/gxvfeat.c: Split off predefined registry stuff to... * gxvalid/gxvfeat.h: New file. * gxvalid/gxvjust.c (gxv_just_wdc_entry_validate): Improve trace message. * gxvalid/gxvkern.c (GXV_kern_Dialect): Add KERN_DIALECT_UNKNOWN. (gxv_kern_subtable_fmt1_valueTable_load, gxv_kern_subtable_fmt1_subtable_setup, gxv_kern_subtable_fmt1_entry_validate): Fix C++ compiler errors. (gxv_kern_coverage_validate): Use KERN_DIALECT_UNKWOWN. Improve trace message. (gxv_kern_validate_generic): Fix C++ compiler error. Improve trace message. (gxv_kern_validate_classic): Fix C++ compiler error. * gxvalid/gxvmort0.c (gxv_mort_subtable_type0_validate): Declare with FT_LOCAL_DEF. * gxvalid/gxvmort1.c (gxv_mort_subtable_type1_substitutionTable_load, gxv_mort_subtable_type1_subtable_setup): Fix C++ compiler errors. (gxv_mort_subtable_type1_substTable_validate): Improve trace message. (gxv_mort_subtable_type1_validate): Declare with FT_LOCAL_DEF. * gxvalid/gxvmort2.c (gxv_mort_subtable_type2_opttable_load, gxv_mort_subtable_type2_subtable_setup, gxv_mort_subtable_type2_ligActionOffset_validate, gxv_mort_subtable_type2_ligatureTable_validate): Fix C++ compiler errors. (gxv_mort_subtable_type2_validate): Declare with FT_LOCAL_DEF. * gxvalid/gxvmort4.c (gxv_mort_subtable_type4_validate): Declare with FT_LOCAL_DEF. * gxvalid/gxvmort5.c (gxv_mort_subtable_type5_subtable_setup, gxv_mort_subtable_type5_InsertList_validate): Fix C++ compiler errors. (gxv_mort_subtable_type5_validate): Declare with FT_LOCAL_DEF. * gxvalid/gxvmort.c: Include gxvfeat.h. (gxv_mort_featurearray_validate, gxv_mort_coverage_validate): Declare with FT_LOCAL_DEF. (gxv_mort_subtables_validate, gxv_mort_validate): Improve trace messages. * gxvalid/gxvmort.h (gxv_mort_feature_validate): Remove. * gxvalid/gxvmorx0.c (gxv_morx_subtable_type0_validate): Declare with FT_LOCAL_DEF. * gxvalid/gxvmorx1.c (gxv_morx_subtable_type1_substitutionTable_load, gxv_morx_subtable_type1_subtable_setup, gxv_morx_subtable_type1_entry_validate, gxv_morx_subtable_type1_substitutionTable_validate): Fix C++ compiler errors. (gxv_morx_subtable_type1_validate): Declare with FT_LOCAL_DEF. * gxvalid/gxvmorx2.c (gxv_morx_subtable_type2_opttable_load, gxv_morx_subtable_type2_subtable_setup, gxv_morx_subtable_type2_ligActionIndex_validate, gxv_morx_subtable_type2_ligatureTable_validate): Fix C++ compiler errors. (gxv_morx_subtable_type2_validate): Declare with FT_LOCAL_DEF. Fix typo. * gxvalid/gxvmorx4.c (gxv_morx_subtable_type4_validate): Declare with FT_LOCAL_DEF. * gxvalid/gxvmorx5.c (gxv_morx_subtable_type5_insertionGlyph_load, gxv_morx_subtable_type5_subtable_setup): Fix C++ compiler error. (gxv_morx_subtable_type5_validate): Declare with FT_LOCAL_DEF. * gxvalid/gxvmorx.c (gxv_morx_subtables_validate, gxv_morx_validate): Improve trace message. * gxvalid/gxvopbd.c (gxv_opbd_LookupFmt4_transit): Fix compiler warnings. (gxv_opbd_validate): Improve trace message. * gxvalid/gxvprop.c: Decorate constants with `U' and `L' where appropriate. (gxv_prop_zero_advance_validate, gxv_prop_validate): Improve trace message. * gxvalid/gxvtrak.c (gxv_trak_trackTable_validate): Remove unused parameter. Update all callers. (gxv_trak_validate): Improve trace message. * rules.mk (GXV_DRV_H): Add gxvfeat.h.
Werner Lemberg 4a7f0b1c 2005-09-01T07:33:03 * src/gxvalid/gxvbsln.c (GXV_BSLN_VALUE_EMPTY): Add `U'. * src/gxvalid/gxmort1.c (GXV_MORT_SUBTABLE_TYPE1_HEADER_SIZE), src/gxvalid/gxmort2.c (GXV_MORT_SUBTABLE_TYPE2_HEADER_SIZE): Fix typo. * src/gxvalid/gxvmorx0.c, src/gxvalid/gxvmorx1.c, src/gxvalid/gxvmorx2.c, src/gxvalid/gxvmorx4.c, src/gxvalid/gxvmorx5.c, src/gxvalid/gxvmort.c: Improve tracing messages. Decorate constants with `U' and `L' where appropriate. Fix compiler warnings. Formatting.
Werner Lemberg a4aa1c5b 2005-08-31T22:39:23 * src/gxvalid/gxvbsln.c (gxv_bsln_validate): Fix tracing message. * src/gxvalid/gxvcommn.c (gxv_odtect_add_range): Use `const'. * src/gxvalid/gxvfeat.c, src/gxvalid/gxvjust.c, src/gxvalid/gxvkern.c, src/gxvalid/gxvlcar.c, src/gxvalid/gxvmod.c, src/gxvalid/gxvmort0.c, src/gxvalid/gxvmort1.c, src/gxvalid/gxvmort2.c, src/gxvalid/gxvmort4.c, src/gxvalid/gxvmort5.c, src/gxvalid/gxvmort.c: Improve tracing messages. Decorate constants with `U' and `L' where appropriate. Fix compiler warnings.
Werner Lemberg eff1ee3b 2005-08-31T20:40:00 * src/truetype/ttgload.c (load_truetype_glyph): Fix typo.
Werner Lemberg 9b71edb0 2005-08-31T16:29:51 * src/gxvalid/gxvbsln.c: Fix compiler warnings. * src/gxvalid/gxvcommn.c: Fix compiler warnings. (gxv_XEntryTable_validate, gxv_compare_ranges): Remove unused parameter. Update all callers. Improve tracing messages. Some formatting.
Werner Lemberg 4814030b 2005-08-31T07:13:27 * src/gxvalid/README: Revised.
Werner Lemberg a723526a 2005-08-30T00:22:46 * include/freetype/freetype.h, include/freetype/ftchapters.h: Add a preliminary section with some explanations about user allocation. * src/tools/docmaker/tohtml.py (HtmlFormatter.section_enter): Don't abort if there are no data types, functions, etc., in a section. Print synopsis only if we have a data type, function, etc. * docs/INSTALL.ANY, docs/INSTALL, docs/INSTALL.UNX, docs/CUSTOMIZE, docs/INSTALL.GNU, docs/TRUETYPE, docs/DEBUG, docs/UPGRADE.UNX, docs/VERSION.DLL, docs/formats.txt: Revised, formatted.
Werner Lemberg 3bfb1c08 2005-08-29T11:59:18 * src/truetype/ttgload.c [TT_MAX_COMPOSITE_RECURSE]: Removed. (load_truetype_glyph): Limit recursion depth by `maxComponentDepth'.
Werner Lemberg 169a6d8a 2005-08-25T06:00:55 * docs/CHANGES: Mention gxvalid module. Formatting and other minor changes.
Werner Lemberg 55b0908e 2005-08-24T08:04:56 * src/autofit/aflatin.c (af_latin_metrics_scale): Initialize render mode properly. Reported by chris@dokein.co.uk.
Suzuki, Toshiya (鈴木俊哉) a4386214 2005-08-24T04:31:31 Add gxvalid module to validate TrueType GX/AAT tables. Modifications on existing files: * Jamfile: Register gxvalid module. * src/base/Jamfile: Register ftgxval.c. * src/base/rule.mk: Register ftgxval.c. * docs/INSTALL.ANY: Register gxvalid/gxvalid.c. * include/freetype/config/ftheader.h: Add macro to include gxvalid header file, FT_GX_VALIDATE_H. * include/freetype/config/ftmodule.h: Register gxv_module_class. * include/freetype/ftchapters.h: Add comment about gx_validation. * include/freetype/ftotval.h: Change keyword FT_VALIDATE_XXX to FT_VALIDATE_OTXXX to co-exist gxvalid. * include/freetype/tttags.h: Add tag for TrueType GX/AAT tables. * include/freetype/internal/ftserv.h: Add macro to use gxvalid service, FT_SERVICE_GX_VALIDATE_H * include/freetype/internal/fttrace.h: Add trace facilities for gxvalid. New files on existing directories: * include/freetype/internal/services/svgxval.h: Registration of validation service for TrueType GX/AAT and classic kern table. * include/freetype/ftgxval.h: Public API definition to use gxvalid. * src/base/ftgxval.c: Public API of gxvalid. New files under src/gxvalid/: * src/gxvalid/Jamfile src/gxvalid/README src/gxvalid/module.mk src/gxvalid/rules.mk src/gxvalid/gxvalid.c src/gxvalid/gxvalid.h src/gxvalid/gxvbsln.c src/gxvalid/gxvcommn.c src/gxvalid/gxvcommn.h src/gxvalid/gxverror.h src/gxvalid/gxvfeat.c src/gxvalid/gxvfgen.c src/gxvalid/gxvjust.c src/gxvalid/gxvkern.c src/gxvalid/gxvlcar.c src/gxvalid/gxvmod.c src/gxvalid/gxvmod.h src/gxvalid/gxvmort.c src/gxvalid/gxvmort.h src/gxvalid/gxvmort0.c src/gxvalid/gxvmort1.c src/gxvalid/gxvmort2.c src/gxvalid/gxvmort4.c src/gxvalid/gxvmort5.c src/gxvalid/gxvmorx.c src/gxvalid/gxvmorx.h src/gxvalid/gxvmorx0.c src/gxvalid/gxvmorx1.c src/gxvalid/gxvmorx2.c src/gxvalid/gxvmorx4.c src/gxvalid/gxvmorx5.c src/gxvalid/gxvopbd.c src/gxvalid/gxvprop.c src/gxvalid/gxvtrak.c: New files, gxvalid body.
Werner Lemberg 2752bd1a 2005-08-22T07:11:31 * src/truetype/ttgload.c (TT_Load_Glyph): Only translate outline to (0,0) if bit 1 of the `head' table isn't set. This improves rendering of buggy fonts.
Wu, Chia-I (吳佳一) 15c1f5d3 2005-08-20T08:17:44 * src/truetype/ttdriver.c (Load_Glyph): Don't check the validity of ttmetrics here. TrueType fonts with only sbits always have ttmetrics.valid set to false. * src/truetype/ttgload.c (TT_Load_Glyph): Check that ttmetrics is valid before loading outline glyph. * src/cache/ftcimage.c (FTC_INode_New): Fix a memory leak.
Werner Lemberg 3774b997 2005-08-20T05:45:42 * src/sfnt/ttload.c (tt_face_load_metrics_header): Ignore missing `hhea' table for SFNT Mac fonts. Change based on a patch by mpsuzuki@hiroshima-u.ac.jp.
Werner Lemberg 53ac64e3 2005-08-20T05:33:09 * src/otvalid/otvmod.c (otv_validate): Use ft_validator_run instead of ft_setjmp.
Werner Lemberg ffa033b1 2005-08-19T08:56:29 * src/truetype/ttgload.c (load_truetype_glyph): Fix compiler warnings. Formatting.
Werner Lemberg da245ee3 2005-08-18T07:40:32 Forgot to check in last change.
Wu, Chia-I (吳佳一) d6d73989 2005-08-16T02:06:01 * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Update copyright messages.
Wu, Chia-I (吳佳一) 0142e6af 2005-08-16T01:54:59 * src/truetype/ttinterp.c, src/truetype/ttinterp.h: Remove original TT_Done_Context and rename TT_Destroy_Context to TT_Done_Context with slight changes. * src/truetype/ttobjs.h (tt_slot_init): New function. * src/truetype/ttobjs.c (tt_driver_init): Initialize execution context here. (tt_slot_init): New function to create extra points for the internal glyph loader. We then use it directly, instead of face's glyph loader, when loading glyph. * src/truetype/ttdriver.c: Use tt_slot_init for glyph slot initialization. (TT_Load_Glyph): Load flag dependencies are handled here. Return error if size is NULL. * src/truetype/ttgload.c: Heavy cleanup and refactor. (TT_Hint_Glyph): New funcion to hint a zone, prepared by caller. (TT_Process_Simple_Glyph): Use loader->pp's instead of recalculating. Use TT_Hint_Glyph. No need to save/restore loader->stream before/after TT_Vary_Get_Glyph_Deltas now. (TT_LOADER_SET_PP): New macro to calculate and set the four phantom points. (TT_Process_Composite_Component, TT_Process_Composite_Glyph, load_truetype_glyph): Refactor load_truetype_glyph into these three functions. Never set exec->glyphSize to 0. (close #13107) Forget glyph frame before calling TT_Process_Simple_Glyph. (TT_Load_Glyph, load_sbit_image, tt_loader_init): Refactor TT_Load_Glyph into these three functions. Set various fields of `glyph' here, instead of in load_truetype_glyph and compute_glyph_metrics.
Werner Lemberg b2d65d75 2005-08-03T21:21:11 * src/sfnt/sfdriver.c (sfnt_interface) [FT_OPTIMIZE_MEMORY]: Reactivate pointers to tt_find_sbit_image and tt_load_sbit_metrics to make X work again.
Werner Lemberg 8e3fc5ea 2005-08-03T21:17:53 * src/otvalid/otvcommn.h: Remove dead code. Formatting.
Wu, Chia-I (吳佳一) 89fff9b9 2005-07-31T11:41:54 * src/truetype/ttobjs.h (tt_size_run_fpgm, tt_size_run_prep): New functions. * src/truetype/ttobjs.c (tt_size_run_fpgm, tt_size_run_prep): New functions. (tt_size_init): Add 4, instead of 2, (phantom) points to twilight zone. Move code that runs fpgm to tt_size_run_fpgm. (Reset_Outline_Size): Move code that runs prep to tt_size_run_prep. (tt_glyphzone_new): Allocate right size of arrays. Set max_points and max_contours properly.
Wu, Chia-I (吳佳一) 2a41ab9e 2005-07-26T08:14:03 * src/truetype/ttdriver.c (Set_Char_Sizes): Avoid unnecessary computations and clean up. * src/truetype/ttobjs.h (struct TT_SizeRec_): Comment on the internal copy of metrics.
Werner Lemberg baed3dd0 2005-07-13T06:58:13 Oops! Undo private change.
Werner Lemberg 07437dba 2005-07-13T06:56:08 * include/freetype/ftoutln.h (FT_Outline_Embolden): Fix prototype. Reported by Xerxes.
David Turner c5621628 2005-06-30T11:46:46 * src/sfnt/ftbitmap.c, src/truetype/ttgload.c, src/sfnt/ttcmap.c: removing compiler warnings (Visual C++ /W4) * Jamfile, src/otvalid/{otvcommn.h,otvgdef.c,otvgpos.c,otvgsub.c, otvjstf.c}: modified the code to use a different pre-processor trick to implement the OTV_NEST1, OTV_NEST2 and OTV_NEST3 macros. The code now compiles neatly with Visual C++. The 'otvalid' module has been put in the Jamfile build again.
Werner Lemberg 7b33dca4 2005-06-23T20:31:48 Formatting.
Wu, Chia-I (吳佳一) 8cfb220e 2005-06-20T09:04:50 * include/freetype/internal/ftobjs.h, src/base/ftobjs.c: New function ft_glyphslot_grid_fit_metrics. * src/truetype/ttgload.c (compute_glyph_metrics): Use ft_glyphslot_grid_fit_metrics. * src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph), src/type1/t1gload.c (T1_Load_Glyph): Use ft_glyphslot_grid_fit_metrics. FT_Outline_Get_CBox is called twice. * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Modify metrics to more reasonable values when emboldening outline glyphs. The theoretic ones are unrealistic.
Werner Lemberg 49f4d34e 2005-06-16T19:07:08 * src/base/ftoutln.c (FT_Outline_Embolden): Strength should be halved. * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Change the default strength. Don't increase slot->advance.y. * include/freetype/freetype.h (FREETYPE_MINOR): Set to 2. (FREETYPE_PATCH): Set to 0. * builds/unix/configure.ac (version_info): Set to 9:9:3. Currently, we are still binary compatible. * builds/win32/visualc/index.html, builds/win32/visualc/freetype.dsp, builds/win32/visualc/freetype.vcproj: s/219/2110/, s/2.1.9/2.1.10/. * builds/freetype.mk (refdoc), README, Jamfile (RefDoc): s/2.1.9/2.1.10/. * docs/CHANGES, docs/VERSION.DLL: Updated. * ChangeLog: Split off older entries into... * ChangeLog.20, ChangeLog.21: These new files. The next release will be 2.2.0, so don't worry about source code backwards compatibility. * include/freetype/ftimage.h (FT_Outline_MoveToFunc, FT_Outline_LineToFunc, FT_Outline_ConicToFunc, FT_Outline_CubicToFunc, FT_SpanFunc, FT_Raster_RenderFunc), include/freetype/ftrender.h (FT_Glyph_TransformFunc, FT_Renderer_RenderFunc, FT_Renderer_TransformFunc): Decorate parameters with `const' where appropriate. * src/sfnt/ttsbit.c (tt_face_load_sbit_image): Compute vertBearingY to make glyphs centered vertically. * src/truetype/ttgload.c (compute_glyph_metrics): Compute vertBearingY to make glyphs centered vertically. Fix some bugs in vertical metrics: . loader->pp3.y and loader->pp4.y are in 26.6 format, not in font units. . As we use the glyph's cbox to calculate the top bearing now there iss no need to adjust `top'. * src/otvalid/otvcommn.h (OTV_OPTIONAL_TABLE): Use FT_UShort to be in sync with OTV_OPTIONAL_OFFSET. Reported by YAMATO Masatake. * docs/release: Update.
Werner Lemberg 765cb0fa 2005-06-08T12:54:15 * Version 2.1.10 released. ========================== * src/pcf/readme: Renamed to... * src/pcf/README: This.
Werner Lemberg 0f1c4fa7 2005-06-06T07:01:47 Minor documentation fixes. Include stuff created by autogensh. in .cvsignore.
Werner Lemberg 60a04df7 2005-06-04T23:04:30 Add license.
Werner Lemberg 3d7b1d55 2005-06-01T15:30:44 * src/base/ftstroke.c (ft_stroker_inside): Revert `sigma' patch from 2004-07-11; this gives much better results under normal circumstances.