Commit Graph

1972 Commits

Author SHA1 Message Date
Werner Lemberg 35a90b7901 * src/tools/docmaker/tohtml.py (block_footer_start,
block_footer_middle): Beautify output.
2008-05-27 18:16:03 +00:00
Werner Lemberg 0c52faa9db add missing casting 2008-05-25 20:04:56 +00:00
Werner Lemberg 57a94c4863 whitespace 2008-05-25 16:49:29 +00:00
Werner Lemberg ffa496574a * src/truetype/ttgload.c (load_truetype_glyph): Move initialization
of the graphics state for subglyphs to...
(TT_Hint_Glyph): This function.
Hinting instructions for a composite glyph apparently refer to the
just hinted subglyphs, not the unhinted, unscaled outline.  This
seems to fix Savannah bugs #20973 and (at least partially) #23310.
2008-05-25 12:43:57 +00:00
Werner Lemberg c938131856 * src/raster/ftraster.c (fc_black_render): Return 0 when we are
trying to render into a zero-width/height bitmap, not an error code.
2008-05-25 12:19:34 +00:00
Suzuki, Toshiya (鈴木俊哉) 062f88a4f3 * src/base/ftmac.c (FT_New_Face_From_Suitcase): Check if valid aface is returned by FT_New_Face_From_FOND() 2008-05-20 07:57:53 +00:00
Werner Lemberg 5e8a368673 * src/pshinter/pshalgo.c (ps_hints_apply): Reset scale values after
correction for pixel boundary.  Without this patch, the effect can
be cumulative under certain circumstances, making glyphs taller and
taller after each call.  This fixes Savannah bug #19976.
2008-05-18 21:49:02 +00:00
Werner Lemberg 16dc51feae * src/base/ftdebug.c (FT_Message, FT_Panic): Send output to stderr.
This fixes Savannah bug #23280.

* docs/CHANGES: Updated.

Some formatting.
2008-05-18 17:36:15 +00:00
David Turner c567ff279b add missing comment 2008-05-18 14:32:51 +00:00
David Turner a92cec567c * src/psnames/psmodule.c: using 'static' to make declarations
non-global for ft_wgl_extra_unicodes, ft_wgl_extra_glyph_names,
	ft_wgl_extra_glyph_name_offsets, ps_check_wgl_name and
	ps_check_wgl_unicode
2008-05-18 14:08:57 +00:00
Werner Lemberg 89d64fa6e3 * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Handle zero-contour
glyphs correctly.  Patch from Savannah bug #23277.
2008-05-17 20:06:13 +00:00
Werner Lemberg a2f17cc150 * docs/CHANGES: Updated.
Improve support for WGL4 encoded fonts.

* src/psnames/psmodule.c (WGL_EXTRA_LIST_SIZE): New macro.
(ft_wgl_extra_unicodes, ft_wgl_extra_glyph_names,
ft_wgl_extra_glyph_name_offsets): New arrays.
(ps_check_wgl_name, ps_check_wgl_unicode): New functions.
(ps_unicodes_init): Use them to add additional Unicode mappings.
2008-05-17 10:01:45 +00:00
Werner Lemberg bcc750e511 * src/psaux/t1decode.c (t1_decoder_parse_charstrings)
<op_closepath>: `closepath' without a path is a no-op, not an error
(cf. the PS reference manual).

Reported by Martin McBride.
2008-05-16 04:50:00 +00:00
Werner Lemberg 504645ed5b * src/type1/t1load.c (parse_subrs): Accept fonts with a subrs array
which contain a single but empty entry.  This is technically
invalid (since it must end with `return', but...)

