Re: Cairo rendering story

Bertram Felgenhauer <bertram.felgenhauer-gM/[email protected]>
Newsgroups gmane.comp.gnome.lib.librsvg.devel
Message-ID <[email protected]>
I wrote:
> - Temporary surfaces are clipped at the transformed bounding box
>   as explained above. This is far from ideal. However, it's not clear
>   to me what the right thing is here - what result should rendering
>   parts of the SVG that lie outside its viewBox give?

I believe [1] answers that question. It says,

# When an outermost SVG 'svg' element is stand-alone or embedded inline
# within a parent XML grammar which does not use CSS layout
# [CSS2-LAYOUT] or XSL formatting [XSL], the 'overflow' property on the
# outermost 'svg' element is ignored for the purposes of visual
# rendering and the initial clipping path is set to the bounds of the
# initial viewport.

which I believe means that librsvg should clip the SVG at its viewport,
and also means that the bounding box logic is sound.

I'll attach a patch that does the clipping (tested against the
testsuite). It applies on top of the patches for #500787 [2].

enjoy,

Bertram

[1] http://www.w3.org/TR/SVG11/masking.html#OverflowProperty
[2] http://bugzilla.gnome.org/show_bug.cgi?id=500787

-------------------------------------------------------------------------
SF.Net email is sponsored by:
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services
for just about anything Open Source.
http://ad.doubleclick.net/clk;164216239;13503038;w?http://sf.net/marketplace
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.