[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Proposal: Store path for connector shapes
Hi,
To correctly restore the geometry of a connector in case one or both ends are not
connected to a shape, it is reasonable to optionally store the connector's path data. If
the path data is not stored, the layout of a connector shape may be undefined for some
cases. Storing path data is also useful for viewer applications that don't want to render
complex connector pathes itself.
The following proposal for section 9.2.9 Connector adds to attributes svg:viewBox and
svg:d tp <draw:connector>, that allow to store path data:
<define name="draw-connector">
<element name="draw:connector">
<ref name="draw-connector-attlist"/>
<ref name="common-draw-shape-with-text-and-styles-attlist"/>
<ref name="common-draw-caption-id-attlist"/>
<ref name="common-draw-viewbox-attlist"/>
<optional>
<ref name="svg-title"/>
</optional>
<optional>
<ref name="svg-desc"/>
</optional>
<optional>
<ref name="office-event-listeners"/>
</optional>
<zeroOrMore>
<ref name="draw-glue-point"/>
</zeroOrMore>
<ref name="draw-text"/>
</element>
</define>
<pre>
The attributes that may be associated with the <draw:connector> element are:
• Style, Layer, Z-Index, ID, View box and Caption ID – see section 9.2.15
[...]
=== Path Data ===
The svg:d attribute specifies the connector's path.
The syntax for the attribute svg:d is described in §8 of the Scalable Vector Graphics
(SVG) 1.1 specification [SVG].
Implementations may only supports a subset of the SVG path specification, for instance no
mixtures of open and closed curves for one shape, or no elliptical arc command.
Applications should export the connector's geometric path, even though it could be
computed using the other attributes. Since for some combination of attributes the computed
path is ambiguous, storing the path ensures a consistent rendering of documents. It also
helps simple document viewers since computing a connectors path is a complex task.
<define name="draw-connector-attlist" combine="interleave">
<optional>
<attribute name="svg:d">
<ref name="pathData"/>
</attribute>
</optional>
</define>
Best regards
Michael
--
Michael Brauer, Technical Architect Software Engineering
StarOffice/OpenOffice.org
Sun Microsystems GmbH Nagelsweg 55
D-20097 Hamburg, Germany michael.brauer@sun.com
http://sun.com/staroffice +49 40 23646 500
http://blogs.sun.com/GullFOSS
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]