Commit Graph

1814 Commits

Author SHA1 Message Date
Werner Lemberg b17fb11f93 * src/cff/cffgload.c (cff_slot_load): Map CID 0 to GID 0. This
fixes Savannah bug #24430.
2008-10-02 10:17:32 +00:00
Werner Lemberg 89a1a51834 * builds/freetype.mk (BASE_H): Rename to...
(INTERNAL_H): This.
(FREETYPE_H): Updated.
* src/base/rules.mk: (BASE_OBJ_S, OBJ_DIR/%.$O): Add BASE_H.
* src/bdf/rules.mk (BDF_DRV_H): Add bdferror.h.
* src/cache/rules.mk (CACHE_DRV_H): Add ftccache.h and ftcsbits.h.
* src/pcf/rules.mk (PCF_DRV_H): Add pcfread.h.
* src/raster/rules.mk (RASTER_DRV_H): Add ftmisc.h.
* src/type42/rules.mk (T42_DRV_H): Add t42types.h.
2008-10-02 06:48:10 +00:00
Werner Lemberg cff15b07f3 Formatting. 2008-10-02 05:38:29 +00:00
Suzuki, Toshiya (鈴木俊哉) f414702e04 * Merge the duplicated functions in ftmac.c with ftobjs.c 2008-10-02 01:43:18 +00:00
Werner Lemberg ce1bad0381 * src/sfnt/sfobjs.c (sfnt_load_face): `psnames_error' is only needed
if TT_CONFIG_OPTION_POSTSCRIPT_NAMES is defined.
2008-10-01 22:46:26 +00:00
Werner Lemberg d03d856d95 * src/truetype/ttobjs.c (tt_face_done), src/cff/cffobjs.c
(cff_face_done), src/pfr/pfrobjs.c (pfr_face_done),
src/pcf/pcfdrivr.c (PCF_Face_Done), src/cid/cidobjs.c
(cid_face_done), src/bdf/bdfdrivr. (BDF_Face_Done),
src/sfnt/sfobjs.c (sfnt_face_done): Protect against face == 0.
Reported by Graham Asher.
2008-10-01 22:39:05 +00:00
Werner Lemberg fce4e23998 Formatting. 2008-10-01 04:41:46 +00:00
Suzuki, Toshiya (鈴木俊哉) ef4a915e28 * Fix make rules for multi build on Mac OS X 2008-09-30 16:21:07 +00:00
Suzuki, Toshiya (鈴木俊哉) c6bdee5f27 * Fix the conditions for multi build on MacOS 2008-09-30 00:59:55 +00:00
Werner Lemberg b4c810e2b4 * src/cff/cffgload.c (CFF_Operator, cff_argument_counts,
cff_decoder_parse_charstrings): Handle (invalid)
`callothersubr' and `pop' instructions.
2008-09-22 11:28:46 +00:00
Werner Lemberg bd0f71aa96 Fix Savannah bug #24307.
* include/freetype/internal/t1types.h (CID_FaceRec),
src/type42/t42types.h (T42_FaceRec): Comment out `afm_data'.


* src/smooth/ftgrays.c (gray_raster_render): Don't dereference
`target_map' if FT_RASTER_FLAG_DIRECT is set.  Problem reported by
Stephan T. Lavavej <stl@nuwen.net>.
2008-09-22 08:55:44 +00:00
Suzuki, Toshiya (鈴木俊哉) 815e186f1a * src/{otvalid,sfnt}/Jamfile: Add missing targets for multi build by jam 2008-09-21 18:33:57 +00:00
Werner Lemberg 70f4cff19d * src/smooth/ftgrays.c (gray_find_cell): Fix threshold. The values
passed to this function are already `normalized'.  Problem reported
by Stephan T. Lavavej  <stl@nuwen.net>.

* docs/CHANGES: Document it.
2008-09-20 16:12:05 +00:00
Werner Lemberg 22e970a23e Formatting, minor code fixes. 2008-09-20 12:20:21 +00:00
Werner Lemberg 6874d85ba0 * src/base/ftoutln.c: Include FT_INTERNAL_DEBUG_H.
(FT_Outline_Decompose): Decorate with tracing messages.

* src/smooth/ftgrays.c [DEBUG_GRAYS]: Replace with
FT_DEBUG_LEVEL_TRACE.
[_STANDALONE_ && FT_DEBUG_LEVEL_TRACE]: Include stdio.h and
stdarg.h.

(FT_TRACE) [_STANDALONE_]: Remove.
(FT_Message) [_STANDALONE_ && FT_DEBUG_LEVEL_TRACE]: New function.
(FT_TRACE5, FT_TRACE7) [_STANDALONE_]: New macros.
(FT_ERROR) [_STANDALONE_]: Updated.

(gray_hline) [FT_DEBUG_LEVEL_TRACE]: Fix condition.
Use FT_TRACE7.
(gray_dump_cells): Make it `static void'.
(graay_convert_glyph): Use FT_TRACE7.

