用图案填充 SVG 路径而不拉伸
fill SVG path with pattern without stretching
我正在尝试使用编辑此 example 并用图案填充波形
<svg id="shape-overlays" class="shape-overlays" viewBox="0 0 100 100" preserveAspectRatio="none">
<defs>
<pattern id="img4" patternUnits="userSpaceOnUse" width="180" height="180">
<image xlink:href="./pattern/menu-3.png" x="0" y="0" width="180" height="180" />
</pattern>
</defs>
<path class="shape-overlays__path"></path>
<path class="shape-overlays__path"></path>
<path class="shape-overlays__path"></path>
<path class="shape-overlays__path"></path>
</svg>
CSS
.shape-overlays__path:nth-of-type(4) {
fill: url(#img4);
stroke: red;
stroke-width: 1;
}
SVG 路径填充有图案图像但不重复并且也被拉伸
我想把它作为一个图案重复,如果不可能我想用一张大图作为封面,但要保持比例
为了解决这个问题,我将 preserveAspectRatio 改为 "xMidYMid slice" 而不是 "none"
<svg id="shape-overlays" class="shape-overlays" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid slice" >
我正在尝试使用编辑此 example 并用图案填充波形
<svg id="shape-overlays" class="shape-overlays" viewBox="0 0 100 100" preserveAspectRatio="none">
<defs>
<pattern id="img4" patternUnits="userSpaceOnUse" width="180" height="180">
<image xlink:href="./pattern/menu-3.png" x="0" y="0" width="180" height="180" />
</pattern>
</defs>
<path class="shape-overlays__path"></path>
<path class="shape-overlays__path"></path>
<path class="shape-overlays__path"></path>
<path class="shape-overlays__path"></path>
</svg>
CSS
.shape-overlays__path:nth-of-type(4) {
fill: url(#img4);
stroke: red;
stroke-width: 1;
}
SVG 路径填充有图案图像但不重复并且也被拉伸
我想把它作为一个图案重复,如果不可能我想用一张大图作为封面,但要保持比例
为了解决这个问题,我将 preserveAspectRatio 改为 "xMidYMid slice" 而不是 "none"
<svg id="shape-overlays" class="shape-overlays" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid slice" >