Live data from Hacker News

Modern text rendering with Linux: Part 1

mrandri19.github.io

21–25 of 25 posts

Re: Modern text rendering with Linux: Part 1

#22
post #16

It seems that with high resolution displays, font rendering techniques are becoming less important. I remember spending days tweaking font rendering. Now with a 300 dpi display, everything looks great.

No, this is wrong. Microsoft tried it with Windows 8, getting rid of subpixel antialiasing for hardware accelerated rendering and the results were so bad that a recent update to Windows 10 began switching back. Unfortunately, Google did the same thing in Chrome and they still don’t get it and continue to insist that “it’s too hard to do it right” every time I file a bug about UI régressions that came about as a resul…

OP specifically mentions his 300 dpi displays, where you indeed don't need subpixel rendering. Low-DPI displays do need to continue to use tricks to make text halfway pleasant though. Windows with its hinting philosophy and off-by-default vertical smoothing is a bit of a special case though... like every other system out there. Oh well.

> they still don’t get it and continue to insist that “it’s too hard to do it right”

What is wrong with that reply? It _is_ hard to do it correct _and_ quick.

Re: Modern text rendering with Linux: Part 1

#23
post #7

Small nitpick: Freetype works on Windows too. So the same code can be used to render fonts there. Though it is perhaps easier to use the native DirectWrite api.

DirectWrite isn't necessarily much easier, but it has many perks you don't get from freetype - kerning, combining characters, etc - and supports hardware acceleration, which is pretty cool. Because integrating pango/harfbuzz is so difficult I'm tempted to replace my freetype usages with DirectWrite...

What makes integration of HarfBuzz difficult?

Re: Modern text rendering with Linux: Part 1

#24
If you are following along with gcc on Linux and continuing to get linker errors even after adding -lfreetype, try passing it as the very last argument, e.g.

  gcc `pkg-config --cflags freetype2` -Wall -Werror -o main main.c -lfreetype

Re: Modern text rendering with Linux: Part 1

#25
post #22

Earlier quoted context omitted.

No, this is wrong. Microsoft tried it with Windows 8, getting rid of subpixel antialiasing for hardware accelerated rendering and the results were so bad that a recent update to Windows 10 began switching back. Unfortunately, Google did the same thing in Chrome and they still don’t get it and continue to insist that “it’s too hard to do it right” every time I file a bug about UI régressions that came about as a resul…

OP specifically mentions his 300 dpi displays, where you indeed don't need subpixel rendering. Low-DPI displays do need to continue to use tricks to make text halfway pleasant though. Windows with its hinting philosophy and off-by-default vertical smoothing is a bit of a special case though... like every other system out there. Oh well. > they still don’t get it and continue to insist that “it’s too hard to do it rig…

> What is wrong with that reply? It _is_ hard to do it correct _and_ quick.

If it were anyone other than Google/Microsoft/Apple, I might accept that. Closing the bug (rather than assigning it to a future unknown release) because it’s “too hard” is ridiculous. It’s a valid concern, the results are noticeable even on hi-dpi displays, and it should be fixed (if not now, later).

Post reply on HN