Reported by Martin McBride.
2008-05-14 23:26:20 +00:00
Werner Lemberg e6e6eade04 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.
2008-05-14 23:05:38 +00:00
Werner Lemberg fb57228b94 * src/winfonts/winfnt.c (fnt_face_get_dll_font, FNT_Face_Init):
Handle case `face_index < 0'.
* docs/CHANGES: Document it.
2008-05-13 12:10:04 +00:00
Werner Lemberg 551dd3c0a6 First steps to fix the scaling bug of CID-keyed CFF subfonts,
reported by Ding Li on 2008/03/28 on freetype-devel.

* src/base/cff/cffparse.c (power_tens): New array.
(cff_parse_real): Rewritten to introduce a fourth parameter which
returns the `scaling' of the real number so that we have no
precision loss.  This is not used yet.
Update all callers.
(cff_parse_fixed_thousand): Replace with...
(cff_parse_fixed_scaled): This function.  Update all callers.
2008-05-04 13:37:38 +00:00
Werner Lemberg 6d29f0f1e8 * src/base/ftobjs.c (FT_Load_Glyph): Call the auto-hinter without
transformation since it recursively calls FT_Load_Glyph.  This fixes
Savannah bug #23143.
2008-05-03 15:54:15 +00:00
Werner Lemberg de9479a00d * 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.
2008-04-26 12:52:57 +00:00
Werner Lemberg 4ebc890e06 * src/pcf/pcfdrivr.c (PCF_Face_Init): Protect call to
`FT_Stream_OpenLZW' with `FT_CONFIG_OPTION_USE_LZ'.  From Savannah
bug #22909.
2008-04-13 22:06:12 +00:00
Werner Lemberg 8271e5e443 whitespace 2008-04-13 21:59:29 +00:00
Werner Lemberg 048b756389 * src/psaux/psconv.c (PS_Conv_ToFixed): Increase precision if
integer part is zero.
2008-04-13 05:55:36 +00:00
Werner Lemberg c32e83f23f Fix compilation with g++ 4.1 (with both `single' and `multi'
targets).

* src/base/ftobjs.c (FT_Open_Face): Don't define a variable in block
which is crossed by a `goto'.

* src/otvalid/otvalid.h (otv_MATH_validate): Add prototype.
2008-04-01 06:07:37 +00:00
Werner Lemberg 210d61894b Fix support for subsetted CID-keyed CFFs.
* include/freetype/freetype.h (FT_FACE_FLAG_CID_KEYED,
FT_IS_CID_KEYED): New macros.

* src/cff/cffobjs.c (cff_face_init): Set number of glyphs to the
maximum CID value in CID-keyed CFFs.
Handle FT_FACE_FLAG_CID_KEYED flag.

* docs/CHANGES: Document it.


Fix CFF font matrix calculation and improve precision.

* src/cff/cffparse.c (cff_parse_real): Increase precision if integer
part is zero.
(cff_parse_font_matrix): Simplify computation of `units_per_em';
this prevents overflow also.


Support FT_Get_CID_Registry_Ordering_Supplement for PS CID fonts.

