Implementing SVG attribute "stroke-miterlimit" ( tdf#48066)

Armin Le Grand armin_le_grand at me.com
Thu Mar 24 08:45:17 UTC 2016


Hi Regina,

AFAIK it is partially used, but not completely. I know of some cases in 
renderers where today a fixed default of 15.0 is used. Various 
GraphicSystems use various definitions for it, take care. It would be 
necessary to define a definition for it for LO, import where available 
and use where available. Some sub-systems can use it, e.g. Gdiplus or 
cairo, export to SVG, but no tMetafile (at least not ours). There is 
definitely no UI for it.

HTH!
Regards,
Armin

Am 24.03.2016 um 01:39 schrieb Regina Henschel:
> Hi all,
>
> the following is, what I have found so far, but it might have errors. 
> So please correct me.
>
> If two lines build a corner, the corner-style can be None, Rounded, 
> Beveled or Mitered. That is the property "draw:stroke-linejoin" in ODF 
> and "stroke-linejoin" in SVG. But SVG has the additional property 
> "stroke-miterlimit". Using it, the author can determine how sharp the 
> corner can be before it is turned into kind Beveled. I see no such 
> property in ODF. LibreOffice turns automatically to kind Bevel using 
> the default value of svg:stroke-miterlimit.
>
> The API has the struct "StrokeAttributes" in css::rendering. It has 
> the element "MiterLimit". I do not know any UI for it and don't know, 
> if and how it is usable at all. The service "LineProperties" in 
> css::drawing does not provide such property.
>
> In OOXML it is the attribute "lim" in element a:miter (20.1.8.43).
>
>
> This svg-attribute is read on SVG import. And it could be evaluated by 
> the method basegfx::tools::createAreaGeometry(), if it got a value 
> into the already prepared parameter. But between these two ends there 
> is currently no way to transport the information. The line properties 
> Width, Color, LineCap and LineJoin are transported via class 
> "LineAttribute".
>
> So my question is, how to transport the "Miterlimit"-information?
> Add a member to class LineAttribute?
> Add a member to PolygonStrokePrimitive2D and an additional new 
> parameter into the chain of calls and constructions?
> Only fix svg-import or care for other things too? What would I have to 
> consider?
>
> Kind regards
> Regina
>
>
>
>
> _______________________________________________
> LibreOffice mailing list
> LibreOffice at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/libreoffice

-- 
--
ALG (PGP Key: EE1C 4B3F E751 D8BC C485 DEC1 3C59 F953 D81C F4A2)



More information about the LibreOffice mailing list