bugThe FreeType Project - Bugs: bug #23537, When hintstyle=hintslight,...


bug #23537: When hintstyle=hintslight, character is rendered incorrectly (tilde as macron)

Submitted by:  Simos Xenitellis <simos>
Submitted on:  Wed Jun 11 01:19:26 2008  
Severity: 3 - NormalItem Group: Incorrect behaviour
Status: ConfirmedPrivacy: Public
Assigned to: NoneOpen/Closed: Open
Planned Release: None

Add a New Comment (Rich MarkupRich Markup):

You are not logged in

Please log in, so followups can be emailed to you.


(Jump to the original submission Jump to the original submission)

Sat Jan 14 08:57:50 2017, comment #10:

Look here


Werner LEMBERG <wl>
Project Administrator
Sat Jan 14 03:59:37 2017, comment #9:

I've just looked at DejaVu and Liberation fonts. I do not see the problem any more. Can somebody please show how to reproduce it with FreeType 2.7.1?

Alexei Podtelezhnikov <podtelez>
Project Member
Fri Jan 13 20:58:53 2017, comment #8:

We don't hint AF_DIR_NONE.

If you have a sinus-like curve, let the vertical maximum correspond to value x, and the minimum to value y. Normal fonts have horizontal segments (in the auto-hinter sense) at the extremum values, which results in two `edges'. If |x-y| is less than a certain value, the auto-hinter makes x=y – and this is what should be avoided for tilde-like characters, but what you would expect for larger structures (cf. the Type 1`flex' feature).

Werner LEMBERG <wl>
Project Administrator
Fri Jan 13 15:17:42 2017, comment #7:

I would argue otherwise. This tilde segments are not horizontal, AF_DIR_NONE should never be hinted, because it removes features. What is so special here?

Alexei Podtelezhnikov <podtelez>
Project Member
Fri Jan 13 07:42:25 2017, comment #6:

Yes. However, in most situations you want the current behaviour of the auto-hinter to flatten such wiggles. As mentioned earlier, you need `character knowledge' to improve that. Right now I'm brooding on a possible implementation, but please don't expect quick results :-)

Werner LEMBERG <wl>
Project Administrator
Fri Jan 13 04:33:57 2017, comment #5:

This situation is reminiscent of bug 41334 but in the vertical direction, of course. The hinter is overzealous. If the tilde remained blurry, no one would complain.

Alexei Podtelezhnikov <podtelez>
Project Member
Wed Nov 2 06:17:43 2016, comment #4:

I would have to add `character knowledge' to FreeType's auto-hinter For the specific case, FreeType would have to know that the character is a tilde, then it could apply more vertical scaling at small sizes before hinting so that the glyph's wiggle stayed visible.

In 2008, there was no HarfBuzz support for FreeType, which meant that getting such information was impossible. This has changed meanwhile, so a fix could be done as outlined above.

However, I currently don't have plans to implement that, but maybe there are volunteers...

Or maybe there are better suggestions?

Werner LEMBERG <wl>
Project Administrator
Tue Nov 1 22:40:49 2016, comment #3:

bug 49312 was duped to this.

Jungshik Shin <jungshik>
Mon Aug 3 08:57:37 2015, comment #2:

This bug also manifests in letters like ã/õ (a/o tilde) and occasionally even with the ~ character alone. DejaVu, Liberation, Droid (Sans and Mono) seem to show this around size 10.

Wed Jun 11 08:17:50 2008, comment #1:

See also discussion at dejavu mailing list,

Simos Xenitellis <simos>
Wed Jun 11 01:19:26 2008, original submission:

When the following precise conditions apply, a character is rendered incorrectly. A tilde (perispomeni) is shown as macron (flat line).

a. The font is DejaVu Sans Mono (tested with dejavu 2.23 from Ubuntu 8.04, any font version should apply). I also tried FreeSans Mono, and it exhibits the same issue at more font sizes.
b. The font size must be 12pt (96DPI). Other sizes are ok.
c. Hinting should be set to hintstyle=hintslight. Other hinting styles are ok.
d. The character that manifests the problem is U+1FB7, ᾷ