(FT_Outline_Decompose) [_STANDALONE_]: Synchronize with version in
ftoutln.c.

* src/base/ftadvanc.c (FT_Get_Advance, FT_Get_Advances): Use
FT_ERROR_BASE.

Other minor modifications.
2008-09-20 11:50:47 +00:00
Suzuki, Toshiya (鈴木俊哉) 3afbee82fe * ftmac.c: Import sfnt-wrapped Type1/CID font support 2008-09-19 17:46:01 +00:00
Suzuki, Toshiya (鈴木俊哉) dec8e7b97d * src/base/ftobjs.c: Fix double free bug in sfnt-wrapped Type1/CID font support 2008-09-19 16:47:01 +00:00
Suzuki, Toshiya (鈴木俊哉) 9ae5eaf862 * src/base/ftobjs.c: Add initial support for sfnt-wrapped CID-keyed fonts 2008-09-19 06:48:35 +00:00
Werner Lemberg 55c40631f4 * src/base/ftsystem.c (FT_Done_Memory): Use ft_sfree directly for
orthogonality (ft_free and ft_sfree could belong to different memory
pools).  This fixes Savannah bug #24297.
2008-09-18 11:20:12 +00:00
Suzuki, Toshiya (鈴木俊哉) 0c0db3eb48 * src/cff/cffobjs.c: replace 0x4F54544FL by TTAG_OTTO 2008-09-18 04:36:56 +00:00
Werner Lemberg 634df6e3ba * src/cff/cffgload.h, src/cff/cffgload.c
(cff_decoder_set_width_only): Eliminate function call.
2008-09-16 07:25:31 +00:00
Werner Lemberg ed6c0e063c Fix Savannah bug #24179, reported by Bram Tassyns.
* src/type1/t1load.c (mm_axis_unmap, T1_Get_MM_Var): Fix computation
of default values.


* src/tools/glnames.py (main): Surround `ft_get_adobe_glyph_index'
and `ft_adobe_glyph_list' with FT_CONFIG_OPTION_ADOBE_GLYPH_LIST to
prevent unconditional definition.  This fixes Savannah bug #24241.

* src/psnames/pstables.h: Regenerated.
2008-09-15 07:49:40 +00:00
Werner Lemberg b211651ac9 * autogen.sh, builds/unix/configure.raw,
include/freetype/config/ftconfig.h, builds/unix/ftconfig.in: Minor
beautifying.

* include/freetype/ftadvanc.h, include/freetype/ftgasp.h,
include/freetype/ftlcdfil.h: Protect against FreeType 1.
Some other minor fixes.

* devel/ftoption.h: Synchronize with
include/freetype/config/ftoption.h.