* src/cid/cidriver.c: Include FT_SERVICE_CID_H.
(cid_get_ros): New function.
(cid_service_cid_info): New service structure.
(cid_services): Register it.
2008-04-01 05:55:48 +00:00
Werner Lemberg 8575117c50 * src/type1/t1objs.c (T1_Face_Init): Use `/Weight'. Patch from
Savannah bug #22675.
2008-03-21 07:16:00 +00:00
Werner Lemberg 3863c95146 * src/truetype/ttgxvar.c (TT_Get_MM_Var): Fix named style loop.
Patch from Savannah bug #22541.
2008-03-13 06:38:37 +00:00
Werner Lemberg fc29393998 * src/sfnt/ttcmap.c (tt_cmap14_char_map_nondef_binary,
tt_cmap14_find_variant): Return correct value.
(tt_cmap14_variant_chars): Fix check for `di'.
2008-03-03 08:08:12 +00:00
Werner Lemberg 9b9d3349b2 minor improvements, copyright years 2008-02-21 23:22:06 +00:00
Suzuki, Toshiya (鈴木俊哉) 6cb2faa845 * src/base/ftmac.c: Fix a bug of PostScript font name synthesis in parse_fond(). 2008-02-21 18:46:07 +00:00
Werner Lemberg 28464c48a1 * src/truetype/ttinterp.c (Ins_IUP): Check number of points. Fix
from Savannah bug #22356.
2008-02-18 20:34:42 +00:00
Werner Lemberg 44c655b01c * src/autofit/afloader.c (af_loader_load_g, af_loader_load_glyph):
Check for valid callback pointers.
2008-02-17 08:22:08 +00:00
Suzuki, Toshiya (鈴木俊哉) d2c55ab0e4 fix for inexistent sfnt ID in broken FOND 2008-02-15 09:12:59 +00:00
Suzuki, Toshiya (鈴木俊哉) 60e83a1d57 * src/base/ftbase.c: <ftmac.c> is replaced by "ftmac.c" 2008-02-14 02:55:16 +00:00
Werner Lemberg 4c93399155 * src/base/ftlcdfil.c (_ft_lcd_filter_legacy): Updated comment to
mention intra-pixel algorithm.

* include/freetype/freetype.h (FT_Render_Mode): Mention that
FT_Library_SetLcdFilter can be used to reduce fringes.
2008-01-18 05:32:55 +00:00
Werner Lemberg 61d83d0938 Oops! 2008-01-18 05:19:20 +00:00
Werner Lemberg 250c01d40a whitespace 2008-01-18 05:16:09 +00:00
Werner Lemberg 53286c0970 more formatting and whitespace 2008-01-18 05:14:13 +00:00
Werner Lemberg 4af139d2e4 formatting, whitespace 2008-01-18 04:53:28 +00:00
Werner Lemberg 1ddd1b768d * src/raster/ftraster.c (ft_black_render): Check `outline' before
using it.  Reported by Allan Yang.
2008-01-16 06:58:54 +00:00
Werner Lemberg eca1f27905 * src/raster/ftraster.c (FT_CONFIG_OPTION_5_GRAY_LEVELS): Remove.
* src/raster/ftraster.c (ft_black_init)
[FT_RASTER_OPTION_ANTI_ALIASING]: Fix compilation.
2008-01-12 07:46:09 +00:00
Werner Lemberg bf391cb858 * src/truetype/ttgload.c (load_truetype_glyph): Handle the case
where the number of contours in a simple glyph is zero (and which
does contain an entry in the `glyf' table).  This fixes Savannah bug
#21990.
2008-01-10 08:47:08 +00:00
Suzuki, Toshiya (鈴木俊哉) 75696860ea Formatting. 2008-01-04 01:43:23 +00:00
Werner Lemberg d2e1573706 * src/smooth/ftgrays.c (gray_raster_render): Check `outline'
correctly.

Whitespace.
2007-12-30 23:49:14 +00:00
Suzuki, Toshiya (鈴木俊哉) 540b954574 Improvement of POSIX resource-fork accessor to load Mac OS X HelveLTMM 2007-12-21 06:03:59 +00:00
Werner Lemberg d156cabcae * src/cff/cffparse.c (cff_parse_real): Don't apply `power_ten'
division too early; otherwise the most significant digit(s) of the
final result are lost as the value is truncated to an integer.  This
fixes Savannah bug #21794 (where the patch has been posted too).
2007-12-14 07:48:32 +00:00
Werner Lemberg bd7e1c3ce0 Pass options from one configure script to another as-is (not
expanded).  This is needed for options like
--includedir='${prefix}/include'.

* builds/unix/detect.mk, configure: Prevent argument expansion in
call to the (real) `configure' script.



* src/truetype/ttgload.c (load_truetype_glyph): Fix compilation if
TT_USE_BYTECODE_INTERPRETER isn't defined.



There exist CFFs which contain opcodes for the Type 1 operators
`hsbw' and `closepath' which are both invalid in Type 2 charstrings.
However, it doesn't harm to support them.

