我想实现以下目标:
调整 svg 元素内图像的大小以完美适合多边形内部,而且它完全可见,并且不会被剪切(请参阅 jsfiddle)。
我已经解决了很多 stackoverflow 问题,但无法弄清楚:
代码:
<svg width="50%" height="50%" viewBox="0 0 25 10" preserveAspectRatio="none">
<defs>
<pattern id="im1" width="100%" height="100%" preserveAspectRatio="none">
<image preserveAspectRatio="none" xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://dummyimage.com/600x400/abc" width="100%" height="100%"></image>
</pattern>
</defs>
<polygon points="0,10 29, 10 10, 0" x="0" y="0" style="fill:url(#im1);"></polygon>
</svg>Run Code Online (Sandbox Code Playgroud)
看https://jsfiddle.net/f8ktzyLw/
有人能指出我正确的方向吗?这只能通过 svg 实现还是需要 JavaScript/Canvas ?