gpt4 book ai didi

html - 填充多边形 SVG 形状的图像

转载 作者:太空宇宙 更新时间:2023-11-04 14:59:11 25 4
gpt4 key购买 nike

我知道这个主题之前已经发布过,但请在标记重复之前通读。
这是一个两部分的问题。

我正在尝试用图像填充六边形 SVG 形状。我想要的是图像完全覆盖六边形区域,无论它是否必须自行拉伸(stretch)或压缩才能做到这一点。到目前为止,我只能使用固定宽度的图像来完成此操作,并且在其两侧也有某种填充。

我在其他问题上搜索过这个,但首先,它们不是六边形,其次,它们提供的代码无助于完全填充六边形。这是我的代码和快照。

<a href="/bhive/business/index/8">
<svg style="width:117px;height:97px;" xmlns="http://www.w3.org/2000/svg"
version="1.1" viewBox="0 0 100 100">
<defs>
<pattern id="img8" height="100" width="100" patternUnits="userSpaceOnUse">
<image preserverAspectRatio="none" height="100%" width="200%" x="-25"
xlink:href="images/my-store.gif">
</pattern>
</defs>
<polygon style="stroke: #999DA3;" fill="url(#img8)"
points="50 1 95 25 95 75 50 99 5 75 5 25">
</svg>
</a>

Snapshot of the hexagon

第二部分是,我希望这个六边形能够响应。我怎样才能让它响应,以便它根据浏览器窗口调整大小?

谢谢

最佳答案

首先从图像标签中删除高度、宽度和 x 属性。在 pattern 和 patternContentUnits="objectBoundingBox"中设置 100% 的高度和宽度。

<svg>
<defs>
<pattern id="pattern1" height="100%" width="100%" patternContentUnits="objectBoundingBox">
<image height="1" width="1" preserveAspectRatio="none" xlink:href="http://upload.wikimedia.org/wikipedia/commons/thumb/b/bc/Gl%C3%BChwendel_brennt_durch.jpg/399px-Gl%C3%BChwendel_brennt_durch.jpg" />
</pattern>
</defs>

<polygon style="stroke: #999DA3;" fill="url(#pattern1)" points="50 1 95 25 95 75 50 99 5 75 5 25"/>
</svg>

关于html - 填充多边形 SVG 形状的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36659710/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com