Re: [xep-support] Problem with SVG - missing markers

From: Alexander Peshkov <peshkov@renderx.com>
Date: Mon Jul 11 2005 - 03:25:39 PDT

Hello Stepan,

XEP displays this SVG image strictly as prescribed by SVG
specification. The marker in this image has no explicit size (no
markerWidth/markerHeight) and thus bounded by 3x3 box by default.
However almost the whole marker drawing lies outside of this box
(note negative start y of the path and subsequent scaling). SVG
specification says that markers are subject to 'overflow' property,
that is their content should be clipped as if they establish a
viewport unless overflow="visible" is set. So the marker as this one
will be clipped to nothing. In your SVG there is an overflow property
but it is set on the top-level 'svg' element through 'st3' style. This
seems to make Adobe SVG viewer display marker content as if this
property was inherited by marker. However this is incorrect since
'overflow' property is not inheritable and being specified on the
'svg' element governs only whatever its content will or will not be
clipped by the viewport established by this element.

In order to correct this problem you have to either add 'markerWidth',
'markerHeight' and viewBox properties to the marker to establish
correct viewport for its content or simply set overflow="visible" on
the marker element itself (that is add 'overflow: visible;' to the
style class 'st2').

Best regards,
Alexander Peshkov mailto:peshkov@renderx.com
RenderX

SM> Hi all,

SM> I would like to know where is error with SVG code (see bellow). When
SM> displayed with Adobe SVG plugin, it shows simple arrow (line with marker on
SM> right hand side) as shown in attachment. However, when the SVG image is
SM> included in XEP generated document, only line is visible, arrowhead marker
SM> is missing (or scaled too small).
SM> Note that the SVG fragment is exported from Microsoft Visio, so it could not
SM> be well aligned with SVG specification, but I'm not SVG expert enough to
SM> judge this.
SM> What I would like to know is if error is in SVG itself or if it uses some
SM> features that are unsupported by XEP.

SM> Thanks

SM> Stepan Mik

SM> ------------------ SVG code ------------------------

SM> <?xml version="1.0" encoding="UTF-8" standalone="no"?>
SM> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN"
SM> "http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd">
SM> <svg xmlns="http://www.w3.org/2000/svg" width="0.727258in"
SM> height="0.136707in" viewBox="0 0 52.3626 9.84293" xml:space="preserve"
SM> color-interpolation-filters="sRGB" class="st3">
SM> <style type="text/css">
SM> <![CDATA[
SM> .st1
SM> {marker-end:url(#mrkr1-6);stroke:#000000;stroke-linecap:round;stroke-linejoi
SM> n:round;stroke-width:0.24}
SM> .st2
SM> {fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.
SM> 068965517241379}
SM> .st3
SM> {fill:none;fill-rule:evenodd;font-size:12;overflow:visible;stroke-linecap:sq
SM> uare;stroke-miterlimit:3}
SM> ]]>
SM> </style>

SM> <defs id="Markers">
SM> <g id="lend1">
SM> <path d="M 1 -1 L 0 0 L 1 1 "
SM> style="stroke-linecap:round;stroke-linejoin:round;fill:none"/>
SM> </g>
SM> <marker id="mrkr1-6" class="st2" orient="auto"
SM> markerUnits="strokeWidth">
SM> <use xlink:href="#lend1"
SM> transform="scale(-14.5,-14.5) "/>
SM> </marker>
SM> </defs>
SM> <g>
SM> <title>Page-1</title>
SM> <g id="shape1-1" transform="translate(4.92146,-4.92146)">
SM> <title>Sheet.1</title>
SM> <path d="M0 9.84 L42.52 9.84" class="st1"/>
SM> </g>
SM> </g>
SM> </svg>

-------------------
(*) To unsubscribe, send a message with words 'unsubscribe xep-support'
in the body of the message to majordomo@renderx.com from the address
you are subscribed from.
(*) By using the Service, you expressly agree to these Terms of Service http://www.renderx.com/terms-of-service.html
Received on Mon Jul 11 05:16:09 2005

This archive was generated by hypermail 2.1.8 : Mon Jul 11 2005 - 05:16:12 PDT