* src/cff/cffgload.c (CFF_Operator): Add `cff_op_hsbw' and
`cff_op_closepath.'
(cff_argument_counts): Ditto.

(cff_decoder_parse_charstrings): Handle Type 1 opcodes 9 (closepath)
and 13 (hsbw) which are invalid in Type 2 charstrings.
2007-12-06 17:17:30 +00:00
Suzuki, Toshiya (鈴木俊哉) a6d36573bd * src/base/ftrfork.c: add support for new pathname syntax "..namedfork/rsrc" to access resource fork on Mac OS X. 2007-12-06 10:27:15 +00:00
Suzuki, Toshiya (鈴木俊哉) 05f5c58d13 Improvements of the document and comments in Mac OS sources by Sean McBride 2007-12-06 05:43:36 +00:00
Werner Lemberg a10d2b7cf5 * src/cff/cffload.c (cff_subfont_load): Don't use logical OR to
concatenate error codes.
* src/sfnt/ttsbit.c (Load_SBit_Range): Ditto.
2007-12-04 22:05:54 +00:00
Werner Lemberg d496b92659 * src/truetype/ttobjs.c (tt_face_init): Don't use logical OR to
concatenate error codes.
2007-12-04 21:49:59 +00:00
Werner Lemberg c0da523270 * src/pfr/pfrgload.c (pfr_glyph_load_compound): Remove compiler
warning.
2007-12-04 21:44:32 +00:00
Suzuki, Toshiya (鈴木俊哉) 86c0f90498 * src/base/{ftobjs.c, ftrfork.c}: recovery of Carbon-free legacy MacOS font support in freetype-2.3.4 2007-11-20 14:00:17 +00:00
Suzuki, Toshiya (鈴木俊哉) 00518cacad * src/base/ftmac.c: Revise Carbon dependent functions for Mac OS X 10.5 2007-11-16 15:48:58 +00:00
Werner Lemberg d503fc57f2 * src/sfnt/sfobjs.c (sfnt_done_face): Check `sfnt' everywhere. This
fixes Savannah bug #21485.
2007-11-01 09:19:44 +00:00
Werner Lemberg 27649fb62b * src/winfonts/winfnt.c (FNT_Face_Init): Check first that the driver
can handle the font at all, then check `face_index'.  Otherwise, the
driver might return the wrong error code.  This fixes Savannah bug
#21468.
2007-10-29 22:00:58 +00:00
Werner Lemberg 7d9c189ac2 * src/sfnt/sfobjs.c (sfnt_load_face): Support bit 9 and prepare
support for bit 8 in the `OS/2' table.  MS is already using this;
hopefully, this becomes part of OpenType 1.5.
Prepare also support for `name' IDs 21 (WWS_FAMILY) and 22
(WWS_SUBFAMILY).
2007-10-21 08:12:30 +00:00
Werner Lemberg 6684257742 * src/tools/docmaker/tohtml.py (html_header_2): Fix typo.
Add `td.left' element to CSS.
(toc_section_enter): Use it.
2007-10-20 16:17:28 +00:00
Werner Lemberg 7f2425fb4f Formatting, improving documentation. 2007-10-20 16:15:07 +00:00
David Turner cf432dbf22 * include/freetype/freetype.h, src/base/ftobjs.c: renamed
cmap14-related new APIs to the FT_Object_ActionName scheme.
        update the documentation for these APIs

        * src/sfnt/ttcmap.c: stronger cmap 14 validation, make the
        code a little more consistent with FreeType coding conventions
        and modify the cmap14 functions that returned a newly allocated
        array to use a persistent vector from the TT_CMap14 object
        instead.
2007-10-19 12:36:40 +00:00
Werner Lemberg 9a966b7d1b Add support for cmap type 14.
* devel/ftoption.h, include/freetype/config/ftoption.h
(TT_CONFIG_CMAP_FORMAT_14): New macro.

* include/freetype/internal/ftobjs.h (FT_CMap_CharVarIndexFunc,
FT_CMap_CharVarIsDefaultFunc, FT_CMap_VariantListFunc,
FT_CMap_CharVariantListFunc, FT_CMap_VariantCharListFunc): New
support function prototypes.
(FT_CMap_ClassRec): Add them.
Update all users.

* include/freetype/ttnameid.h (TT_APPLE_ID_VARIANT_SELECTOR): New
macro.

* include/freetype/freetype.h (FT_Get_Char_Variant_Index,
FT_Get_Char_Variant_IsDefault, FT_Get_Variant_Selectors,
FT_Get_Variants_Of_Char, FT_Get_Chars_Of_Variant): New API
functions.

* src/base/ftobjs.c (find_variant_selector_charmap): New auxiliary
function.
(FT_Set_Charmap): Disallow cmaps of type 14.
(FT_Get_Char_Variant_Index, FT_Get_Char_Variant_IsDefault,
FT_Get_Variant_Selectors, FT_Get_Variants_Of_Char,
FT_Get_Chars_Of_Variant): New API functions.

* src/sfnt/ttcmap.c (TT_PEEK_UINT24, TT_NEXT_UINT24): New macros.

(TT_CMap14Rec, tt_cmap14_init, tt_cmap14_validate,
tt_cmap14_char_index, tt_cmap14_char_next, tt_cmap14_get_info,
tt_cmap14_char_map_def_binary, tt_cmap14_char_map_nondef_binary,
tt_cmap14_find_variant, tt_cmap14_char_var_index,
tt_cmap14_char_var_isdefault, tt_cmap14_variants,
tt_cmap14_char_variants, tt_cmap14_def_char_count,
tt_cmap14_get_def_chars, tt_cmap14_get_nondef_chars,
tt_cmap14_variant_chars, tt_cmap14_class_rec): New functions and
structures for cmap 14 support.
(tt_cmap_classes): Register tt_cmap14_class_rec.
(tt_face_build_cmaps): One more error message.

* docs/CHANGES: Mention cmap 14 support.
2007-10-15 17:21:32 +00:00
Werner Lemberg 74597ccd8f * src/base/ftobjs.c (find_unicode_charmap): If search for a UCS-4
charmap fails, do the loop again while searching a UCS-2 charmap.
This favours MS charmaps over Apple ones.
2007-10-01 07:08:56 +00:00
Suzuki, Toshiya (鈴木俊哉) 2be3f472dd * src/base/ftmac.c: Use more abstract data type instead of `short\' 2007-08-29 06:08:59 +00:00
Werner Lemberg abc44f5ecf * src/otvalid/otvcmmn.c (otv_x_y_ux_sy): Skip context glyphs. Found
by Imran Yousaf.  Fixes Savannah bug #20773.

