- From: Cameron McCormack <cam@mcc.id.au>
- Date: Mon, 23 Jun 2008 10:40:56 +1000
- To: public-svg-wg@w3.org
Hi group.
I have two questions about the Progressive Rendering section in the
spec.
First, there is a paragraph that mentions situations where the rendering
should not be updated:
Note that even if the SVG User Agent has the opportunity to update
the rendering after each start/end element event there are situations
where such an update shouldn’t be done. E.g. 'font' element children
('font-face', 'hkern', 'missing-glyph', 'glyph') should not cause an
update of the document rendering, only the 'end element' event on the
'font' element should cause a document rendering as for other node
types.
— http://www.w3.org/Graphics/SVG/Group/repository/spec/mobile/1.2/1.2NG/publish/struct.html#ProgressiveRendering
The example given there is that ‘start element’ and ‘end element’ events
for <font-face>, <hkern>, <missing-glyph> and <glyph> should not be used
as a rendering update point. This is presumably to avoid having <text>
elements use a font that has only some of its glyphs loaded. Of course,
other elements could occur within such a subtree, e.g.:
<svg …>
<text font-family='a'>ab</text>
<font>
<font-face font-family='a'>
<glyph unicode='a' d='…'/>
<blah xmlns='http://example.org/'/>
<glyph unicode='b' d='…'/>
</font-face>
</font>
</svg>
Since the <blah> element there is not one of the ones listed, I guess
this is a point where the rendering could be updated?
Is it intentional that this requirement is a “should” rather than a
“must”?
These font elements are given as an example, but I don’t see where the
full list of these no-rendering-update elements is. Are these font
elements the only ones?
Second, there is a mention of a pitfall when using <discard>:
Note that forward referencing from a 'discard' element should be
avoided when using progressive rendering. If it fails to find (and
thus discard) an element, it will not later discard the element when
it has finally loaded.
— ibid.
It says “when using progressive rendering”, but progressive rendering is
mandatory according to a previous paragraph in that section. Is this
paragraph referring to the use of a <discard> with
externalReferencesRequired="false"? If so, that’s what it should say.
Thanks,
Cameron
--
Cameron McCormack ≝ http://mcc.id.au/
Received on Monday, 23 June 2008 00:41:51 UTC