Formatting, documentation improvements.
2008-09-12 16:27:48 +00:00
Werner Lemberg 8d3e6ecc3c * src/base/ftbase.c: Include ftadvanc.c. 2008-09-11 08:29:14 +00:00
Suzuki, Toshiya (鈴木俊哉) 59188661e6 * Fix Savannah bug #21250: builds/unix/configure installs bi-arch ftconfig.h if it works correctly 2008-09-11 08:02:23 +00:00
Suzuki, Toshiya (鈴木俊哉) 8e29645e20 * builds/unix/configure.raw: Clear FT2_EXTRA_LIBS when Mac OS X frameworks are missing 2008-09-05 03:21:21 +00:00
David Turner 17cd687266 * include/freetype/ftcache.h, src/cache/ftccmap.c:
modify FTC_CMapCache_Lookup to accept a negative cmap index
    to mean "use default cached FT_Face's charmap". This fixes
    Savannah issue #22625
2008-09-02 02:34:29 +00:00
David Turner f47d263f1b * include/freetype/ftoption.h, include/freetype/ftconfig.h,
builds/unix/ftconfig.in, include/freetype/freetype.h,
    src/base/ftcalc.c:
    Make FT_MulFix an inlined function. Also provide an assembler
    implementation for ARM architectures. this is done to speedup
    FreeType a little (on x86 3% when loading+hinting, 10% when
    rendering, ARM savings are more important though).
    Disable this by undefining FT_CONFIG_OPTION_INLINE_MULFIX in
    ftconfig.h
2008-09-02 02:21:58 +00:00
David Turner 28534d616b * 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.
2008-09-01 21:35:21 +00:00
Suzuki, Toshiya (鈴木俊哉) 7981fe2a0f * src/sfnt/sfobjs.c (sfnt_open_font): Use TTAG_OTTO 2008-08-29 06:09:03 +00:00
Werner Lemberg 4dbf00aa23 * src/type1/t1load.c (parse_encoding): Protect against infinite
loop.  This fixes Savannah bug #24150 (where a patch has been posted
too).
2008-08-28 16:12:48 +00:00
Werner Lemberg a4cb0d95d9 * src/type/t1afm.c (compare_kern_pairs), src/pxaux/afmparse.c
(afm_compare_kern_pairs): Fix comparison.  This fixes Savannah bug
#24119.
2008-08-23 19:54:06 +00:00
Suzuki, Toshiya (鈴木俊哉) 4c60bd916c * Fix FT_Stream_New() to initialize stream always 2008-08-19 15:35:44 +00:00
Werner Lemberg 77f7358533 Formatting. 2008-08-19 04:53:02 +00:00
Suzuki, Toshiya (鈴木俊哉) fdc2d7618a * src/base/ftmac.c: Add a fallback for the case that HAVE_TYPE_RESOURCE_INDEX is not set by configure 2008-08-18 06:02:07 +00:00
Suzuki, Toshiya (鈴木俊哉) a8700d428b * builds/unix/configure.raw: Replace all-in-one Carbon.h by minimum CoreServices.h 2008-08-18 05:08:01 +00:00
Suzuki, Toshiya (鈴木俊哉) a2637823db * src/sfnt/ttcmap.c: Fix for empty sub-headers in Dynalab fonts 2008-08-18 04:44:56 +00:00
Werner Lemberg 7fd201829a * src/type1/t1tokens.h: Handle `ForceBold' keyword. This fixes
Savannah bug #23995.

* src/cid/cidload.c (parse_expansion_factor): New callback function.
(cid_field_records): Use it for `ExpansionFactor'.
* src/cod/cidtoken.h: Handle `ForceBold' keyword.
Don't handle `ExpansionFactor'.
2008-08-04 18:46:37 +00:00
Werner Lemberg eba3eeecd9 * src/cff/cffparse.c (cff_parse_fixed_scaled): Fix thinko which
resulted in incorrect scaling.  This fixes Savannah bug #23973.
2008-08-04 15:54:24 +00:00
Werner Lemberg 17e6901112 Be more tolerant w.r.t. invalid entries in SFNT table directory.
* src/sfnt/ttload.c (check_table_dir): Ignore invalid entries and
adjust table count.
Add more trace messages.
(tt_face_load_font_dir): Updated.
2008-08-04 05:45:41 +00:00
Werner Lemberg 806f59341d * src/cff/cffgload.c (cff_decoder_parse_charstrings): No longer
assume that the first argument on the stack is the bottom-most
element.  Two reasons:

  o According to people from Adobe it is missing in the Type 2
    specification that pushing of additional, superfluous arguments
    on the stack is prohibited.

  o Acroread in general handles fonts differently, namely by popping
    the number of arguments needed for a particular operand (as a PS
    interpreter would do).  In case of buggy fonts this causes a
    different interpretation which of the elements on the stack are
    superfluous and which not.