(otv_Lookup_validate): Correct handling of LookupType.  Found by
Imran Yousaf.  Fixes Savannah bug #20782.
2007-08-18 06:38:07 +00:00
Werner Lemberg 23a424f521 * src/otvalid/otvgsub.c (otv_SingleSubst_validate): Fix handling of
SingleSubstFormat1.
2007-08-17 20:16:44 +00:00
Werner Lemberg 3f1905b191 * src/otvalid/otvcommn.c, src/otvalid/otvcommn.h
(otv_Coverage_validate): Add fourth argument to pass an expected
count value.  Update all users.
Check glyph IDs.
(otv_ClassDef_validate): Check `StartGlyph'.

* src/otvalid/otvgsub.c (otv_SingleSubst_validate): More glyph ID
checks.

* src/otvalid/otvmath.c (otv_MathConstants_validate): There are only
56 constants.
(otv_GlyphAssembly_validate, otv_MathGlyphConstruction_validate):
Check glyph IDs.
2007-08-11 15:45:32 +00:00
Werner Lemberg d76fe5a1af * src/otvalid/otvbase.c, src/otvalid/otvcommn.c,
src/otvalid/otvgdef.c, src/otvalid/otvgpos.c, src/otvalid/otvgsub.c,
src/otvalid/otvjstf.c: s/FT_INVALID_DATA/FT_INVALID_FORMAT/ where
appropriate.  Reported by George.

* include/freetype/internal/fttrace.h: Define `trace_otvmath'.

