Werner Lemberg
14df6b1a63
[autofit] By default, enable warping code but switch off warping.
...
Suggested by Behdad.
* include/config/ftoption.h: Define AF_CONFIG_OPTION_USE_WARPER.
* src/autofit/afmodule.c (af_autofitter_init): Initialize `warping'
with `false'.
2015-04-22 11:14:35 +02:00
Werner Lemberg
12661a5ae0
[autofit] Introduce `warping' property.
...
This code replaces the debugging hook from the previous commit with
a better, more generic solution.
* include/ftautoh.h: Document it.
* src/autofit/afmodule.h (AF_ModuleRec)
[AF_CONFIG_OPTION_USE_WARPER]: Add `warping' field.
* src/autofit/afmodule.c (_af_debug_disable_warper): Remove.
(af_property_set, af_property_get, af_autofitter_init)
[AF_CONFIG_OPTION_USE_WARPER]: Handle `warping' option.
* src/autofit/afhints.h (AF_HINTS_DO_WARP): Remove use of the no
longer existing `_af_debug_disable_warper'.
* src/autofit/afcjk.c (af_cjk_hints_init), src/autofit/aflatin.c
(af_latin_hints_init), src/autofit/aflatin2.c (af_latin2_hints_init)
[AF_CONFIG_OPTION_USE_WARPER]: Add `AF_SCALER_FLAG_NO_WARPER' to the
scaler flags if warping is off.
* src/autofit/aftypes.h: Updated.
2015-04-21 07:13:59 +02:00
Werner Lemberg
b51f01583f
Minor.
2015-04-21 06:47:52 +02:00
Werner Lemberg
5cd2155113
[cff] Update advance width handling to OpenType 1.7.
...
Problem reported by Behdad.
* src/cff/cffdrivr.c (cff_get_advances): Handle SFNT case
separately.
* src/cff/cffgload.c (cff_slot_load): Use advance width and side
bearing values from `hmtx' table if present.
2015-04-10 07:01:01 +02:00
Werner Lemberg
10e2bb8b3d
[type1, truetype] Make the MM API more flexible w.r.t. `num_coords'.
...
This commit allows `num_coords' to be larger or smaller than the
number of available axes while selecting a design instance, either
ignoring excess data or using defaults if data is missing.
* src/truetype/ttgxvar.c (TT_Set_MM_Blend, TT_Set_Var_Design):
Implement it.
* src/type1/t1load.c (T1_Set_MM_Blend, T1_Set_MM_Design,
T1_Set_Var_Design): Ditto.
2015-03-29 13:32:47 +02:00
Werner Lemberg
772a5e5ddd
Update links to Apple's TrueType specification.
2015-03-20 09:40:10 +01:00
Werner Lemberg
a451638ec5
Rename `svxf86nm.h' to `svfntfmt.h'; update related symbols.
...
* include/internal/ftserv.h (FT_SERVICE_XFREE86_NAME_H): Renamed
to...
(FT_SERVICE_FONT_FORMAT_H): This.
* include/internal/services/svfntfmt.h (FT_XF86_FORMAT_*): Renamed
to ...
(FT_FONT_FORMAT_*): This.
src/base/ftfntfmt.c, src/bdf/bdfdrivr.c, src/cff/cffdrivr.c,
src/cid/cidriver.c, src/pcf/pcfdrivr.c, src/pfr/pfrdrivr.c,
src/truetype/ttdriver.c, src/type1/t1driver.c,
src/type42/t42drivr.c, src/winfonts/winfnt.c: Updated.
2015-03-11 08:55:12 +01:00
Werner Lemberg
ba53879ea9
Minor.
2015-03-11 08:54:33 +01:00
Werner Lemberg
dd7028c46e
Rename `FT_XFREE86_H' to `FT_FONT_FORMATS_H'.
...
* include/config/ftheader.h: Implement it.
* src/base/ftfntfmt.c, docs/CHANGES: Updated.
2015-03-11 08:54:12 +01:00
Werner Lemberg
f4d1c11faa
Rename `FT_Get_X11_Font_Format' to `FT_Get_Font_Format'.
...
* include/ftfntfmt.h, src/base/ftfntfmt.c: Implement it.
* docs/CHANGES: Updated.
2015-03-11 08:54:08 +01:00
Werner Lemberg
3e58779675
Minor copyright and e-mail address issues.
2015-03-11 08:48:15 +01:00
Werner Lemberg
0633995b55
Rename `ftxf86.[ch]' to `ftfntfmt.[ch]'.
...
CMakeLists.txt, builds/amiga/makefile, builds/amiga/makefile.os4,
builds/amiga/smakefile, builds/mac/FreeType.m68k_cfm.make.txt,
builds/mac/FreeType.m68k_far.make.txt,
builds/mac/FreeType.ppc_carbon.make.txt,
builds/mac/FreeType.ppc_classic.make.txt, builds/symbian/bld.inf,
builds/symbian/freetype.mmp, builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2008-ce/freetype.vcproj,
builds/windows/vc2005/freetype.vcproj,
builds/windows/vc2008/freetype.vcproj,
builds/windows/vc2010/freetype.vcxproj,
builds/windows/vc2010/freetype.vcxproj.filters,
builds/windows/visualc/freetype.dsp,
builds/windows/visualc/freetype.vcproj,
builds/windows/visualce/freetype.dsp,
builds/windows/visualce/freetype.vcproj, docs/INSTALL.ANY,
include/config/ftheader.h, include/ftfntfmt.h, modules.cfg,
src/base/ftfntfmt.c, vms_make.com: Updated.
2015-03-11 08:45:00 +01:00
Werner Lemberg
eee7d8baa1
[base] Rename `FT_Bitmap_New' to `FT_Bitmap_Init'.
...
* include/ftbitmap.h, src/base/ftbitmap.c: Implement it.
Update all callers.
* docs/CHANGES: Updated.
2015-03-10 11:15:15 +01:00
Werner Lemberg
0aa36160d6
Formatting, whitespace, addition of some comments.
2015-03-08 22:50:37 +01:00
Werner Lemberg
6fce8427e4
Minor documentation improvement.
...
Based on a suggestion from Lawrence D'Oliveiro <ldo@geek-central.gen.nz>.
2015-03-06 23:53:28 +01:00
Werner Lemberg
43d4901f32
Another minor documentation improvement.
2015-03-03 06:48:11 +01:00
Werner Lemberg
8bb4c8d454
Minor documentation improvement.
2015-03-03 06:39:01 +01:00
Werner Lemberg
a07029ef5f
Simplify `TYPEOF' macro.
...
No need for two arguments.
* include/config/ftconfig.h, builds/unix/ftconfig.in,
builds/vms/ftconfig.h (TYPEOF): Updated.
* include/internal/ftobjs.h (FT_PAD_FLOOR, FT_PIX_FLOOR),
src/autofit/afwarp.h (AF_WARPER_FLOOR): Updated.
2015-03-02 06:54:08 +01:00
Werner Lemberg
6381541bd0
Update links.
2015-02-26 20:54:07 +01:00
Werner Lemberg
f9837528d3
Typo.
2015-02-26 15:03:41 +01:00
Werner Lemberg
04c223703a
[psaux] Signedness fixes.
...
* include/internal/psaux.h, src/psaux/afmparse.c,
src/psaux/afmparse.h, src/psaux/psconv.c, src/psaux/psobjs.c,
src/psaux/t1cmap.c, src/psaux/t1decode.c: Apply.
2015-02-25 11:20:20 +01:00
Werner Lemberg
559727d519
Change dimension fields in `FTC_ImageTypeRec' to unsigned type.
...
This doesn't break ABI.
* include/ftcache.h (FTC_ImageTypeRec): Use unsigned types for
`width' and `height'.
* docs/CHANGES: Document it.
2015-02-25 06:59:02 +01:00
Werner Lemberg
3d3523f721
Remove invalid note.
2015-02-25 06:46:13 +01:00
Werner Lemberg
4b9234b8a2
[cache] Don't use `labs'.
...
This is the only place in FreeType where this function was used.
* include/config/ftstdlib.h (ft_labs): Remove.
* src/cache/ftcimage.c (ftc_inode_weight): Replace `ft_labs' with
`FT_ABS'.
2015-02-25 06:31:43 +01:00
Werner Lemberg
3a8d0537b5
[cff] Signedness fixes for basic infrastructure and old engine.
...
* include/internal/pshints.h, src/cff/cffdrivr.c,
src/cff/cffgload.c, src/cff/cffgload.h, src/cff/cffload.c,
src/cff/cffobjs.c, src/cff/cffparse.c, src/pshinter/pshrec.c: Apply.
2015-02-20 08:35:32 +01:00
Werner Lemberg
d7db7fb54f
Minor.
2015-02-19 23:09:32 +01:00
Werner Lemberg
d217950f82
Minor documentation improvement.
2015-02-19 06:45:49 +01:00
Werner Lemberg
3b5f332c5b
[type1] Fix signedness issues.
...
* include/internal/psaux.h, include/internal/t1types.h,
src/psaux/psobjs.c, src/psaux/psobjs.h, src/psaux/t1decode.c,
src/type1/t1gload.c, src/type1/t1load.c, src/type1/t1parse.c: Apply.
2015-02-18 11:45:22 +01:00
Werner Lemberg
272e3cd077
[psaux, type1] Fix minor AFM issues.
...
* include/internal/t1types.h (AFM_KernPairRec): Make indices
unsigned.
Update users.
(AFM_FontInfoRec): Make element counters unsigned.
Update users.
* src/psaux/afmparse.h (AFM_ValueRec): Add union member for unsigned
int.
* src/psaux/afmparse.c (afm_parse_track_kern, afm_parse_kern_pairs):
Reject negative values for number of kerning elements.
* src/type1/t1afm.c, src/tools/test_afm.c: Updated.
2015-02-18 11:38:46 +01:00
Werner Lemberg
6bd7d28fc7
Don't use `FT_PtrDist' for lengths.
...
Use FT_UInt instead.
* include/internal/psaux.h (PS_Table_FuncsRec, PS_TableRec,
T1_DecoderRec): Do it.
* include/internal/t1types.h (T1_FontRec): Ditto.
* src/cid/cidload.c (cid_parse_dict): Updated.
* src/pfr/pfrload.c (pfr_extra_item_load_font_id): Ditto.
* src/psaux/psobjs.c (ps_table_add), src/psaux/psobjs.h: Ditto.
* src/type1/t1load.c (parse_blend_axis_types, parse_encoding,
parse_chharstrings, parse_dict): Ditto.
* src/type42/t42parse.c (t42_parse_encoding, t42_parse_charstrings,
t42_parse_dict): Ditto.
2015-02-18 09:22:06 +01:00
Werner Lemberg
d9c3f15117
[truetype] More signedness fixes.
...
* include/internal/tttypes.h, src/truetype/ttinterp.h,
src/truetype/ttobjs.h, src/truetype/ttinterp.c,
src/truetype/ttobjs.c: Apply.
2015-02-17 09:21:26 +01:00
Werner Lemberg
0a33a3984f
[truetype] Various signedness fixes.
...
* include/internal/ftgloadr.h, src/truetype/ttpload.c: Apply.
* src/truetype/ttgload.c: Apply.
(TT_Get_VMetrics): Protect against invalid ascenders and descenders
while constructing advance height.
2015-02-17 08:03:05 +01:00
Werner Lemberg
10aa858593
* include/tttables.h (TT_OS2): `fsType' must be FT_UShort.
2015-02-16 20:12:54 +01:00
Werner Lemberg
82235d0474
Next round of minor compiler warning fixes.
...
* include/internal/ftrfork.h (FT_RFork_Ref): Change `offset' member
type to `FT_Long'.
(CONST_FT_RFORK_RULE_ARRAY_BEGIN): Add `static' keyword.
* include/internal/ftstream.h (FT_Stream_Pos): Return `FT_ULong'.
* src/base/ftoutln.c, src/base/ftrfork.c, src/base/ftstream.c:
Signedess fixes.
2015-02-16 19:35:16 +01:00
Werner Lemberg
3cfa4d124c
Various minor signedness fixes.
...
* include/ftadvanc.h, include/internal/ftobjs.h,
src/base/ftgloadr.c, src/base/ftobjs.c: Apply.
2015-02-16 17:59:06 +01:00
Werner Lemberg
6f325c26cf
New `TYPEOF' macro.
...
This helps suppress signedness warnings, avoiding issues with
implicit conversion changes.
* include/config/ftconfig.h, builds/unix/ftconfig.in,
builds/vms/ftconfig.h (TYPEOF): Define.
* include/internal/ftobjs.h (FT_PAD_FLOOR, FT_PIX_FLOOR),
src/autofit/afwarp.h (AF_WARPER_FLOOR): Use it.
2015-02-16 11:31:32 +01:00
Werner Lemberg
587351b7e2
* include/internal/ftmemory.h: Add some `FT_Offset' casts.
...
(FT_MEM_SET, FT_MEM_COPY, FT_MEM_MOVE, FT_ARRAY_ZERO, FT_ARRAY_COPY,
FT_MEM_MOVE): Do it.
2015-02-16 07:03:22 +01:00
Werner Lemberg
0bd564a94d
Add another link to cmap information.
2015-01-22 08:26:48 +01:00
Werner Lemberg
1a42f3253d
Clarify meaning of FT_ENCODING_MS_SYMBOL.
2015-01-22 07:56:24 +01:00
Werner Lemberg
f57fc59e01
Run `src/tools/update-copyright'.
2015-01-17 20:41:43 +01:00
Werner Lemberg
f796cf6c6b
Normalize copyright notice format.
2015-01-17 20:11:10 +01:00
Werner Lemberg
4eff854c27
* docs/CHANGES: Updated, using a description from Behdad.
2015-01-14 20:06:19 +01:00
Behdad Esfahbod
603292d7b0
[base] Don't initialize unused `driver->glyph_loader'.
...
* src/base/ftobjs.c (Destroy_Driver): Don't call
`FT_GlyphLoader_Done'.
(FT_Add_Module): Don't call `FT_GlyphLoader_New'.
2015-01-14 18:35:56 +01:00
Behdad Esfahbod
5163425344
[base] Don't allocate `library->raster_pool' anymore.
...
It's unused after the following commits:
[raster] Allocate render pool for mono rasterizer on the stack.
[raster] Remove 5-level gray AA mode from monochrome rasterizer.
The value of FT_RENDER_POOL_SIZE still serves the purpose it used to
serve, which is, to adjust the pool size. But the pool is now
allocated on the stack on demand.
* src/base/ftobjs.c (FT_New_Library, FT_Done_Library): Implement.
2015-01-14 18:30:59 +01:00
Behdad Esfahbod
8dc8635874
[raster] Remove 5-level gray AA mode from monochrome rasterizer.
...
It was off by default and couldn't be turned on at runtime. And the
smooth rasterizer superceded it over ten years ago. No point in
keeping. Comments suggested that it was there for compatibility
with FreeType 1.
550 lines down.
* src/raster/ftraster.c (FT_RASTER_OPTION_ANTI_ALIASING,
RASTER_GRAY_LINES): Remove macros and all associated code.
(black_TWorker): Remove `gray_min_x' and `gray_max_x'.
(black_TRaster): Remove `grays' and `gray_width'.
(Vertical_Sweep_Init, Vertical_Sweep_Span, Vertical_Sweep_Drop,
ft_black_render): Updated.
* src/raster/ftrend1.c (ft_raster1_render): Simplify code.
(ft_raster5_renderer_class): Removed.
2015-01-14 18:06:22 +01:00
Werner Lemberg
01be130d73
[truetype] Remove TT_CONFIG_OPTION_INTERPRETER_SWITCH.
...
Behdad suggested this code simplification, and nobody objected...
* include/config/ftoption.h, devel/ftoption.h
(TT_CONFIG_OPTION_INTERPRETER_SWITCH): Remove.
* src/truetype/ttinterp.c [TT_CONFIG_OPTION_INTERPRETER_SWITCH]:
Remove related code.
(ARRAY_BOUND_ERROR): Use do-while loop.
2015-01-10 23:05:37 +01:00
Werner Lemberg
232bd948fd
* Version 2.5.5 released.
...
=========================
Tag sources with `VER-2-5-5'.
* docs/VERSION.DLL: Update documentation and bump version number to
2.5.5.
* README, Jamfile (RefDoc), builds/windows/vc2005/freetype.vcproj,
builds/windows/vc2005/index.html,
builds/windows/vc2008/freetype.vcproj,
builds/windows/vc2008/index.html,
builds/windows/vc2010/freetype.vcxproj,
builds/windows/vc2010/index.html,
builds/windows/visualc/freetype.dsp,
builds/windows/visualc/freetype.vcproj,
builds/windows/visualc/index.html,
builds/windows/visualce/freetype.dsp,
builds/windows/visualce/freetype.vcproj,
builds/windows/visualce/index.html,
builds/wince/vc2005-ce/freetype.vcproj,
builds/wince/vc2005-ce/index.html,
builds/wince/vc2008-ce/freetype.vcproj,
builds/wince/vc2008-ce/index.html: s/2.5.4/2.5.5/, s/254/255/.
* include/freetype/freetype.h (FREETYPE_PATCH): Set to 5.
* builds/unix/configure.raw (version_info): Set to 17:4:11.
* CMakeLists.txt (VERSION_PATCH): Set to 5.
* docs/CHANGES: Updated.
* builds/toplevel.mk (dist): Fix typos.
2014-12-30 21:44:51 +01:00
Werner Lemberg
bef8df0a3a
Minor doc improvements.
2014-12-13 07:26:04 +01:00
suzuki toshiya
2b59282b2d
[ftvalid] Introduce FT_THROW() in FT_INVALID_XXX macros.
...
Original patch is designed by Werner Lemberg. Extra part
for otvalid and gxvalid are added by suzuki toshiya, see
discussion:
http://lists.nongnu.org/archive/html/freetype-devel/2014-12/msg00002.html
http://lists.nongnu.org/archive/html/freetype-devel/2014-12/msg00007.html
* include/internal/ftvalid.h: Introduce FT_THROW() in FT_INVALID_().
* src/gxvalid/gxvcommn.h: Ditto.
* src/otvalid/otvcommn.h: Ditto.
2014-12-10 00:27:41 +09:00
Werner Lemberg
553c9672b3
Work around a bug in Borland's C++ compiler.
...
See
http://qc.embarcadero.com/wc/qcmain.aspx?d=118998
for Borland's bug tracker entry.
Reported by Yuliana Zigangirova <zigangirova@inbox.ru>,
http://lists.gnu.org/archive/html/freetype-devel/2014-04/msg00001.html .
* include/internal/ftvalid.h (FT_ValidatorRec), src/smooth/ftgrays.c
(gray_TWorker_): Move `ft_jmp_buf' field to be the first element.
2014-12-07 19:29:52 +01:00