[HarfBuzz] Font introspection tool

Khaled Hosny khaledhosny at eglug.org
Tue Dec 18 19:57:35 PST 2012


On Tue, Dec 18, 2012 at 06:18:20PM -0500, Behdad Esfahbod wrote:
> On 12-12-18 06:16 PM, Jonathan Kew wrote:
> > On 18/12/12 22:23, Behdad Esfahbod wrote:
> >> Hi Khaled & Jonathan,
> >>
> >> Here's another idea.  Now that HarfBuzz shaper is fairly complete, we've been
> >> adding lots of what I call introspection APIs.  There's some more to add, but
> >> after we're done it would be possible to write a tool that takes a font and
> >> generates a PDF that exposes most of the font's complex features (ligatures,
> >> mark positioning, alternate glyphs, etc).  I think such a font would be really
> >> helpful in reviewing fonts.
> >>
> >> Since we don't have a good layout engine other than TeX, there are two ways to
> >> write such a tool:
> >>
> >>    * Write it in C++ and generate XeTeX input...
> >>
> >>    * Just write it in XeTeX directly.
> >>
> >> The second makes a lot of sense, except that:
> >>
> >>    1) We need to expose the HB introspection API in XeTeX first,
> >>
> >>    2) We all know how fun programming with (La)TeX is...
> >>
> > 
> > I'd favor some form of the first approach: write a tool in C++ (or Python or
> > Perl or whatever) that uses the HB API to inspect a font and generate a "data
> > dump" in some simple marked-up format that can then be pretty-printed by
> > running it through xetex with an appropriate set of macros to handle layout, etc.
> > 
> > I wouldn't aim for such a tool to generate entirely "raw" xetex input that
> > directly contains every detail of formatting control; more likely, generate
> > data tables in some sort of LaTeX markup (sorry, ConTeXt people, but LaTeX is
> > far more widely used and understood!), and then have a "template" LaTeX
> > document and style that wrap the data tables with appropriate page layout
> > control.
> 
> Ok, makes a lot of sense.
> 
> Humm.  There are JSON LaTeX (and ConTeXt!) package out there I assume?  That
> would kill multiple birds...

I don’t think there are existing JSON to TeX packages, but it shouldn’t
be hard to write some python script to process JSON output (I’m guessing
here, I never dealt with JSON).

Regards,
Khaled



More information about the HarfBuzz mailing list