* src/otvalid/rules.mk (OTV_DRV_SRC): Add otvmath.c.

* docs/CHANGES: Updated.


Add `MATH' validating support to otvalid module.

* include/freetype/tttags.h (TTAG_MATH): New macro.
* include/freetype/ftotval.h (FT_VALIDATE_MATH): New macro.
(FT_VALIDATE_OT): Updated.

* src/otvalid/otmath.c: New file.

* src/otvalid/otvalid.c: Include otvmath.c.
* src/otvalid/otvmod.c (otv_validate): Handle `MATH' table.
2007-08-08 06:38:06 +00:00
Werner Lemberg d6752a6bfb * src/psnames/psmodule.c: Fix usage of
FT_CONFIG_OPTION_POSTSCRIPT_NAMES macro.  Reported by Graham Asher.
2007-08-02 22:03:30 +00:00
Suzuki, Toshiya (鈴木俊哉) cf093cd7d2 * Fix src/base/ftmac.c (open_face_from_buffer): fix the type of driver_type as const. 2007-07-31 03:58:09 +00:00
Werner Lemberg 39c91ad444 * src/raster/ftraster.c (count_table): Make it conditional.
* src/base/ftobjs.c (FT_New_Library): Check FT_RENDER_POOL_SIZE with
a preprocessor statement.
2007-07-28 05:40:40 +00:00
Werner Lemberg 71dd687310 * src/base/ftoutln.c (FT_Outline_Translate): Check `outline' before
first usage.  From Savannah patch #6115.
2007-07-27 04:44:36 +00:00
Werner Lemberg 5bfe0d0465 Really add new files. 2007-07-17 04:57:01 +00:00
Werner Lemberg ef915c36f4 * docs/CHANGES: Updated.
Add new service for getting the ROS from a CID font.

* include/freetype/config/ftheader.h (FT_CID_H): New macro.
* include/freetype/ftcid.h: New file.

* include/freetype/internal/ftserv.h (FT_SERVIVE_CID_H): New macro.
* include/freetype/internal/services/svcid.h: New file.

* src/base/ftcid.c: New file.

* src/cff/cffdrivr.c: Include FT_SERVICE_CID_H.
(cff_get_ros): New function.
(cff_service_cid_info): New service structure.
(cff_services): Register it.

* src/cff/cffload.c (cff_font_done): Free registry and ordering.

* src/cff/cfftypes.h (CFF_FontRec): Add `registry' and `ordering'.

* modules.cfg (BASE_EXTENSIONS): Add ftcid.c.
2007-07-16 20:46:05 +00:00
Werner Lemberg 2f10956744 Add support for postscript name service to CFF driver.
* src/cff/cffdrivr.c: Include FT_SERVICE_POSTSCRIPT_NAME_H.
(cff_get_ps_name): New function.
(cff_service_ps_name): New service structure.
(cff_services): Register it.
2007-07-11 05:32:00 +00:00
Werner Lemberg d21fe6e5d6 Really restore changes introduced in revision 1.178. 2007-07-10 23:10:39 +00:00
Werner Lemberg b003b3e7b5 * src/base/ftglyph.c (FT_Glyph_Copy): Fix initialization of
`target'.  Reported by Sean McBride.
2007-07-08 07:13:12 +00:00
Werner Lemberg 1e1b6dff54 * src/pfr/pfrcmap.c: Include pfrerror.h.
* src/autofit/afindic.c: Add some external declarations to pacify
`make multi' compilation.

