Commit Graph

2337 Commits

Author SHA1 Message Date
David Turner e70d553111 * include/freetype/config/ftoption.h, include/freetype/internal/ttypes.h,
src/truetype/ttpload.c, src/truetype/ttpload.h, src/truetype/ttgload.c:
    added the temporary configuration FT_OPTIMIZE_MEMORY to control various
    optimizations used to reduce the heap footprint of memory-mapped TrueType
    files.

    * src/truetype/ttpload.c (tt_face_load_loca, tt_face_get_location,
    tt_face_done_loca): when FT_OPTIMIZE_MEMORY is set, the locations table
    is read directly from memory-mapped streams, instead of being decoded
    into the heap.

    * src/truetype/ttpload.c: only load the CVT and fpgm tables when the
    bytecode interpreter is compiled in.
2005-02-22 16:53:06 +00:00
David Turner 3e26d07e60 * src/base/ftdbgmem.c: adding the ability to list all allocation sites
in the memory debugger. Also a new function FT_DumpMemory() was added.
	It is only available in builds with FT_DEBUG_MEMORY defined, and you
	must declare it in your own code to use it, i.e. with something
	like:

	  extern void FT_DumpMemory( FT_Memory );

	  ...

	  FT_DumpMemory( memory );

	* include/freetype/config/ftoptions.h: disabling TrueType bytecode
	interpreter !

	* include/freetype/internal/ftmemory.h: adding FT_ARRAY_ZERO, as a
	convenience macro.
2005-02-22 15:38:12 +00:00
Werner Lemberg 014d571407 * builds/unix/ltmain.sh: Regenerated with `libtoolize --force
--copy' from libtool 1.5.14.
* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
automake 1.9.4.

* builds/unix/config.guess, builds/unix/config.sub: Updated from
`config' CVS module at subversions.gnu.org.

* builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
`texinfo' CVS module at subversions.gnu.org.
2005-02-20 08:22:30 +00:00
Werner Lemberg 8e58ff26d2 * src/cff/cffcmap.c (cff_cmap_unicode_init): Don't try to build
a cmap for a CID-keyed font which doesn't have SIDs.
2005-02-14 07:25:07 +00:00
Werner Lemberg 1d565fb01b * src/type1/t1load.c (read_binary_data): Return more meaningful
value.
(parse_encoding, parse_subrs, parse_charstrings, parse_dict): Check
parser error value after call to T1_Skip_PS_Token (where necessary).

* src/type1/t1parse.c (T1_Get_Private_Dict): Check parser error
value after call to T1_Skip_PS_Token.

* src/cid/cidparse.c (cid_parser_new): Check parser error value
after call to cid_parser_skip_PS_token.

* src/type42/t42parse.c (t42_parse_encoding, t42_parse_sfnts,
t42_parse_charstrings, t42_parse_dict): Check parser error value
after call to T1_Skip_PS_Token (where necessary).

* src/psaux/psobjc.c (skip_string, ps_parser_skip_PS_token,
ps_tobytes): Add error messages.
2005-02-13 21:42:42 +00:00
Werner Lemberg a33bd861d7 * configure: Output more variables to the created Makefile so that
it can be used for ft2demos also (if the FT2DEMOS variable is
defined).
2005-02-13 05:46:50 +00:00
Werner Lemberg 0358b21d85 Formatting. 2005-02-10 16:59:37 +00:00
David Turner e99b9a99d7 * src/base/ftbitmap.c (FT_Bitmap_Convert): small improvements to the
conversion function (mainly stupid optimization, because I like
	these... shame on me)

	* src/base/Jamfile: adding ftbitmap.c to the list of compiled files
2005-02-10 16:11:29 +00:00
David Turner 2d4efdab16 forgot to update ChangeLog before previous comment
I suppose I'm rusty :-)
2005-02-10 15:36:21 +00:00
David Turner 37b67724cc Fixing bug #11921 2005-02-10 15:06:00 +00:00
Werner Lemberg fd764556ac Fix ChangeLog. 2005-02-10 08:24:10 +00:00
Werner Lemberg c9114b9926 * builds/unix/freetype-config.in: Add new flag `--ftversion' to
return the FreeType version.  Suggested by George Williams
<gww@silcom.com>.


* docs/CHANGES: Updated.


* src/otvalid/otvmod.c (otv_validate): Deallocate arrays in case
of error.  Reported by YAMANO-UCHI Hidetoshi <mer@din.or.jp>.


* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
<op_closepath>: Accept `T1_Parse_Have_Moveto' state also which can
happen in empty glyphs.  Reported by Ian Brown
<ian.brown@printsoft.de>.
2005-02-10 08:18:27 +00:00
Werner Lemberg 4c1867bfab * src/otlayout/*: Removed. Obsolete. 2005-02-04 00:02:31 +00:00
Werner Lemberg cc7cab815c * builds/unix/ftsystem.c (FT_Stream_Open): Add proper cast for
ft_alloc.
Fix compiler warning.
2004-12-28 23:08:51 +00:00
Werner Lemberg 4e6ea4052a * builds/unix/ltmain.sh: Regenerated with `libtoolize --force
--copy' from libtool 1.5.10.
* builds/unix/aclocal.m4: Regenerated with `aclocal -I .' from
automake 1.9.4.
* builds/unix/configure: Regenerated with autoconf 2.59b.

* builds/unix/config.guess, builds/unix/config.sub: Updated from
`config' CVS module at subversions.gnu.org.

