SVG viewbox 并不总是缩放到宽度和高度

SVG viewbox not always scaled to width and height

我正在使用多个库在浏览器中生成 SVG 图像,这些图像可以通过 svgexport 从服务器反弹,以生成用户指定分辨率的 PNG 或 JPEG。 (这按预期工作。)

我想为用户提供下载 SVG 的选项,该 SVG 被输入到转换中,分辨率用于设置宽度和高度属性。当我这样做时,viewbox 没有缩放到指定的宽度和高度,而是被填充以使图像占据左上角的原始大小区域。

在寻找解决方案时,我在 W3C 文档中找到了说明问题的图片。如果您在 Chrome 中打开这些图像并使用检查器更改宽度和高度属性,

这与 preserveAspectRatio 属性 的存在或值或 svg 标签的嵌套无关。我的文件在 Chrome/Chromium、Firefox、Safari/WebKit、Opera、Inkscape 和 Gapplin 中呈现为填充而不是缩放。

如何确保我的 SVG 被缩放而不是填充以填充宽度和高度?

当输入 viewbox 而不是 viewBox 时,视图框不会缩放; svg 属性名称区分大小写。

第二个link没有viewBox属性,添加viewbox(小写)属性没有效果。