Allsorts: font parser and shaping engine implemented in Rust

by wezmon 11/20/19, 12:13 AMwith 16 comments
by xvilkaon 11/20/19, 2:28 AM

This would certainly be beneficial for the XeTeX "oxidation" efforts[1] for fonts parsing and shaping[2]. There is also a number of existing alternatives: font-kit[3], Skribo[4], RustType[5], ttf-parser[6]. Some of them are just parsers, some - font shapers. Still all of them are relevant to the subject.

[1] https://github.com/crlf0710/tectonic

[2] https://github.com/crlf0710/tectonic/issues/117

[3] https://github.com/servo/font-kit

[4] https://github.com/linebender/skribo

[5] https://gitlab.redox-os.org/redox-os/rusttype/

[6] https://github.com/RazrFalcon/ttf-parser

by pcwaltonon 11/20/19, 2:55 AM

Great to see more work in this space. Diversity of font parsing and shaping engines is important to make sure the ecosystem doesn't become reliant on bug-for-bug compatibility with the existing engines. (It's dangerously close already, due to the quirks of DirectWrite, GDI, and FreeType.)

by riquitoon 11/20/19, 2:07 AM

So cool, I was going to ask what was the relationship with something like pathfinder [1], but you already addressed it in your github README.

Thanks for contributing in this space

[1] https://github.com/servo/pathfinder/blob/master/README.md

by j88439h84on 11/20/19, 2:03 AM

Cool. Are you in contact with the Runebender devs at all?

https://github.com/linebender/runebender

by pcr910303on 11/20/19, 4:43 AM

Obligatory article: Text Rendering Hates You [0][1]

[0] https://gankra.github.io/blah/text-hates-you/

[1] https://news.ycombinator.com/item?id=21105625

by earthboundkidon 11/20/19, 2:12 PM

I used Prince for everything I wrote in grad school. A truly beautiful PDF maker. It's cool that they're releasing part of it.

by imoldfellaon 11/20/19, 2:18 AM

How does this compare to harfbuzz?

by deviton 11/20/19, 1:31 PM

I'm curious about why they decided to develop Allsorts instead of just using Harfbuzz.