* src/cid/cidgload.c (cid_load_glyph): Pacify compiler.

* src/cff/cffdrivr.c (cff_ps_get_font_info), src/cff/cffobjs.c
(cff_strcpy), include/freetype/internal/ftmemory.h (FT_MEM_STRDUP),
src/autofit/aflatin.c (af_latin_hints_compute_edges),
src/autofit/afcjk.c (af_cjk_hints_compute_edges), src/sfnt/ttmtx.c
(tt_face_get_metrics), src/base/ftobjs.c (open_face)
[FT_CONFIG_OPTION_INCREMENTAL]: Fix compilation with C++ compiler.

* docs/release: Mention test compilation targets.
2007-07-07 07:30:40 +00:00
Werner Lemberg 0f6f367ec1 Better maxComponentDepth test. 2007-07-04 19:57:45 +00:00
Werner Lemberg 3033f4366b * src/truetype/ttgload.c (load_truetype_glyph): Always allow a
recursion depth of 1.  This was the maximum value in TrueType 1.0,
and some older fonts don't set this field correctly.

* src/gxvalid/gxvmort1.c
(gxv_mort_subtable_type1_substTable_validate): Fix tracing message.
2007-07-04 14:12:19 +00:00
Werner Lemberg 3b0e500601 * src/autofit/aflatin.c (af_latin_metrics_init_blues): Initialize
`round' to pacify compiler.

Really commit changes which have been used to build release 2.3.5.
2007-07-03 04:48:19 +00:00
Werner Lemberg e3be90bf28 formatting 2007-07-02 14:58:58 +00:00
David Turner 481b25f009 * include/freetype/freetype.h, src/base/ftpatent.c: adding
FT_Face_SetUnpatentedHinting to dynamically change the setting
	after a face is created.
2007-07-01 09:51:15 +00:00
David Turner 0ba8991292 fix a small bug in the TrueType loader that created distortion in the result
of bytecode-hinted text. Werner, feel free to package 2.3.5 now :-)
2007-07-01 09:34:04 +00:00
David Turner 74cc0e9ee4 * src/truetype/ttinterp.c: add missing variable initialization,
gets rid of Valgrind fixes.

	* src/autofit/aflatin.c: get rid of an infinite loop in the case
	of degenerate fonts.
2007-06-30 22:54:12 +00:00
Werner Lemberg 7723dc34d3 Add autofit module for Indic scripts. This currently just reuses
the CJK-specific functions.

* include/freetype/config/ftoption.h (AF_CONFIG_OPTION_INDIC): New
macro.
* devel/ftoption.h: Synchronize with
include/freetype/config/ftoption.h.

* src/autofit/afindic.c, src/autofit/afindic.h: New files.

* src/autofit/afglobal.c, src/autofit/aftypes.h,
src/autofit/autofit.c: Updated.

* src/autofit/Jamfile (_sources), * src/autofit/rules.mk
(AUTOF_DRV_SRC): Updated.
2007-06-26 04:44:35 +00:00
David Turner 8f626b04f3 fix stupid typo that prevented the truetype loader from working correctly 2007-06-22 22:22:38 +00:00
Werner Lemberg 5b4d435a96 * src/cff/cffgload.c (cff_slot_load): Fix logic of 2007-05-28
change.
2007-06-20 07:07:55 +00:00
Werner Lemberg 9fe5815c97 * src/type1/t1load.c (parse_encoding): Handle one more error. 2007-06-19 07:57:30 +00:00
Werner Lemberg 5a829394f6 * src/winfonts/winfnt.c (fnt_face_get_dll_font): Return error
FNT_Err_Invalid_File_Format if file format was recognized but
the file doesn't contain any FNT(NE) or RT_FONT(PE) resources.
Add verbose debug logs to make it easier to debug failing load
attempts.
(FNT_Face_Init): A single FNT font can't contain more than 1 face,
so return an error if requested face index is > 0.
Do not do further attempt to load fonts if a previous attempt has
failed but returned error FNT_Err_Invalid_File_Format, i.e., the
file format has been recognized but no fonts found in the file.
2007-06-19 04:53:30 +00:00
Suzuki, Toshiya (鈴木俊哉) 7893501c3e * fix compiler warnings of src/base/ftmac.c, drop unnecessary part for Mac OS X. 2007-06-19 03:27:05 +00:00
Werner Lemberg bb2510daec * src/type42/t42parse.c (t42_parse_encoding): Handle one more error. 2007-06-18 17:07:49 +00:00
Werner Lemberg f9fa1c8b77 * src/psaux/psobjs.c (ps_parser_skip_PS_token): Remove incorrect
assertion.
(ps_parser_to_bytes): Fix error message.

* src/type42/t42objs.c (T42_Open_Face): Handle one more error
return.
* src/type42/t42parse.c (t42_parse_sfnts): s/alloc/allocated/.
Don't allow mixed binary and hex strings.
Handle zero string_size == 0 and string_buf == 0.
2007-06-18 17:00:05 +00:00
Werner Lemberg 95104a4d57 * src/cff/cffgload.c (cff_decoder_prepare): Fix change from
2007-06-06.
2007-06-18 07:33:10 +00:00
Werner Lemberg f48aec7b1e * src/psaux/psobjs.c (ps_tofixedarray, ps_tocoordarray): Fix exit
logic.
(ps_parser_load_field) <T1_FIELD_TYPE_BBOX>: Skip delimiters
correctly.
(ps_parser_load_field_table): Use `fields->array_max' instead of
T1_MAX_TABLE_ELEMENTS to limit the number of arguments.
2007-06-18 07:07:55 +00:00
Werner Lemberg be183ebb5d * src/winfonts/winfnt.c (fnt_face_get_dll_font): Exit in case of
invalid font.
(FNT_Load_Glyph): Protect against invalid bitmap width.
2007-06-17 11:27:17 +00:00
Werner Lemberg e12ed563d6 * src/tools/ftrandom.c (font_size): New global variable.
(TestFace): Use it.
(main): Handle new option `--size' to set `font_size'.
(Usage): Updated.

