[Dev-luatex] HarfBuzz [slightly off-topic]
graham.douglas at readytext.co.uk
Thu Feb 3 21:54:37 CET 2011
> HarfBuzz provide an OpenType layout engine (Graphite support existed at
> some point, but were removed to be rewritten, AAT is planned in some
> distant future) but no bidi (the client have to do it in its own or use
> other libraries like fribidi).
> HarfBuzz workflow is usually 1) loading a font in FreeType 2) shaping
> text in HarfBuzz for that font 3) getting back glyph indices and
> positions. Of course there are more details like itemizing the text,
> selecting font features and so on.
> FreeType is not mandatory, but using it simplifies the process.
> Hans have written (and still improving) an OpenType layout engine
> completely in lua(tex) and it more or less does what HarfBuzz would do,
> it may support more features than HarfBuzz but HarfBuzz code is more
> widely tested, so each have its pros and cons.
> I can imagine a separate module where HarfBuzz is plugged into LuaTeX
> allowing it to process node lists instead of text strings (HarfBuzz have
> callbacks that I think can be used to plug function that deal with node
> buffers instead of text strings), it can be an interesting exercise and
> I expect HarfBuzz maintainer to be willing to cooperate.
> Khaled Hosny
Thanks very much indeed for this helpful summary.
I've now compiled HarfBuzz on Windows (using Visual Studio)
so, it's time to explore it :-)
Just to add, I do of course understand why libraries such as HarfBuzz
should not be part of core LuaTeX and only ever "plugged in"
via library facilities as a DLL/so. As I'm sure many others have
experienced when using/building tools, it can be quite annoying to
hit "multiple cascading library dependancies" which can be a real
nightmare to sort out even for a one-off build, let alone trying to
Thanks again to everyone for the discussions on this thread.
More information about the dev-luatex