[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