WHAT ACTUALLY HAPPENS: The perispomeni over this character (ᾷ) is shown as if it was a macron (flat horizontal line).

WHAT SHOULD HAPPEN: The perispomeni should appear properly (as it does in other sizes, similar to the tilde).

Simos Xenitellis <simos>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach File(s):

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -unavailable- added by podtelez (Posted a comment)
  • -unavailable- added by jungshik (Posted a comment)
  • -unavailable- added by wl (Updated the item)
  • -unavailable- added by simos (Submitted the item)

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.


    Please enter the title of George Orwell's famous dystopian book (it's a date):



    Follow 25 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Wed Nov 2 06:21:43 2016wlCarbon-CopyRemoved perhaps also a release. -unavailable-=>-
    Wed Nov 2 06:21:27 2016wlCarbon-CopyRemoved be a freetype bug rather than a dejavu bug. this is with freetype from cvs as of june 05. i believe there were some more changes since then=>-
    Wed Nov 2 06:21:21 2016wlCarbon-CopyRemoved then=>-
    Wed Nov 2 06:21:15 2016wlCarbon-CopyRemoved 15 and 16 pt/em. this may=>-
    Wed Nov 2 06:21:10 2016wlCarbon-CopyRemoved 11=>-
    Wed Nov 2 06:21:03 2016wlCarbon-CopyRemoved it is hard to read at any size below 15 or 16. but the autofitter still ends up with more of a macron at 10=>-
    Wed Nov 2 06:20:56 2016wlCarbon-CopyRemoved given the instructions=>-
    Wed Nov 2 06:20:51 2016wlCarbon-CopyRemoved and as expected=>-
    Wed Nov 2 06:20:45 2016wlCarbon-CopyRemoved 11 and 10 pt/em. without anitaliasing=>-
    Wed Nov 2 06:20:38 2016wlCarbon-CopyRemoved 15=>-
    Wed Nov 2 06:20:33 2016wlCarbon-CopyRemoved 16=>-
    Wed Nov 2 06:20:27 2016wlCarbon-CopyRemoved 19=>-
    Wed Nov 2 06:20:21 2016wlCarbon-CopyRemoved 20=>-
    Wed Nov 2 06:20:17 2016wlCarbon-CopyRemoved 21=>-
    Wed Nov 2 06:20:09 2016wlCarbon-CopyRemoved the tilde looked like a macron at 22=>-
    Wed Nov 2 06:20:00 2016wlCarbon-CopyRemoved i saw a clear tilde at all readable pt sizes. with forced autofitting=>-
    Wed Nov 2 06:19:38 2016wlCarbon-CopyRemoved pt size ≡ pt/em.) with the bytecode interpreter and grayscale=>-
    Wed Nov 2 06:19:32 2016wlCarbon-CopyRemoved at ftview's default dpi=>-
    Wed Nov 2 06:19:25 2016wlCarbon-CopyRemoved is shown incorrectly. it is shown as with a simos> macron (horizontal line) instead of something like a tilde. i just tried it in ftview. (aiui=>-
    Wed Nov 2 06:19:17 2016wlCarbon-CopyRemoved at size 12 and rendered with simos> dejavu sans mono=>-
    Wed Nov 2 06:19:10 2016wlCarbon-CopyRemoved ᾷ=>-
    Wed Nov 2 06:18:53 2016wlCarbon-CopyRemoved at size 12 (greek small alpha with perispomeni+ypogegrammeni) from: james cloos - 2008-06-10 20:36 >>>>> "simos" == simos xenitellis writes: simos> i just noticed that u+1fb7=>-
    Wed Nov 2 06:18:38 2016wlCarbon-CopyRemoved re: [dejavu-fonts] u+1fb7 in dejavu sans mono=>-
    Tue Aug 18 11:02:03 2009pmwCarbon-Copy-=>Added the tilde looked like a macron at 22
      Carbon-Copy-=>Added 21

    Back to the top

    Powered by Savane 3.1-cleanup1