Normalmente, l'elemento <clipPath>
nasconde tutto ciò che supera il percorso della clip. Per ottenere l'effetto opposto, ovvero "tagliare" qualcosa dall'immagine, voglio utilizzare due percorsi nel clipPath e l'attributo clip-rule="evenodd"
. Fondamentalmente, voglio "xor" i percorsi delle clip.Clip SVGPercorso per ritagliare il contenuto * outer * fuori
Ma non funziona. Essa mostra la regione "ORed":
<clipPath clip-rule="evenodd" id="imageclippath" clipPathUnits = "objectBoundingBox">
<rect clip-rule="evenodd" x="0.3" y="0.3" height="0.6" width="6" />
<rect clip-rule="evenodd" x="0" y="0" height="0.5" width="0.5" />
</clipPath>
<rect clip-path="url(#imageclippath)" x="0" y="0" height="500" width="500" fill="red"/>
EDIT:
mio problema è che per quanto ne so <mask>
non funziona in iOS WebKit.
Grazie. Ho dimenticato di aggiungere che non posso ottenere '' lavorando su iOS WebKit. L'uso di '' funziona, ma è difficile specificare un'ellisse per punti, ad esempio. –
tillda
È possibile specificare un'ellisse utilizzando il comando percorso arco o un paio di comandi curva, vedere http://www.w3.org/TR/SVG11/paths.html#PathDataEllipticalArcCommands. –