Louis Semprini | 12 Aug 18:41 2014

[ft] iOS 7 system font Helvetica Neue horribly mis-hinted with FreeType 2.5.3


Thank you so much for the open source miracle that is FreeType.

I really hope I am doing something simple wrong here, because there must be thousands of iOS app vendors trying the same thing every day.  It seems all OpenGL iOS apps would want to do just what I am doing here.  Also, if indeed iOS uses FreeType for its own rendering, then this should definitely work ?!?!

I have some absolutely minimal FreeType code that just tries to render simple A-Z glyphs with the iOS system font, "Helvetica Neue Interface."

I am seeing FT results that are horribly disfigured like the attached file bad_hinting.png or you can see the same image here:


As you can see, random character strokes are thick and random strokes are thin, as if FT were trying to fit my text to some coarse grid.

I ONLY see this disfigurement with the iOS Helvetica fonts (_H_Helvetica.ttc, _H_HelveticaNeue.ttc, _H_HelveticaNeueInterface.ttc).  Many other fonts are OK with my code including Arial Unicode MS, several Chinese fonts, Segoe UI, and several of the Google fonts like Noto.

I ONLY see the disfigurement if I use the TrueType bytecode hinter inside FT.   I do not see the disfigurement with FT auto-hinting or with hinting disabled.

Note these fonts do not contain any 'gasp' table.

My test is at 39 pixel em size. If I choose MUCH smaller sizes, I see even more extreme distortions, like for example the whole middle segment of a lowercase 'a' disappears.  If you like I can send more sample pix.

For testing purposes, you can download a sample font that shows the problem here:  http://s000.tinyupload.com/index.php?file_id=45977206462678571206

The testing font is a .ttc containing 7 .ttfs.  You can use any of the .ttfs to see the problem; I used the first .ttf in my test.

My code is essentially this (yes, my real code checks all error return values):

    FT_Library library = ft_get_library();
    FT_New_Face(library, filename, ttc_slot /*0*/, &ff.ft_face );

   FT_Set_Pixel_Sizes(ff.ft_face, 39, 39);
                      FT_LOAD_DEFAULT |
                      FT_LOAD_RENDER | // create actual bitmap!

If I use FT_LOAD_FORCE_AUTOHINT or if I use FT_LOAD_NO_HINTING, the output I get is nice (a bit fuzzy).  But if I use FreeType's native TTF bytecode hinter by passing neither of those options, things go wonky as above.

I still get the same problem if I try to use FT_LOAD_NO_BITMAP and/or FT_LOAD_IGNORE_TRANSFORM.

p.s. before someone hijacks this thread by asking an unrelated question: although iOS apps cannot directly open the system .ttf/.ttc font files due to Apple fascism, it IS possible for an app to legally suck over all the bits of a TrueType file into its memory, as explained at http://stackoverflow.com/questions/3692812/on-ios-can-i-access-the-system-provided-fonts-ttf-file  and I'm sure thousands of OpenGL apps do this.  But this is not relevant to my question: the bug/problem I am explaining here happens even if you root your phone and open the font file directly, and even if you copy the .ttc file to a Windows computer and run FreeType there.

Freetype mailing list
Freetype <at> nongnu.org
Nguyen Nguyen | 8 Aug 13:36 2014

[ft] I need some guide include library to IDE.

Dear team

I try include free style library to Visual studio C++ 2008 and Dev C++ but it dont realize

Error on VS C++
" error LNK2019: unresolved external symbol _FT_Init_FreeType referenced in function _main
1>E:\Demo\Helloworld\Debug\Helloworld.exe : fatal error LNK1120: 1 unresolved externals"

On Dev C++
"22 E:\Demo\HelloDev\main.c undefined reference to `FT_Init_FreeType'"

Can you help me ? I need some guide include library to IDE.

Thanks you
Nguyen Quang Nguyen.
Cell phone:+84
Yahoo mail: bitx2000 <at> yahoo.com
Google mail: kingmax2004 <at> gmail.com
Skype: niitpn_bitmax
Freetype mailing list
Freetype <at> nongnu.org
Dohyun Kim | 8 Aug 05:48 2014

[ft] On centering glyphs around vertical baseline


In vertical rendering mode of freetype, glyphs are placed
center-aligned around vertical baseline, which however seems to be a

I have done some simple tests and compared the result of freetype
(plus harfbuzz) with those wordpad on windows 8.1 and textedit on mac
os x 10.9.  In all three cases, Source Han Sans [1], a free pan-CJK
font recently released by Adobe, was used. The text used for testing
was <U+65E5 U+302A U+0049 U+004D U+65E5>.

Attached image file is the result of comparison.  As shown in the
image, only freetype puts glyphs center-aligned.  So there seems to be
a bug in freetype's vertical rendering mode.

FYI, this issue has been spotted while pondering over how to support
vertical typesetting of combining Hangul Jamo characters, on which a
discussion is going on at issue tracker of Source Han Sans. [2]

[1] http://sourceforge.net/adobe/source-han-sans/wiki/Home/
[2] https://github.com/adobe-fonts/source-han-sans/issues/34

Best Regards,

Dohyun Kim
Seoul, Republic of Korea
Freetype mailing list
Freetype <at> nongnu.org
Mario Todorov | 29 Jul 10:11 2014

