SVG viewbox 并不总是缩放到宽度和高度
SVG viewbox not always scaled to width and height
我正在使用多个库在浏览器中生成 SVG 图像,这些图像可以通过 svgexport 从服务器反弹,以生成用户指定分辨率的 PNG 或 JPEG。 (这按预期工作。)
我想为用户提供下载 SVG 的选项,该 SVG 被输入到转换中,分辨率用于设置宽度和高度属性。当我这样做时,viewbox 没有缩放到指定的宽度和高度,而是被填充以使图像占据左上角的原始大小区域。
在寻找解决方案时,我在 W3C 文档中找到了说明问题的图片。如果您在 Chrome 中打开这些图像并使用检查器更改宽度和高度属性,
- ViewBox.svg will expand to fill the width and height (linked from here)
- PreserveAspectRatio.svg will be padded to stay in the upper left (linked from here)
这与 preserveAspectRatio
属性 的存在或值或 svg
标签的嵌套无关。我的文件在 Chrome/Chromium、Firefox、Safari/WebKit、Opera、Inkscape 和 Gapplin 中呈现为填充而不是缩放。
如何确保我的 SVG 被缩放而不是填充以填充宽度和高度?
当输入 viewbox
而不是 viewBox
时,视图框不会缩放; svg 属性名称区分大小写。
第二个link没有viewBox属性,添加viewbox(小写)属性没有效果。
我正在使用多个库在浏览器中生成 SVG 图像,这些图像可以通过 svgexport 从服务器反弹,以生成用户指定分辨率的 PNG 或 JPEG。 (这按预期工作。)
我想为用户提供下载 SVG 的选项,该 SVG 被输入到转换中,分辨率用于设置宽度和高度属性。当我这样做时,viewbox 没有缩放到指定的宽度和高度,而是被填充以使图像占据左上角的原始大小区域。
在寻找解决方案时,我在 W3C 文档中找到了说明问题的图片。如果您在 Chrome 中打开这些图像并使用检查器更改宽度和高度属性,
- ViewBox.svg will expand to fill the width and height (linked from here)
- PreserveAspectRatio.svg will be padded to stay in the upper left (linked from here)
这与 preserveAspectRatio
属性 的存在或值或 svg
标签的嵌套无关。我的文件在 Chrome/Chromium、Firefox、Safari/WebKit、Opera、Inkscape 和 Gapplin 中呈现为填充而不是缩放。
如何确保我的 SVG 被缩放而不是填充以填充宽度和高度?
当输入 viewbox
而不是 viewBox
时,视图框不会缩放; svg 属性名称区分大小写。
第二个link没有viewBox属性,添加viewbox(小写)属性没有效果。