|
From: | Jan Alexander Steffens |
Subject: | Re: [ft-devel] Experimental: v38 interpreter with minimal backwards compatibility mode and linear advance widths |
Date: | Wed, 18 May 2016 07:38:37 +0200 |
On May 18, 2016 7:12 AM, "Werner LEMBERG" <address@hidden> wrote:
> There's one issue, though. Have a look at Ins_MIAP: I have changed
> your diff
>
> -#ifdef TT_CONFIG_OPTION_SUBPIXEL_HINTING
> +#ifdef TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY
> /* Only adjust if not in sph_compatibility_mode or ignore_x_mode. */
> /* Determined via experimentation and may be incorrect... */
> - if ( !SUBPIXEL_HINTING ||
> + if ( SUBPIXEL_HINTING_INFINALITY &&
> ( !exc->ignore_x_mode ||
> !exc->face->sph_compatibility_mode ) )
> -#endif /* TT_CONFIG_OPTION_SUBPIXEL_HINTING */
> +#endif /* TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY */
>
> to
>
> -#ifdef TT_CONFIG_OPTION_SUBPIXEL_HINTING
> +#ifdef TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY
> /* Only adjust if not in sph_compatibility_mode or ignore_x_mode. */
> /* Determined via experimentation and may be incorrect... */
> - if ( !SUBPIXEL_HINTING ||
> - ( !exc->ignore_x_mode ||
> - !exc->face->sph_compatibility_mode ) )
> -#endif /* TT_CONFIG_OPTION_SUBPIXEL_HINTING */
> + if ( !( SUBPIXEL_HINTING_INFINALITY &&
> + ( exc->ignore_x_mode &&
> + exc->face->sph_compatibility_mode ) ) )
> +#endif /* TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY */
>
> to retain the original logic. Please check.
This is weird. The original logic doesn't fit its comment and will adjust if either ignore X mode or face SPH compat mode is disabled, not when both are disabled as suggested.
Maybe this should be !(SUBPIXEL_HINTING_INFINALITY && (exc->ignore_x_mode || exc->face->sph_compatibility_mode)).
On the other hand, if this has been determined via experimentation, maybe the comment is wrong and should read "Skip adjusting if in both sph_compatibility_mode and ignore_x_mode" instead.
[Prev in Thread] | Current Thread | [Next in Thread] |