[ft] A problem with Cyrillic fonts

I need to make my player Marantz UD5007 (which uses FreeType) to show Cyrillic subtitles, but instead it
shows only things like 3/4, D with a slash in the middle and so on. What am I to do? I tried saving the .srt file
in ANSI, Unicode, Unicode big endian and UTF-8. The first and the last showed different signs (not the
right ones) and the others weren't even recognized as subtitle files. I hope you can help me.

Have a nice day,
Michael IV | 20 Jul 17:11 2014

[ft] Tab (\t) escape space

Hi All.I can't understand how I convert tab (backslash t) to glyph numerics.
I mean,if I have "Hello\tWorld" string ,how many spaces should I insert between 
"Hello" and "World" ?


Freetype mailing list
Freetype <at> nongnu.org
LM | 17 Jul 22:26 2014

Re: [ft] Freetype Digest, Vol 115, Issue 8

On Thu, Jul 17, 2014 at 12:00 PM,  Werner LEMBERG wrote:
> Sorry, I have no idea what is causing that.  Please contact the MinGW
> list and ask for assistance, CCing me.

MinGW list will just send the problem back to the library developers.
I used to be very involved in giving support on that list.  I'll
attempt to debug it further when I have time to and see if I can come
up with a work-around or figure out what's changed between the
different versions of freetype.  I mainly wanted to know if it was a
bug or a desired result so I'd know how to proceed when I attempt to
fix or work around it.

> No, it should work out of the box.  Maybe a problem with the autoconf
> tools ? have you tried to compile and install the newest versions of
> autoconf and libtool?  What msys provides by default is quite old.

I have later versions of GNU autotools I've built from source that I
can try.  I also have latest version of GNU make currently installed.
If the older version of freetype works and the newer doesn't with the
same set of tools, it doesn't sound like the tools that are causing
the issue.

LM | 17 Jul 13:58 2014

[ft] freetype dll for mingw

I've been building freetype on MinGW with msys.  I just upgraded my
freetype build script from freetype- to freetype-2.5.3.  I
noticed some minor differences in the build including a new
freetype-config.1.  However, there was one important difference
between and 2.5.3.  Using the same commands, the prior version
generated a .dll file (it created both libfreetype-6.dll and
libfreetype.dll.a).  The current version only generates the static
library.  I tried adding --enable-shared to the configure options, but
the results were the same.  Do I need to do something special to
generate a dll file with version 2.5.3?  I can always build a shared
library with dlltool after the fact if dll creation is no longer
supported.  Was wondering if this was a desired change in behavior for
the freetype build system or if it was an issue.  Just to be sure, I
reran both build scripts (one for and one for 2.5.3) in my
current environment and I get the same outcome.  The earlier version
creates a shared library and the 2.5.3 version does not create one on
my system.  Am wondering if this is a desired result or not so I can
decide how best to work around the situation in my build script.

Thank you.
datao zhang | 9 Jul 03:45 2014

[ft] : Microsoft YaHei UI font can't be displayed well

Hi all:
when i test the freetype 2.5.3 with microsoft YaHei UI font in 12, 14, 16, 18, 20, 22, 24 pixel size, i find Freetype engine can't handle it correctly in some text size, ex: 12, 14, 24 px size. I have enabled TT_CONFIG_OPTION_BYTECODE_INTERPRETER and TT_CONFIG_OPTION_SUBPIXEL_HINTING. I add an attachment here. The character "据" (unicode: U+636E)used as test case in attachment.
Does anyone have idea for this problem? Thanks!
Freetype mailing list
Freetype <at> nongnu.org
Michael IV | 1 Jul 15:57 2014

[ft] Number '2' glyph outlines for "verdana regular" get rendered wrong

Hi All.I am testing font rendering from outlines.I am testing with Verdana.ttf regular.
All the charset renders perfectly except of  glyph of number 2 which gets cut off at the angle.I tested other styles of Verdana (italic and bold) and those work correctly.

Now,I am using FT_Outline_Decompose
to build the outline path.Is it possible it misses some segment cases? 

Here is the screenshot of the issue: http://snag.gy/aPGQL.jpg

Freetype mailing list
Freetype <at> nongnu.org
Vincent Larsen | 19 Jun 19:02 2014

[ft] Characters showing as absent from a font

To whom it may concern;


I am using FreeType with the open source BabelStone Han font and have noticed FreeType doesn’t show some characters as being in the set (for example, FT_Get_Char_Index returns zero for character E7 [lowercase c with a cedilla under it).  I have verified the characters in question by looking at the font with Window’s charmap program.

I am still very new to FreeType and was wonder if there were any suggestions you could give that might get me past this problem.




Freetype mailing list
Freetype <at> nongnu.org
Michael IV | 18 Jun 14:55 2014

[ft] Outline decompose scaling

Hi All. I am decomposing outline of a glyph to paths.But the points have huge coordinated even after division by 64.

Every point I am getting from the path is by default in a range of ~984036148 .How do I convert such a number to normal font size? 

Michael Ivanov
Graphics Software
Tel:+972 54 4962254

Freetype mailing list
Freetype <at> nongnu.org