html - 在 HTML 中调整 SVG 大小而不调整画布大小
问题描述
我试图通过更改高度和宽度参数来增加 SVG 图像的大小,但它不起作用,而是画布的大小发生变化并出现导航栏。还有两份高度和宽度参数。我不知道要改哪些。
<svg xmlns:....
width="85.75438690185547"
height="75.7368392944336"
xml:space="preserve"
inkscape:version="0.48.4 r9939"
sodipodi:docname="output.svg"
style=""><rect
id="backgroundrect"
width="100%"
height="100%"
x="0" y="0"
fill="none"
stroke="none"/>
...
</svg>
解决方案
svg
要在不改变svg
画布尺寸的情况下调整形状大小,请添加viewBox
我添加了一个红框来显示 svg 画布的边框。
style="border:1px solid red;"
在下面的示例中,svg
画布width ="85"
的height ="75"
大小等于
viewBox = "0 0 85 75"
因此,矩形按原样显示,而不改变其大小。
<svg version="1.1" xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink" width="85" height="75" viewBox="0 0 85 75" style="border:1px solid red;" >
<rect x="0" y="0" width="42" height="35" fill="purple" />
</svg>
- 要在不改变画布大小的情况下增加矩形的大小,
svg
您需要减小viewBox="0 0 42 35"
<svg version="1.1" xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink" width="85" height="75" viewBox="0 0 42 35" style="border:1px solid red;" >
<rect x="0" y="0" width="42" height="35" fill="purple" />
</svg>
- 要减小矩形的大小而不改变画布的大小,
svg
您需要增加viewBox = "0 0 170 150"
<svg version="1.1" xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink" width="85" height="75" viewBox="0 0 170 150" style="border:1px solid red;" >
<rect x="0" y="0" width="42" height="35" fill="purple" />
</svg>
我希望这可以帮助你。
推荐阅读
- javascript - 应用 jQuery load() 函数后没有按钮工作
- javascript - 布尔值可以产生数值吗?
- java - 从组合框选择中填充文本字段
- azure-data-lake - Azure 流分析 - 如何根据时间戳和自定义 Id 字段对事件中心数据进行排序
- python - 如何在 QTextEdit 中自动保存文本?
- python - 有没有办法在 Pandas Dataframe 的多行和多列中对值进行排名?
- asp.net-mvc - 将字符串表达式转换为粗体的方法
- reactjs - 如何防止我的 Apollo Client 错误处理程序(onError,错误链接)因同一错误被调用两次?
- node.js - Reanimated v2 中是否删除了 diffClamp 方法
- python - Selenium Chrome 驱动程序在无头模式下不生成搜索结果