Formatting.
2007-06-17 05:31:23 +00:00
David Turner 815911ae2a * src/truetype/ttgload.c (TT_Load_Simple_Glyph): check the well-formedness
of the contours array when loading a glyph

	* src/truetype/ttinterp.c (Ins_IP): check argument ranges to reject
	bogus operations properly
2007-06-16 17:07:20 +00:00
David Turner 6c2ab0977c prevent a 16-bit integer overflow that would create problems when rendering
*very* large anti-aliased outlines
2007-06-16 16:40:37 +00:00
Werner Lemberg ab1604bd6b * src/winfonts/winfnt.h: Add necessary structures for PE resource
parsing.
(WinPE32_HeaderRec): New structure.
(WinPE32_SectionRec): New structure.
(WinPE_RsrcDirRec): New structure.
(WinPE_RsrcDirEntryRec): New structure.
(WinPE_RsrcDataEntryRec): New structure.
(FNT_FontRec): Remove unused `size_shift' field.

* src/winfonts/winfnt.c (fnt_face_get_dll_font): Add support for
loading bitmap .fon files in PE format.
2007-06-16 07:59:39 +00:00
Werner Lemberg 46dde4953a * src/autofit/aflatin.c (af_latin_uniranges): Expand structure to
cover all ranges which could possibly be handled by the aflatin
module (since the default fallback for unknown ranges is now the
afcjk module).  It might be necessary to fine-tune this further by
splitting off modules for Greek, Cyrillic, or other blocks.
2007-06-14 03:59:02 +00:00
Werner Lemberg 49e18b8d5f formatting 2007-06-11 21:15:09 +00:00