Since there are CFF subfonts (embedded in PDFs) which rely on
Acroread's behaviour, FreeType now does the same.
2008-07-30 05:28:37 +00:00
Werner Lemberg 830846e645 Formatting, copyright years. 2008-07-27 06:27:21 +00:00
Werner Lemberg 7f30c0c64c Add extra mappings for `Tcommaaccent' and `tcommaaccent'. This
fixes Savanna bug #23940.

* src/psnames/psmodule.c (WGL_EXTRA_LIST_SIZE): Rename to...
(EXTRA_GLYPH_LIST_SIZE): This.
Increase by 2.
(ft_wgl_extra_unicodes): Rename to...
(ft_extra_glyph_unicodes): This.
Add two code values.
(ft_wgl_extra_glyph_names): Rename to...
(ft_extra_glyph_names): This.
Add two glyphs.
(ft_wgl_extra_glyph_name_offsets): Rename to...
(ft_extra_glyph_name_offsets): This.
Add two offsets.

(ps_check_wgl_name, ps_check_wgl_unicode): Rename to...
(ps_check_extra_glyph_name, ps_check_extra_glyph_unicode): This.
Updated.
(ps_unicodes_init): Updated.
2008-07-27 05:43:59 +00:00
Werner Lemberg bdcfddcd43 * src/cff/cffgload.c (cff_decoder_prepare,
cff_decoder_parse_charstrings): Improve debug output.
2008-07-26 21:22:20 +00:00
Werner Lemberg e75da4576e * src/sfnt/ttcmap.c (tt_cmap4_validate, tt_cmap4_char_map_linear,
tt_cmap4_char_map_binary): Handle fonts which treat the last segment
specially.  According to the specification, such fonts would be
invalid but acroread accepts them.
2008-07-22 20:59:59 +00:00
Werner Lemberg 50997cd742 * src/pfr/pfrdrivr.c (pfr_get_advance): Fix off-by-one error.
* src/base/ftcalc.c (FT_MulFix): Fix portability issue.

* src/sfnt/ttpost.c (MAC_NAME) [!FT_CONFIG_OPTION_POSTSCRIPT_NAMES]:
Fix compiler warning.
2008-07-16 21:03:40 +00:00
Werner Lemberg bd48d35bf8 Set FT_FACE_FLAG_CID_KEYED only if pure_cff is set. 2008-07-16 07:05:11 +00:00
Werner Lemberg 3d2f06f399 Handle CID-keyed fonts wrapped in a SFNT (with cmaps) correctly.
* src/cff/cffload.c (cff_font_load): Pass `pure_cff'.
Invert sids table only if `pure_cff' is set.
* src/cff/cffload.h: Udpated.

* src/cff/cffobjs.c (cff_face_init): Updated.
2008-07-16 06:13:34 +00:00
Werner Lemberg 6b19e095be * src/truetype/ttpload.c (tt_face_load_loca): Handle buggy fonts
where num_locations < num_glyphs.  Problem reported by Ding Li.
2008-07-09 06:20:12 +00:00
Werner Lemberg ca6fc732b7 Fix ChangeLog. 2008-07-05 06:36:39 +00:00