W3C home > Mailing lists > Public > www-svg@w3.org > August 2000

Re: foreignObject questions

From: Leonard Rosenthol <leonardr@lazerware.com>
Date: Wed, 2 Aug 2000 14:08:15 -0400
Message-Id: <a04310129b5ae12f82899@[]>
To: Jon Ferraiolo <jferraio@Adobe.COM>
Cc: <www-svg@w3.org>
At 10:27 AM -0700 8/2/00, Jon Ferraiolo wrote:
>Many of the issues relating to extensibility in general are being left
>unspecified for SVG 1.0 because of the many inherent complex issues, most
>of which affect many different W3C specifications, including DOM, CSS, XSL,
>SVG, MathML and HTML, to just name a few.

	Understood.   Just trying to find ways to implement extended 
functionality in my tools while maintaining adherence to the 

>The idea is
>to put in enough hooks that implementers can add private extensions in a
>private way, but to achieve the following bits of good behavior:

	OK - then I'll make sure that I've addressed these in both my 
SVG creation tool, as well as the parsing side.

>  >First, a hopefully simple one.  Are coordinates (and transforms)
>>inside of a foreignObject relative a new "origin" just for that
>>object, or absolute on the entire SVG document?
>The current spec says in section 7.9
>(http://www.w3.org/TR/SVG/coords.html#EstablishingANewViewport) that a
>'foreignObject' creates a new viewport, and that by doing so, there is a
>new coordinate system which has its origin at the top/left of that viewport.

	That's what I thought, but wanted to be sure...

>If an implementer, such as Adobe or IBM or CSIRO or Jackaroo implemented
>the extension, then of course we could pull this off pretty easily as
>everything would be in a single code base.

	That's my case as well, where I will be doing both the main 
and extended portions - so I can treat it any way I wish.

>  >And third, following up on that, are the transforms that are "in
>>place" (currently on the "state stack") at the time the foreignObject
>>is to be rendered applied AFTER the entire object is rendered OR it
>>to be used as a starting transform for the object contents?
>I'm not sure I understand the distinction.

	To me the distinction is whether the base transform is 
"passed along" to the foreignObject as the "starting transform", or 
whether the foreignObject does its work "in a black box" and then it 
passes back the results to the main SVG to apply the transform to.

>The model in my mind is that the foreign object returns the equivalent of
>an SVG display list (potentially as trivial as a raster image) to the SVG
>processor, and then the SVG processor renders that display list after
>applying any transformations, opacity settings or filters that might be
>applied to the foreign object due to its being embedded inside of other SVG.
	That's what I would think as well, but again, wanted to clarify.


                   You've got a SmartFriend in Pennsylvania
Leonard Rosenthol      			Internet:       leonardr@lazerware.com
					America Online: MACgician
Web Site: <http://www.lazerware.com/>
FTP Site: <ftp://ftp.lazerware.com/>
PGP Fingerprint: C76E 0497 C459 182D 0C6B  AB6B CA10 B4DF 8067 5E65
Received on Wednesday, 2 August 2000 14:12:17 UTC

This archive was generated by hypermail 2.3.1 : Wednesday, 8 March 2017 09:46:49 UTC