Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

vml clipping mask

Tags:

masking

vml

I am trying to create a clipping mask in VML that would correspond to clip-path in SVG? Is that possible?

Based on numerous, but fairly limited, examples I have tried drawing the shape:

<vml:group style="WIDTH: 1px; HEIGHT: 1px" class=vml-element coordsize = "1,1">
    <vml:shape style="WIDTH: 1px; HEIGHT: 1px" id=vectorObject2 class=vml-element _fill-color="red" _fill-opacity="1" _stroke-color="black" _stroke-opacity="1" _stroke-width="1" coordsize = "1,1" filled = "t" fillcolor = "red" stroked = "t" strokecolor = "black" strokeweight = ".75pt" path = "m0,0 l100,0,0,100 xe">
        <vml:fill class=vml-element opacity = "1"></vml:fill>
        <vml:stroke class=vml-element opacity = "1"></vml:stroke>
    </vml:shape>
</vml:group>

and then masking it using vmlframe:

<vml:vmlframe class=vml-element clip = "t" size = "15pt,37.5pt" src = "#vectorObject2">    </vml:vmlframe>

Drawing of shape (triangle) works as expected but I cannot find I way to mask it using vmlframe. Is that the right way to achieve masking?

Please ignore all bunch of weird custom attributes as majority of VML code was generated via 3rd party library.

Thanks in advance!

like image 349
Jovan Perovic Avatar asked Nov 04 '22 21:11

Jovan Perovic


1 Answers

Use the CSS clip property to emulate clip-path as demonstrated in the Dojo GFX library or something like jsgraphics.

like image 64
Paul Sweatte Avatar answered Jan 04 '23 15:01

Paul Sweatte