*/*: s/backwards compatibility/backward compatibility/.
This commit is contained in:
parent
c9e7063a01
commit
8cd31eb7b0
@ -1,3 +1,7 @@
|
||||
2017-05-03 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
*/*: s/backwards compatibility/backward compatibility/.
|
||||
|
||||
2017-05-03 Sascha Brawer <sascha@google.com>
|
||||
Werner Lemberg <wl@gnu.org
|
||||
|
||||
@ -127,7 +131,7 @@
|
||||
|
||||
* include/freetype/freetype.h (FT_Render_Mode): Fix order.
|
||||
|
||||
This retains backwards compatibility.
|
||||
This retains backward compatibility.
|
||||
|
||||
Noted by Alexei.
|
||||
|
||||
@ -162,7 +166,7 @@
|
||||
horizontally, only applying vertical scaling and hinting.
|
||||
|
||||
At the same time, the behaviour of the `light' auto-hinter gets
|
||||
restored for backwards compatibility: Both vertical and horizontal
|
||||
restored for backward compatibility: Both vertical and horizontal
|
||||
scaling is again based on rounded metrics values (this was changed
|
||||
in a commit from 2017-03-30 as a side effect). To be more precise,
|
||||
the behaviour is restored for TrueType fonts only; for other font
|
||||
|
@ -9062,7 +9062,7 @@
|
||||
FT_Glyph_Name_Requester => FT_Face_GetGlyphNameFunc
|
||||
FT_Name_Index_Requester => FT_Face_GetGlyphNameIndexFunc
|
||||
|
||||
* src/base/ftapi.c: New file. It contains backwards compatibility
|
||||
* src/base/ftapi.c: New file. It contains backward compatibility
|
||||
functions.
|
||||
|
||||
* include/freetype/internal/psaux.h, src/cid/cidload.c,
|
||||
@ -9246,7 +9246,7 @@
|
||||
{
|
||||
} PS_StructRec, *PS_Struct;
|
||||
|
||||
typedef PS_StructRec T1_Struct; /* backwards-compatibility */
|
||||
typedef PS_StructRec T1_Struct; /* backward compatibility */
|
||||
|
||||
Hence, we increase the coherency of the source code by effectively
|
||||
using the `Rec' prefix for structure types.
|
||||
|
@ -605,7 +605,7 @@
|
||||
|
||||
* docs/release: Minor additions and clarifications.
|
||||
|
||||
* docs/CHANGES: Updated to reflect many fixes for backwards
|
||||
* docs/CHANGES: Updated to reflect many fixes for backward
|
||||
compatibility. Still incomplete.
|
||||
|
||||
2006-02-26 David Turner <david@freetype.org>
|
||||
@ -2787,7 +2787,7 @@
|
||||
2005-06-15 Kirill Smelkov <kirr@mns.spb.ru>
|
||||
|
||||
The next release will be 2.2.0, so don't worry about source code
|
||||
backwards compatibility.
|
||||
backward compatibility.
|
||||
|
||||
* include/freetype/ftimage.h (FT_Outline_MoveToFunc,
|
||||
FT_Outline_LineToFunc, FT_Outline_ConicToFunc,
|
||||
|
@ -335,7 +335,7 @@
|
||||
|
||||
* include/freetype/ftmoderr.h: Fix commit from 2013-03-11.
|
||||
|
||||
The previous version was not backwards compatible. Reported by
|
||||
The previous version was not backward compatible. Reported by
|
||||
Behdad.
|
||||
|
||||
2013-03-14 Werner Lemberg <wl@gnu.org>
|
||||
|
@ -244,7 +244,7 @@
|
||||
|
||||
All public FreeType enumeration and flag values are uppercase...
|
||||
|
||||
* include/tttables.h (FT_Sfnt_Tag): Implement it. For backwards
|
||||
* include/tttables.h (FT_Sfnt_Tag): Implement it. For backward
|
||||
compatibility, retain the old values as macros.
|
||||
|
||||
* src/base/ftfstype.c (FT_Get_FSType_Flags), src/sfnt/sfdriver.c
|
||||
|
20
ChangeLog.26
20
ChangeLog.26
@ -563,26 +563,26 @@
|
||||
* src/truetype/ttinterp.c (SUBPIXEL_HINTING): Replaced by...
|
||||
(NO_SUBPIXEL_HINTING, SUBPIXEL_HINTING_INFINALITY,
|
||||
SUBPIXEL_HINTING_MINIMAL): ...new macros.
|
||||
(Direct_Move, Direct_Move_X, Direct_Move_Y): Handle backwards
|
||||
(Direct_Move, Direct_Move_X, Direct_Move_Y): Handle backward
|
||||
compatibility.
|
||||
Updated.
|
||||
(Ins_RS, Ins_FDEF, Ins_ENDF, Ins_CALL, Ins_LOOPCALL, Ins_MD):
|
||||
Updated.
|
||||
(Ins_INSTCTRL): Handle native ClearType mode flag.
|
||||
Updated.
|
||||
(Ins_FLIPPT, Ins_FLIPRGON, Ins_FLIPRGOFF): Handle backwards
|
||||
(Ins_FLIPPT, Ins_FLIPRGON, Ins_FLIPRGOFF): Handle backward
|
||||
compatibility.
|
||||
(Move_Zp2_Point): Ditto.
|
||||
(Ins_SHP): Updated.
|
||||
(Ins_SHPIX): Handle backwards compatibility.
|
||||
(Ins_SHPIX): Handle backward compatibility.
|
||||
Updated.
|
||||
(Ins_MSIRP, Ins_MDAP, Ins_MIAP, Ins_MDRP, Ins_MIRP): Updated.
|
||||
(Ins_ALIGNRP): Updated.
|
||||
(Ins_IUP, Ins_DELTAP): Handle backwards compatibility.
|
||||
(Ins_IUP, Ins_DELTAP): Handle backward compatibility.
|
||||
Updated.
|
||||
(Ins_GETINFO): Handle v38 flags.
|
||||
Updated.
|
||||
(TT_RunIns): Handle backwards compatibility mode.
|
||||
(TT_RunIns): Handle backward compatibility mode.
|
||||
Updated.
|
||||
|
||||
2016-05-17 Nikolaus Waxweiler <madigens@gmail.com>
|
||||
@ -606,16 +606,16 @@
|
||||
|
||||
* src/truetype/ttinterp.h (TT_ExecContextRec): Define new fields
|
||||
`subpixel_hinting_lean', `vertical_lcd_lean',
|
||||
`backwards_compatibility', `iupx_called', iupy_called', and
|
||||
`backward_compatibility', `iupx_called', iupy_called', and
|
||||
`grayscale_cleartype' for new hinting mode.
|
||||
|
||||
* src/truetype/ttdriver.c (tt_property_set): Handle v38 and v40
|
||||
interpreters conditionally.
|
||||
|
||||
* src/truetype/ttgload.c (TT_Hint_Glyph): Save phantom points unless
|
||||
in v38 backwards compatibility mode.
|
||||
in v38 backward compatibility mode.
|
||||
Updated.
|
||||
(compute_glyph_metrics): Add v38 backwards compatibility mode
|
||||
(compute_glyph_metrics): Add v38 backward compatibility mode
|
||||
constraint for adjusting advance widths.
|
||||
Updated.
|
||||
(tt_loader_init): Handle new flags `subpixel_hinting_lean',
|
||||
@ -1482,7 +1482,7 @@
|
||||
|
||||
Still handle `__FTERRORS_H__'.
|
||||
|
||||
We need this for backwards compatibility.
|
||||
We need this for backward compatibility.
|
||||
|
||||
Problem reported by John Emmas <johne53@tiscali.co.uk>.
|
||||
|
||||
@ -4222,7 +4222,7 @@
|
||||
|
||||
[truetype] Support selector index 3 of the INSTCTRL instruction.
|
||||
|
||||
This flag activates `native ClearType hinting', disabling backwards
|
||||
This flag activates `native ClearType hinting', disabling backward
|
||||
compatibility mode as described in Greg Hitchcocks whitepaper. In
|
||||
other words, it enables unrestricted functionality of all TrueType
|
||||
instructions in ClearType.
|
||||
|
2
configure
vendored
2
configure
vendored
@ -15,7 +15,7 @@
|
||||
|
||||
rm -f config.mk builds/unix/unix-def.mk builds/unix/unix-cc.mk
|
||||
|
||||
# respect GNUMAKE environment variable for backwards compatibility
|
||||
# respect GNUMAKE environment variable for backward compatibility
|
||||
if test "x$GNUMAKE" = x; then
|
||||
if test "x$MAKE" = x; then
|
||||
if test "x`make -v 2>/dev/null | egrep 'GNU|makepp'`" = x; then
|
||||
|
10
docs/CHANGES
10
docs/CHANGES
@ -342,7 +342,7 @@ CHANGES BETWEEN 2.6.2 and 2.6.3
|
||||
to the user. The exception to this is `__FTERRORS_H__', which
|
||||
must be sometimes undefined by the user to get FreeType error
|
||||
strings: Both this form and the new `FTERRORS_H_' macro are
|
||||
accepted for backwards compatibility.
|
||||
accepted for backward compatibility.
|
||||
|
||||
- Minor improvements mainly to the Type 1 driver.
|
||||
|
||||
@ -583,17 +583,17 @@ CHANGES BETWEEN 2.5.5 and 2.6
|
||||
compiler warnings.
|
||||
|
||||
- Function `FT_Bitmap_New' has been renamed to `FT_Bitmap_Init',
|
||||
since this name better reflects its function. For backwards
|
||||
since this name better reflects its function. For backward
|
||||
compatibility, the old function name is still available.
|
||||
|
||||
- Function `FT_Get_X11_Font_Format' has been renamed to
|
||||
`FT_Get_Font_Format', since this name better reflects its
|
||||
function. For backwards compatibility, the old function name is
|
||||
function. For backward compatibility, the old function name is
|
||||
still available.
|
||||
|
||||
Additionally, the header file macro for this function has been
|
||||
renamed to `FT_FONT_FORMATS_H' (the old name `FT_XFREE86_H' is
|
||||
retained for backwards compatibility).
|
||||
retained for backward compatibility).
|
||||
|
||||
- Various improvements to the `ftgrid' demo program.
|
||||
|
||||
@ -1027,7 +1027,7 @@ index ebcf189..3f2ce6b 100644
|
||||
II. MISCELLANEOUS
|
||||
|
||||
- The (top-level) `configure' script now respects the MAKE
|
||||
environment variable to specify a `make' binary. For backwards
|
||||
environment variable to specify a `make' binary. For backward
|
||||
compatibility, GNUMAKE still overrides MAKE, though.
|
||||
|
||||
- The `ftview' and `ftdiff' demo programs have been redesigned,
|
||||
|
@ -771,7 +771,7 @@ FT_BEGIN_HEADER
|
||||
FT_ENC_TAG( FT_ENCODING_WANSUNG, 'w', 'a', 'n', 's' ),
|
||||
FT_ENC_TAG( FT_ENCODING_JOHAB, 'j', 'o', 'h', 'a' ),
|
||||
|
||||
/* for backwards compatibility */
|
||||
/* for backward compatibility */
|
||||
FT_ENCODING_GB2312 = FT_ENCODING_PRC,
|
||||
FT_ENCODING_MS_SJIS = FT_ENCODING_SJIS,
|
||||
FT_ENCODING_MS_GB2312 = FT_ENCODING_PRC,
|
||||
@ -2037,7 +2037,7 @@ FT_BEGIN_HEADER
|
||||
/* `num_params' and `params' is used. They are ignored otherwise. */
|
||||
/* */
|
||||
/* Ideally, both the `pathname' and `params' fields should be tagged */
|
||||
/* as `const'; this is missing for API backwards compatibility. In */
|
||||
/* as `const'; this is missing for API backward compatibility. In */
|
||||
/* other words, applications should treat them as read-only. */
|
||||
/* */
|
||||
typedef struct FT_Open_Args_
|
||||
|
@ -106,7 +106,7 @@
|
||||
/* */
|
||||
/* #undefine __FTERRORS_H__ */
|
||||
/* */
|
||||
/* work for backwards compatibility. */
|
||||
/* work for backward compatibility. */
|
||||
/* */
|
||||
#if !( defined( FTERRORS_H_ ) && defined ( __FTERRORS_H__ ) )
|
||||
#define FTERRORS_H_
|
||||
|
@ -243,7 +243,7 @@ FT_BEGIN_HEADER
|
||||
* @description:
|
||||
* A tag for @FT_Parameter to make @FT_Open_Face ignore typographic
|
||||
* family names in the `name' table (introduced in OpenType version
|
||||
* 1.4). Use this for backwards compatibility with legacy systems that
|
||||
* 1.4). Use this for backward compatibility with legacy systems that
|
||||
* have a four-faces-per-family restriction.
|
||||
*
|
||||
*/
|
||||
@ -264,7 +264,7 @@ FT_BEGIN_HEADER
|
||||
* @description:
|
||||
* A tag for @FT_Parameter to make @FT_Open_Face ignore typographic
|
||||
* subfamily names in the `name' table (introduced in OpenType version
|
||||
* 1.4). Use this for backwards compatibility with legacy systems that
|
||||
* 1.4). Use this for backward compatibility with legacy systems that
|
||||
* have a four-faces-per-family restriction.
|
||||
*
|
||||
*/
|
||||
|
@ -136,7 +136,7 @@ FT_BEGIN_HEADER
|
||||
* FT_STROKER_LINEJOIN_MITER_VARIABLE generates a mitered line
|
||||
* join as used in XPS. FT_STROKER_LINEJOIN_MITER is an alias
|
||||
* for FT_STROKER_LINEJOIN_MITER_VARIABLE, retained for
|
||||
* backwards compatibility.
|
||||
* backward compatibility.
|
||||
*/
|
||||
typedef enum FT_Stroker_LineJoin_
|
||||
{
|
||||
|
@ -110,7 +110,7 @@ FT_BEGIN_HEADER
|
||||
* TrueType interpreter fully allows the advance width to be adjusted in
|
||||
* this mode, just the DWrite client will ignore those changes.
|
||||
*
|
||||
* _ClearType_ _Backwards_ _Compatibility_
|
||||
* _ClearType_ _Backward_ _Compatibility_
|
||||
*
|
||||
* This is a set of exceptions made in the TrueType interpreter to
|
||||
* minimize hinting techniques that were problematic with the extra
|
||||
@ -118,9 +118,9 @@ FT_BEGIN_HEADER
|
||||
* http://www.beatstamm.com/typography/RTRCh4.htm#Sec1 and
|
||||
* http://www.microsoft.com/typography/cleartype/truetypecleartype.aspx.
|
||||
* This technique is not to be confused with ClearType compatible
|
||||
* widths. ClearType backwards compatibility has no direct impact on
|
||||
* widths. ClearType backward compatibility has no direct impact on
|
||||
* changing advance widths, but there might be an indirect impact on
|
||||
* disabling some deltas. This could be worked around in backwards
|
||||
* disabling some deltas. This could be worked around in backward
|
||||
* compatibility mode.
|
||||
*
|
||||
* _Native_ _ClearType_ _Mode_
|
||||
|
@ -817,7 +817,7 @@ FT_BEGIN_HEADER
|
||||
|
||||
} PSAux_ServiceRec, *PSAux_Service;
|
||||
|
||||
/* backwards-compatible type definition */
|
||||
/* backward compatible type definition */
|
||||
typedef PSAux_ServiceRec PSAux_Interface;
|
||||
|
||||
|
||||
|
@ -1383,7 +1383,7 @@ FT_BEGIN_HEADER
|
||||
/* */
|
||||
/* sph_compatibility_mode :: */
|
||||
/* This flag is set if we are in ClearType */
|
||||
/* backwards compatibility mode (used by the */
|
||||
/* backward compatibility mode (used by the */
|
||||
/* v38 implementation of the bytecode */
|
||||
/* interpreter). */
|
||||
/* */
|
||||
|
@ -291,7 +291,7 @@ FT_BEGIN_HEADER
|
||||
|
||||
} PS_DesignMapRec, *PS_DesignMap;
|
||||
|
||||
/* backwards-compatible definition */
|
||||
/* backward compatible definition */
|
||||
typedef PS_DesignMapRec T1_DesignMap;
|
||||
|
||||
|
||||
@ -326,7 +326,7 @@ FT_BEGIN_HEADER
|
||||
} PS_BlendRec, *PS_Blend;
|
||||
|
||||
|
||||
/* backwards-compatible definition */
|
||||
/* backward compatible definition */
|
||||
typedef PS_BlendRec T1_Blend;
|
||||
|
||||
|
||||
|
@ -1216,7 +1216,7 @@ FT_BEGIN_HEADER
|
||||
|
||||
/* */
|
||||
|
||||
/* for backwards compatibility with older FreeType versions */
|
||||
/* for backward compatibility with older FreeType versions */
|
||||
#define TT_UCR_ARABIC_PRESENTATION_A \
|
||||
TT_UCR_ARABIC_PRESENTATION_FORMS_A
|
||||
#define TT_UCR_ARABIC_PRESENTATION_B \
|
||||
|
@ -3,7 +3,7 @@
|
||||
/* ttunpat.h */
|
||||
/* */
|
||||
/* Definitions for the unpatented TrueType hinting system. */
|
||||
/* Obsolete, retained for backwards compatibility. */
|
||||
/* Obsolete, retained for backward compatibility. */
|
||||
/* */
|
||||
/* Copyright 2003-2017 by */
|
||||
/* David Turner, Robert Wilhelm, and Werner Lemberg. */
|
||||
|
@ -38,7 +38,7 @@
|
||||
/*************************************************************************/
|
||||
/*************************************************************************/
|
||||
|
||||
/* backwards compatibility API */
|
||||
/* backward compatibility API */
|
||||
|
||||
FT_BASE_DEF( void )
|
||||
FT_New_Memory_Stream( FT_Library library,
|
||||
|
@ -3,7 +3,7 @@
|
||||
/* ftpatent.c */
|
||||
/* */
|
||||
/* FreeType API for checking patented TrueType bytecode instructions */
|
||||
/* (body). Obsolete, retained for backwards compatibility. */
|
||||
/* (body). Obsolete, retained for backward compatibility. */
|
||||
/* */
|
||||
/* Copyright 2007-2017 by */
|
||||
/* David Turner. */
|
||||
|
@ -163,7 +163,7 @@
|
||||
/* This may not be the right place for this, but it works... */
|
||||
/* Note that we have to unconditionally load the tweaks since */
|
||||
/* it is possible that glyphs individually switch ClearType's */
|
||||
/* backwards compatibility mode on and off. */
|
||||
/* backward compatibility mode on and off. */
|
||||
sph_set_tweaks( loader, glyph_index );
|
||||
}
|
||||
#endif /* TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY */
|
||||
@ -821,11 +821,11 @@
|
||||
#endif
|
||||
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
/* Save possibly modified glyph phantom points unless in v40 backwards */
|
||||
/* Save possibly modified glyph phantom points unless in v40 backward */
|
||||
/* compatibility mode, where no movement on the x axis means no reason */
|
||||
/* to change bearings or advance widths. */
|
||||
if ( !( driver->interpreter_version == TT_INTERPRETER_VERSION_40 &&
|
||||
!loader->exec->backwards_compatibility ) )
|
||||
!loader->exec->backward_compatibility ) )
|
||||
{
|
||||
#endif
|
||||
loader->pp1 = zone->cur[zone->n_points - 4];
|
||||
@ -2053,18 +2053,18 @@
|
||||
glyph->metrics.horiBearingY = bbox.yMax;
|
||||
glyph->metrics.horiAdvance = loader->pp2.x - loader->pp1.x;
|
||||
|
||||
/* Adjust advance width to the value contained in the hdmx table */
|
||||
/* unless FT_LOAD_COMPUTE_METRICS is set or backwards compatibility */
|
||||
/* mode of the v40 interpreter is active. See `ttinterp.h' for */
|
||||
/* details on backwards compatibility mode. */
|
||||
/* Adjust advance width to the value contained in the hdmx table */
|
||||
/* unless FT_LOAD_COMPUTE_METRICS is set or backward compatibility */
|
||||
/* mode of the v40 interpreter is active. See `ttinterp.h' for */
|
||||
/* details on backward compatibility mode. */
|
||||
if (
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
!( driver->interpreter_version == TT_INTERPRETER_VERSION_40 &&
|
||||
( loader->exec && loader->exec->backwards_compatibility ) ) &&
|
||||
!( driver->interpreter_version == TT_INTERPRETER_VERSION_40 &&
|
||||
( loader->exec && loader->exec->backward_compatibility ) ) &&
|
||||
#endif
|
||||
!face->postscript.isFixedPitch &&
|
||||
IS_HINTED( loader->load_flags ) &&
|
||||
!( loader->load_flags & FT_LOAD_COMPUTE_METRICS ) )
|
||||
!face->postscript.isFixedPitch &&
|
||||
IS_HINTED( loader->load_flags ) &&
|
||||
!( loader->load_flags & FT_LOAD_COMPUTE_METRICS ) )
|
||||
{
|
||||
FT_Byte* widthp;
|
||||
|
||||
|
@ -1656,7 +1656,7 @@
|
||||
/* zone :: The affected glyph zone. */
|
||||
/* */
|
||||
/* <Note> */
|
||||
/* See `ttinterp.h' for details on backwards compatibility mode. */
|
||||
/* See `ttinterp.h' for details on backward compatibility mode. */
|
||||
/* `Touches' the point. */
|
||||
/* */
|
||||
static void
|
||||
@ -1684,7 +1684,7 @@
|
||||
/* Exception to the post-IUP curfew: Allow the x component of */
|
||||
/* diagonal moves, but only post-IUP. DejaVu tries to adjust */
|
||||
/* diagonal stems like on `Z' and `z' post-IUP. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL && !exc->backwards_compatibility )
|
||||
if ( SUBPIXEL_HINTING_MINIMAL && !exc->backward_compatibility )
|
||||
zone->cur[point].x += FT_MulDiv( distance, v, exc->F_dot_P );
|
||||
else
|
||||
#endif
|
||||
@ -1700,10 +1700,10 @@
|
||||
if ( v != 0 )
|
||||
{
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
if ( !( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backwards_compatibility &&
|
||||
exc->iupx_called &&
|
||||
exc->iupy_called ) )
|
||||
if ( !( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backward_compatibility &&
|
||||
exc->iupx_called &&
|
||||
exc->iupy_called ) )
|
||||
#endif
|
||||
zone->cur[point].y += FT_MulDiv( distance, v, exc->F_dot_P );
|
||||
|
||||
@ -1756,7 +1756,7 @@
|
||||
/* */
|
||||
/* The following versions are used whenever both vectors are both */
|
||||
/* along one of the coordinate unit vectors, i.e. in 90% of the cases. */
|
||||
/* See `ttinterp.h' for details on backwards compatibility mode. */
|
||||
/* See `ttinterp.h' for details on backward compatibility mode. */
|
||||
/* */
|
||||
/*************************************************************************/
|
||||
|
||||
@ -1774,7 +1774,7 @@
|
||||
#endif /* TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY */
|
||||
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
if ( SUBPIXEL_HINTING_MINIMAL && !exc->backwards_compatibility )
|
||||
if ( SUBPIXEL_HINTING_MINIMAL && !exc->backward_compatibility )
|
||||
zone->cur[point].x += distance;
|
||||
else
|
||||
#endif
|
||||
@ -1796,7 +1796,7 @@
|
||||
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
if ( !( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backwards_compatibility &&
|
||||
exc->backward_compatibility &&
|
||||
exc->iupx_called && exc->iupy_called ) )
|
||||
#endif
|
||||
zone->cur[point].y += distance;
|
||||
@ -5126,11 +5126,11 @@
|
||||
#endif
|
||||
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
/* Native ClearType fonts sign a waiver that turns off all backwards */
|
||||
/* Native ClearType fonts sign a waiver that turns off all backward */
|
||||
/* compatibility hacks and lets them program points to the grid like */
|
||||
/* it's 1996. They might sign a waiver for just one glyph, though. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL )
|
||||
exc->backwards_compatibility = !FT_BOOL( L == 4 );
|
||||
exc->backward_compatibility = !FT_BOOL( L == 4 );
|
||||
#endif
|
||||
}
|
||||
}
|
||||
@ -5218,11 +5218,11 @@
|
||||
|
||||
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
/* See `ttinterp.h' for details on backwards compatibility mode. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backwards_compatibility &&
|
||||
exc->iupx_called &&
|
||||
exc->iupy_called )
|
||||
/* See `ttinterp.h' for details on backward compatibility mode. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backward_compatibility &&
|
||||
exc->iupx_called &&
|
||||
exc->iupy_called )
|
||||
goto Fail;
|
||||
#endif
|
||||
|
||||
@ -5273,11 +5273,11 @@
|
||||
|
||||
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
/* See `ttinterp.h' for details on backwards compatibility mode. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backwards_compatibility &&
|
||||
exc->iupx_called &&
|
||||
exc->iupy_called )
|
||||
/* See `ttinterp.h' for details on backward compatibility mode. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backward_compatibility &&
|
||||
exc->iupx_called &&
|
||||
exc->iupy_called )
|
||||
return;
|
||||
#endif
|
||||
|
||||
@ -5311,11 +5311,11 @@
|
||||
|
||||
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
/* See `ttinterp.h' for details on backwards compatibility mode. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backwards_compatibility &&
|
||||
exc->iupx_called &&
|
||||
exc->iupy_called )
|
||||
/* See `ttinterp.h' for details on backward compatibility mode. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backward_compatibility &&
|
||||
exc->iupx_called &&
|
||||
exc->iupy_called )
|
||||
return;
|
||||
#endif
|
||||
|
||||
@ -5378,7 +5378,7 @@
|
||||
}
|
||||
|
||||
|
||||
/* See `ttinterp.h' for details on backwards compatibility mode. */
|
||||
/* See `ttinterp.h' for details on backward compatibility mode. */
|
||||
static void
|
||||
Move_Zp2_Point( TT_ExecContext exc,
|
||||
FT_UShort point,
|
||||
@ -5389,8 +5389,8 @@
|
||||
if ( exc->GS.freeVector.x != 0 )
|
||||
{
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
if ( !( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backwards_compatibility ) )
|
||||
if ( !( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backward_compatibility ) )
|
||||
#endif
|
||||
exc->zp2.cur[point].x += dx;
|
||||
|
||||
@ -5401,10 +5401,10 @@
|
||||
if ( exc->GS.freeVector.y != 0 )
|
||||
{
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
if ( !( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backwards_compatibility &&
|
||||
exc->iupx_called &&
|
||||
exc->iupy_called ) )
|
||||
if ( !( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backward_compatibility &&
|
||||
exc->iupx_called &&
|
||||
exc->iupy_called ) )
|
||||
#endif
|
||||
exc->zp2.cur[point].y += dy;
|
||||
|
||||
@ -5701,8 +5701,8 @@
|
||||
else
|
||||
#endif
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backwards_compatibility )
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backward_compatibility )
|
||||
{
|
||||
/* Special case: allow SHPIX to move points in the twilight zone. */
|
||||
/* Otherwise, treat SHPIX the same as DELTAP. Unbreaks various */
|
||||
@ -6466,7 +6466,7 @@
|
||||
R.x = FT_MulDiv( val, dax, discriminant );
|
||||
R.y = FT_MulDiv( val, day, discriminant );
|
||||
|
||||
/* XXX: Block in backwards_compatibility and/or post-IUP? */
|
||||
/* XXX: Block in backward_compatibility and/or post-IUP? */
|
||||
exc->zp2.cur[point].x = exc->zp1.cur[a0].x + R.x;
|
||||
exc->zp2.cur[point].y = exc->zp1.cur[a0].y + R.y;
|
||||
}
|
||||
@ -6474,7 +6474,7 @@
|
||||
{
|
||||
/* else, take the middle of the middles of A and B */
|
||||
|
||||
/* XXX: Block in backwards_compatibility and/or post-IUP? */
|
||||
/* XXX: Block in backward_compatibility and/or post-IUP? */
|
||||
exc->zp2.cur[point].x = ( exc->zp1.cur[a0].x +
|
||||
exc->zp1.cur[a1].x +
|
||||
exc->zp0.cur[b0].x +
|
||||
@ -6866,11 +6866,11 @@
|
||||
|
||||
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
/* See `ttinterp.h' for details on backwards compatibility mode. */
|
||||
/* See `ttinterp.h' for details on backward compatibility mode. */
|
||||
/* Allow IUP until it has been called on both axes. Immediately */
|
||||
/* return on subsequent ones. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backwards_compatibility )
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backward_compatibility )
|
||||
{
|
||||
if ( exc->iupx_called && exc->iupy_called )
|
||||
return;
|
||||
@ -7112,10 +7112,10 @@
|
||||
{
|
||||
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
/* See `ttinterp.h' for details on backwards compatibility */
|
||||
/* mode. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backwards_compatibility )
|
||||
/* See `ttinterp.h' for details on backward compatibility */
|
||||
/* mode. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
exc->backward_compatibility )
|
||||
{
|
||||
if ( !( exc->iupx_called && exc->iupy_called ) &&
|
||||
( ( exc->is_composite && exc->GS.freeVector.y != 0 ) ||
|
||||
@ -7259,7 +7259,7 @@
|
||||
{
|
||||
if ( exc->ignore_x_mode )
|
||||
{
|
||||
/* if in ClearType backwards compatibility mode, */
|
||||
/* if in ClearType backward compatibility mode, */
|
||||
/* we sometimes change the TrueType version dynamically */
|
||||
K = exc->rasterizer_version;
|
||||
FT_TRACE6(( "Setting rasterizer version %d\n",
|
||||
@ -7589,15 +7589,15 @@
|
||||
#endif /* TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY */
|
||||
|
||||
#ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
|
||||
/* Toggle backwards compatibility according to what font says, except */
|
||||
/* Toggle backward compatibility according to what font says, except */
|
||||
/* when it's a `tricky' font that heavily relies on the interpreter to */
|
||||
/* render glyphs correctly, e.g. DFKai-SB. Backwards compatibility */
|
||||
/* render glyphs correctly, e.g. DFKai-SB. Backward compatibility */
|
||||
/* hacks may break it. */
|
||||
if ( SUBPIXEL_HINTING_MINIMAL &&
|
||||
!FT_IS_TRICKY( &exc->face->root ) )
|
||||
exc->backwards_compatibility = !( exc->GS.instruct_control & 4 );
|
||||
exc->backward_compatibility = !( exc->GS.instruct_control & 4 );
|
||||
else
|
||||
exc->backwards_compatibility = FALSE;
|
||||
exc->backward_compatibility = FALSE;
|
||||
|
||||
exc->iupx_called = FALSE;
|
||||
exc->iupy_called = FALSE;
|
||||
|
@ -256,7 +256,7 @@ FT_BEGIN_HEADER
|
||||
* Modern TrueType fonts are usually rendered through Microsoft's
|
||||
* collection of rendering techniques called ClearType (e.g., subpixel
|
||||
* rendering and subpixel hinting). When ClearType was introduced, most
|
||||
* fonts were not ready. Microsoft decided to implement a backwards
|
||||
* fonts were not ready. Microsoft decided to implement a backward
|
||||
* compatibility mode that employed several simple to complicated
|
||||
* assumptions and tricks that modified the interpretation of the
|
||||
* bytecode contained in these fonts to make them look ClearType-y
|
||||
@ -316,12 +316,12 @@ FT_BEGIN_HEADER
|
||||
* very specific patterns (`superhinting') for pre-ClearType-displays,
|
||||
* the worse the results.
|
||||
*
|
||||
* Microsoft defines a way to turn off backwards compatibility and
|
||||
* Microsoft defines a way to turn off backward compatibility and
|
||||
* interpret instructions as before (called `native ClearType')[2][3].
|
||||
* The font designer then regains full control and is responsible for
|
||||
* making the font work correctly with ClearType without any
|
||||
* hand-holding by the interpreter or rasterizer[4]. The v40
|
||||
* interpreter assumes backwards compatibility by default, which can be
|
||||
* interpreter assumes backward compatibility by default, which can be
|
||||
* turned off the same way by executing the following in the control
|
||||
* program (cf. `Ins_INSTCTRL').
|
||||
*
|
||||
@ -331,7 +331,7 @@ FT_BEGIN_HEADER
|
||||
* [1] Tricky fonts as FreeType defines them rely on the bytecode
|
||||
* interpreter to display correctly. Hacks can interfere with them,
|
||||
* so they get treated like native ClearType fonts (v40 with
|
||||
* backwards compatibility turned off). Cf. `TT_RunIns'.
|
||||
* backward compatibility turned off). Cf. `TT_RunIns'.
|
||||
*
|
||||
* [2] Proposed by Microsoft's Greg Hitchcock in
|
||||
* https://www.microsoft.com/typography/cleartype/truetypecleartype.aspx
|
||||
@ -357,10 +357,10 @@ FT_BEGIN_HEADER
|
||||
/* is managed differently. */
|
||||
FT_Bool vertical_lcd_lean;
|
||||
|
||||
/* Default to backwards compatibility mode in v40 interpreter. If */
|
||||
/* Default to backward compatibility mode in v40 interpreter. If */
|
||||
/* this is false, it implies the interpreter is in v35 or in native */
|
||||
/* ClearType mode. */
|
||||
FT_Bool backwards_compatibility;
|
||||
FT_Bool backward_compatibility;
|
||||
|
||||
/* Useful for detecting and denying post-IUP trickery that is usually */
|
||||
/* used to fix pixel patterns (`superhinting'). */
|
||||
|
Loading…
Reference in New Issue
Block a user