comments re SVG table in the OFF draft

Jonathan Kew jfkthame at
Tue Mar 11 16:37:00 CET 2014

A few comments on the current 3rd ed. working draft:

- - - - -

First, the opening sentence in section "5.5.1 SVG – The SVG (Scalable 
Vector Graphics) table" seems problematic to me:

This table contains SVG [16] descriptions for some or all of the glyphs 
in the font, the use of SVG text elements for outline fill is prohibited.

This would read much better if split into two sentences, not joined by a 
comma. And second, shouldn't the use of SVG text elements be prohibited 
for -any- purpose within the glyphs (not only for outline fill)? If we 
want to avoid glyph descriptions referring to external fonts, we can't 
allow SVG text elements to be stroked or used as clipping paths, for 

So I suggest changing this to something like:

This table contains SVG [16] descriptions for some or all of the glyphs 
in the font. The use of SVG text elements within these glyph 
descriptions is prohibited.

- - - - -

Further, we should specify what happens if an SVG text element is found 
(despite being prohibited): is that element ignored, but the remainder 
of the glyph rendered normally, or do we consider the entire glyph 
description invalid, and ignore it, falling back to a TrueType or CFF glyph?

Offhand, I'm inclined to favor the former: require the renderer to 
ignore the SVG text element(s), but proceed to do its best to render any 
other content. So I'd suggest an additional sentence such as:

If any SVG text element is encountered within a glyph description, it 
MUST be ignored by the renderer.

- - - - -

Finally, forwarding a comment from Cameron McCormack regarding the 
description of "Glyph Rendering":

     I don't think that added rule in the UA style sheet,

       :root {
         font-size: 0 !important;

     is sufficient, since font-size can be specified on an element in 
the document.  The importance of the rule doesn't inherit.

     Instead, I think this would work:

       @namespace svg url(;

       svg|text, svg|foreignObject {
         display: none !important;

     Using |display: none| seems like a clearer description of what's 
going on, and should have the same effect as |font-size: 0|.

This seems like a good change we should make to the draft.


More information about the mpeg-otspec mailing list