如何移除Inkscape制作的SVG存在的多余空白高度?
Inkscape SVG多余空白移除方案
上下大量冗余空白的核心原因是SVG根节点的viewBox(可视画布范围)设置远大于实际图形的边界,两种方法都可以快速解决:
方法1:Inkscape内直接操作(最省事)
- 打开目标SVG文件,按
Ctrl+A全选所有绘制的实际图形 - 按快捷键
Shift+Ctrl+D调出文档属性面板 - 在面板的「自定义大小」板块,点击「调整页面到内容」下的「适配所选内容」按钮,画布会自动收缩到刚好贴合图形边缘,所有冗余空白会直接被裁掉
- 注意:如果图形用了路径效果(比如你文件里的圆角LPE效果),先选中对应路径,按
Ctrl+Shift+C把路径效果转成实体路径再做适配,避免边界计算出现偏差 - 调整完直接保存文件即可,浏览器打开就不会有多余空白了。
方法2:手动修改SVG源码
如果不想打开Inkscape,直接改代码也能解决。你当前文件的图形实际边界范围是x轴1.4486.64、y轴17.9546.75,直接修改SVG最外层根节点的三个属性:
找到开头这段原代码:
<svg width="86.708229mm" height="108.46725mm" viewBox="0 0 86.708229 108.46725"
替换成:
<svg width="85.2mm" height="28.8mm" viewBox="1.44 17.95 85.2 28.8"
保存后再打开,画布就会刚好贴合图形,没有多余空白。
小提示:其他SVG文件遇到同类问题时,只要算出所有图形元素的最小/最大x、y坐标,把viewBox的四个参数改成「最小x, 最小y, (最大x-最小x), (最大y-最小y)」,再把width/height改成和后两个参数匹配的数值即可。
内容的提问来源于stack exchange,提问作者morteza mortezaie
相关产品推荐
相关产品推荐

