[HarfBuzz] HarfBuzz HackFest report
Behdad Esfahbod
behdad at behdad.org
Wed Nov 4 10:38:36 PST 2009
Hi all,
Here's what I blogged today:
Here is a quick update re HarfBuzz
<http://freedesktop.org/wiki/Software/HarfBuzz>:
During May and August I finished rewriting the OpenType Layout engine to
use mmap()ed font files. This is in Pango 1.26.x already. Pango and
fontconfig also received a lot more optimization love. That deserves a
long and separate blogpost. The net result is that the text stack's
*memory usage is considerably lower* now. *All this goodness will be in
the upcoming Fedora 12*.
In October, I attended the 33rd Internationalization and Unicode
Conference <http://freedesktop.org/wiki/Software/HarfBuzz> in San Jose
to present the free software text stack (slides
<http://behdad.org/download/Presentations/slippy/freetextstack_slides.pdf>)
as well as present and promote HarfBuzz (slides
<http://behdad.org/download/Presentations/slippy/harfbuzz_slides.pdf>).
That was a very fruitful event and I received lots of interest from many
major industry players. With the liberal license that we are releasing
HarfBuzz under, we expect broad adoption, which is exactly what we are
looking for.
This week, Jonathan Kew and myself are having a small HarfBuzz HackFest
here in Mozilla's Toronto office. Here's what we have got done so far:
* Jonathan has a version of Firefox using harfbuzz-ng (the codename
for the rewrite) that has advanced layout features controlable
through CSS. Very very cool stuff. He updated it to the latest
harfbuzz-ng code.
* I ripped harfbuzz-ng out of the Pango tree and into a standalone
module. Finally! Took a couple hours of git surgery plus ten
minutes to put together an autotools build system. Git clone URL
is this <git://git.freedesktop.org/~behdad/harfbuzz-ng>. The
harfbuzz-ng-external branch in Pango uses that as an external
module. The plan is to reach a stable 1.0 release of harfbuzz-ng
before next stable GNOME and most probably, Pango will require
harfbuzz unconditionally (that is, on all platforms). Note that
harfbuzz is NOT tied to FreeType, so you can use it with any
rasterizer you have around.
* We fixed all portability issues Jonathan had faced when compiling
harfbuzz-ng with MSVC.
* Jonathan is working on the shaper side, while I'm working on the
API and pulling it all together.
* I added glue code for using harfbuzz-ng with glib, ICU, and FreeType.
* Lots of API and design review.
At the rate this is developing, by the end of the week we should have
basic shaper (Latin, Cyrillic, CJK, ...) and Arabic+Syriac working
perfectly and tackling Indic family. We're closer to 1.0 than you may
think!
--
Posted By behdad to McEs, A Hacker Life
<http://mces.blogspot.com/2009/11/harfbuzz-hackfest.html> at 11/04/2009
11:55:00 AM
More information about the HarfBuzz
mailing list