* builds/unix/install-sh: Updated from
`texinfo' CVS module at subversions.gnu.org.
2004-12-28 15:06:58 +00:00
Werner Lemberg 213b9d01b2 * src/cff/cffobjs.c (cff_face_init): Improve computation of
FT_STYLE_BOLD_FLAG.
2004-12-28 08:00:09 +00:00
Werner Lemberg b897e4c9c1 * src/cff/cffobjs.c (cff_face_init): A CFF within an SFNT can have
only a single font.  This is undocumented but has been verified on
the opentype list.
2004-12-28 07:49:15 +00:00
Werner Lemberg af4a4fdd30 * Jamfile (FT2_COMPONENTS): Add `otvalid'. 2004-12-28 07:36:28 +00:00
Werner Lemberg 0f2a415770 * src/base/ftbitmap.c (FT_Bitmap_Convert): Fix compiler warning. 2004-12-28 07:31:35 +00:00
Werner Lemberg b88624fc3b * vms_make.com: Add ftbitmap.obj. 2004-12-15 06:37:03 +00:00
Werner Lemberg 8285d49a70 Small additions to fix reference creation. 2004-12-14 22:32:34 +00:00
Werner Lemberg f2438e1da9 * src/base/ftbitmap.c, include/freetype/ftbitmap.h: New files for
handling various bitmap formats.

* include/freetype/config/ftheader.h (FT_BITMAP_H): New macro.

* src/base/rules.mk (BASE_EXT_SRC): Add ftbitmap.c.

* src/bdf/bdfdrivr.c (BDF_Glyph_Load): Don't convert bitmaps to 8bpp
but return them as-is.

* docs/CHANGES: Mention new bitmap API.
* include/freetype/ftchapter.s: Updated.
2004-12-14 16:01:29 +00:00
Werner Lemberg ece8b20e6c Documentation updates, whitespace. 2004-12-13 23:16:59 +00:00
Werner Lemberg a4aadf5401 Whitespace, sorting. 2004-12-13 11:40:36 +00:00
Werner Lemberg 133eee06bf * src/base/ftobjs.c (FT_Get_Kerning): Make kerning amount
dependent on ppem by scaling down for ppem < 25, then do normal
rounding.  This gives slightly better results than rounding towards
zero.
2004-12-12 06:55:40 +00:00
Werner Lemberg 62f8978794 * src/base/ftobjs.c (FT_Get_Kerning): Always round towards zero
for FT_KERNING_DEFAULT.  This greatly enhances the kerning for
small ppem values.
2004-12-09 22:57:18 +00:00
Werner Lemberg 34f4f39ad8 * src/base/ftobjs.c (ft_glyphslot_clear): Reset `lsb_delta' and
`rsb_delta'.
2004-12-09 22:22:52 +00:00
Werner Lemberg d14023d232 * builds/unix/install.mk (install): Use $(OBJ_BUILD) for ftconfig.h. 2004-12-06 08:42:41 +00:00
Werner Lemberg a3a2a0450d Formatting, copyright years. 2004-12-04 14:23:50 +00:00
Antoine Leca 1e32f2b461 * include/freetype/ttnameid.h: Updated to latest specifications from Microsoft. 2004-12-03 14:58:40 +00:00
Werner Lemberg 4e59336c29 Minor update. 2004-11-30 21:36:18 +00:00
Werner Lemberg 71e5a590e4 * vms_make.com: Include ftbbox.c.
Fix `ccopt'.
Handle `otvalid' module.
Update `vmslib.dat' default values.
Fixes to `libs.opt'.
2004-11-27 08:18:10 +00:00
Werner Lemberg 1ec3963dc8 * src/base/ftoutln.c (FT_OrientationExtremumRec,
ft_orientation_extremum_compute): Removed.
(FT_Outline_Get_Orientation): Rewritten, simplified.

* src/autohint/ahglyph.c: Include FT_OUTLINE_H.
(ah_test_extremum, ah_get_orientation): Removed.
(ah_outline_load): Use FT_Outline_Get_Orientation.

