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

Re: stroke-width values

From: Dr. Olaf Hoffmann <Dr.O.Hoffmann@gmx.de>
Date: Wed, 20 Aug 2008 14:49:05 +0200
To: www-svg@w3.org, david.vergnaud@finnova.ch
Message-Id: <200808201449.06033.Dr.O.Hoffmann@gmx.de>

This fragment uses several svg-elements.
Because preserveAspectRatio="none"
the aspect ratio is not conserved, with
and height are adjusted in such a way, that
the viewBox fits into the rectangle area defined
by width, height, x, y of the svg elements.

stroke-width in percentage is related to the
size of the parant svg element in this case, 
it is not completely trivial to determine without
further calculation as explained in the recommendations, 
how much it is compared to a stroke-width of the outermost
svg element and because of preserveAspectRatio="none"
the presentation of a stroke in x direction can have a
different width than in y direction.

One solution could be to avoid several svg element, all
having their own viewport with some more complicated
relation to the outermost svg element.
Obviously then one has to recaluate the paths and has to
avoid transformations in general, which change the
aspect ratio.

The other method to simply this is to avoid 
preserveAspectRatio="none", with any other value
for the aspect ratio, at list horizontal and vertical
lines with the same stroke-width have the same
width in the presentation. This avoids other maybe
undesired distortions too.

In SVG 1.1 a transformation with a scaling effect
typically results in a change of the stroke-width in
the presentation. To get the same width, one has
to recalculate this or to avoid such scaling effect
different for to graphical element.

SVG 1.2 (tiny) has a property to aviod such effects 
and distortions, this is 
vector-effect="non-scaling-stroke"
http://dev.w3.org/SVG/profiles/1.2T/publish/painting.html#NonScalingStroke
Maybe this is what you are looking for, but it is not available in SVG 1.1
or with viewers/editors/convertors only intended for SVG 1.1, for
them the explanations above apply.
Received on Wednesday, 20 August 2008 13:04:56 GMT

This archive was generated by hypermail 2.3.1 : Friday, 8 March 2013 15:54:40 GMT