Re: SVG Fonts inside of OpenType fonts? [Cross-post from]

Cameron McCormack:
> > In cases where you have a complex script that isn’t supported directly
> > by SVG Font’s ligature and Arabic form features, then you can use
> > <altGlyph> to select an explicit glyph to use for a run of Unicode
> > characters.  For example:
> > 
> >   <font>
> >     <glyph id="complex">
> >       …
> >     </glyph>
> >   </font>
> >   <text>The <altGlyph xlink:href="#complex">xyzzy</altGlyph>
> >     glyph.</text>

Vladimir Levantovsky:
> But this would require:
> a) that you know the text content upfront;
> b) that you know the specific details of the language script in
>    question and know how to shape it, and
> c) that all shaping/layout decisions can only be done at the authoring
>    time.


> I can't see how this would work if your text is dynamic and comes from
> an outside source (e.g. via content aggregation or if it's simply a
> user comment on the post you made) formatted as a Unicode string.

Right.  If your SVG document including SVG Font is being generated by a
tool that knows how to lay out complex scripts, then this is OK.  If you
are dynamically generating text from within the SVG document, or you
don’t have a layout engine that can select the right glyphs like this,
then you’re out of luck.

If we want to support this, then we can either extend SVG Fonts to
support all the kinds of layout tables that OpenType does, or we can add
support for SVG glyphs to OpenType fonts.

> One way it would work is if you can use SVG glyph descriptions that
> are tied to OpenType glyph indices that would allow using the already
> existing shaping / layout engines, which is the answer to what

Yes, I can see that could be done without embedding the SVG glyphs data
in the OpenType font itself.  Given that you will need to be generating
data outside of the SVG glyphs (metrics, the tables for ligature
subtitution, etc.) then I think it makes more sense to just have it all
in the one place.

Cameron McCormack ≝

Received on Sunday, 3 July 2011 03:29:35 UTC