* src/base/ftsynth.c (ft_test_extrama, ft_get_orientation): Removed.
(FT_GlyphSlot_Embolden): Use FT_Outline_Get_Orientation.
2004-11-24 07:08:21 +00:00
Werner Lemberg 85cc0a322e * src/truetype/ttinterp.h: Fix typo. 2004-11-23 22:10:21 +00:00
Werner Lemberg de015d6c28 Minor fixes. 2004-11-23 21:38:16 +00:00
Antoine Leca b4f790fc69 * builds/win32/detect.mk: Corrected logic that detects
Windows NT to use the previous change even when win32 is
forced. Corrected detection of win32 on Win9X.
* builds/dos/detect.mk: Added same correction as for win32
about COPY on Windows NT. Detection of plain DOS 7.x.
2004-11-23 17:53:14 +00:00
Antoine Leca fc9df61408 * builds/dos/detect.mk: Added same correction as for win32
about COPY on Windows NT. Detection of plain DOS 7.x.
2004-11-23 17:49:40 +00:00
Antoine Leca b58191ccf2 * builds/win32/detect.mk: Corrected logic that detects
Windows NT to use the previous change even when win32 is
forced. Corrected detection of win32 on Win9X.
2004-11-23 17:48:52 +00:00
Werner Lemberg 360c271c17 * builds/detect.mk: Undo change from 2004-11-20.
* builds/win32/detect.mk: If the `OS' environment variable contains
`Windows_NT', use `cmd.exe /c copy' for copying files.
2004-11-23 09:17:16 +00:00
Werner Lemberg b2072add4b * builds/detect.mk (dos_setup): Use `cmd.exe' for copying
$(CONFIG_MK) to force lowercase file name under Windows.
2004-11-20 12:45:13 +00:00
Werner Lemberg 80c4ef819b Improve documentation for `FT_LOAD_IGNORE_GLOBAL_ADVANCE_WIDTH'. 2004-11-19 17:02:37 +00:00
Werner Lemberg 9abc7eb5f3 Documentation update. 2004-11-19 16:55:32 +00:00
Werner Lemberg 4d1550e4e3 Improve CHANGES entry. 2004-11-19 14:12:48 +00:00
Werner Lemberg b9ff415dfb Fix a serious bug in the TT hinter.
* src/truetype/ttgload.c (TT_Process_Simple_Glyph): Don't shift
points vertically before hinting.

* docs/CHANGES: Updated.

* src/cache/ftcglyph.c (FTC_GNode_UnselectFamily,
FTC_GCache_Lookup): A new try to fix comparison with zero.
2004-11-19 10:35:52 +00:00
Werner Lemberg bbdee28f75 * builds/unix/configure.ac: Add `-fno-strict-aliasing' if gcc is
used.
* builds/unix/configure: Regenerated.
* builds/unix/config.guess, builds/unix/config.sub: Updated from
`config' CVS module at subversions.gnu.org.


* src/cache/ftcglyph.c (FTC_GNode_UnselectFamily,
FTC_GCache_Lookup): Fix comparison with zero.

* docs/INSTALL.VMS: Updated.

* vms_make.com: Updated.  All `descrip.mms' files are now created
automatically.

* src/*/descrip.mms: Removed.
2004-11-17 08:19:27 +00:00
Owen Taylor faedb01ec5 2004-11-16 Owen Taylor <otaylor@redhat.com>
* builds/unix/freetype-config.in: Supress -L$libdir for
        /usr/lib64 as well as /usr/lib. (Reported by Dan Winship -
        https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=139199)
2004-11-16 13:06:43 +00:00
Werner Lemberg 3605e470c1 Add new function FT_Get_PS_Font_Private().
* include/freetype/internal/services/svpsinfo.h
(PS_GetFontPrivateFunc): New service function.

* include/freetype/t1tables.h, src/base/fttype1.c
(FT_Get_PS_Font_Private): New function.

* src/type1/t1driver.c (t1_ps_get_font_private): New function.
(t1_service_ps_info): Updated.

* src/cff/cffdrivr.c (cff_service_ps_info): Updated.
* src/cid/cidriver.c (cid_service_ps_info): Updated.
* src/type42/t42drivr.c (t42_ps_get_font_private): New function.
(t42_service_ps_info): Updated.

* src/type42/t42parse.c (t42_parse_dict): Remove compiler warning.
2004-11-12 07:02:45 +00:00
Werner Lemberg 023a4bf3be * include/freetype/config/ftstdlib.h: Include `stddef.h'.
(ft_ptrdiff_t): Define.

* include/freetype/fttypes.h (FT_PtrDist): Use `ft_ptrdiff_t'.

* src/cid/cidload.c (cid_parse_dict), src/type1/t1load.c
(parse_dict): Fix compiler warning.
2004-10-14 11:33:04 +00:00
Werner Lemberg 685dd4f7b8 * src/sfnt/ttcmap.c (tt_face_build_cmaps): Check for pointer
overflow.

* src/sfnt/ttload.c (tt_face_load_hdmx): Protect against bad input.
Don't use FT_QNEW_ARRAY but FT_NEW_ARRAY to make deallocation work
in case of failure.

* src/sfnt/ttsbit.c (Load_SBit_Range): Check range intervals.
(tt_face_load_sbit_strikes): Allocate `strike_sbit_ranges' after
frame test.

* src/truetype/ttgload.c (TTLoad_Simple_Glyph): Add assertion for
`flag'.
2004-10-13 05:15:44 +00:00
Werner Lemberg 33febc0fb2 * docs/CHANGES: Updated.
Fix handling of NPUSHW if skipped in data stream.

* src/truetype/ttinterp.c (opcode_length): Set value for NPUSHW
to -2.
(SkipCode, TT_RunIns): Use opcode_length value for computation of
bytes to be skipped.
2004-10-09 07:07:43 +00:00