批量调整SVG画布大小从14px到16px

时间:2015-09-26 17:12:11

标签: xml svg icons batch-processing bulk

我正在寻找一种方法来批量调整大约600个svg图标的大小。

这是一个示例图标:

<svg width="1792" height="1792" viewBox="0 0 1792 1792" xmlns="http://www.w3.org/2000/svg"><path d="M1664 1344v128q0 26-19 45t-45 19h-1408q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1408q26 0 45 19t19 45zm0-512v128q0 26-19 45t-45 19h-1408q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1408q26 0 45 19t19 45zm0-512v128q0 26-19 45t-45 19h-1408q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1408q26 0 45 19t19 45z"/></svg>

网格是14px的倍数。我想保持图标本身的大小(路径),但画布本身需要成为16px的倍数,并且路径需要保持完美地居中在画布上。这些图标的原因将在例如使用。 16px并且应该仍然保持清晰和清晰,因为它们将是14px。

我知道我可以简单地调整画布本身的大小,但是我的svg知识是有限的,我不知道如何可靠地将画面上的路径中心放在一个可行的方式中。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我最终通过将viewBox参数偏移来考虑尺寸的变化来解决这个问题。 IE浏览器。 viewbox将成为:`viewBox =&#34; -128 -128 2048 2048&#34;。

此处与16px网格上的图标相同,同时保留了实际图标的尺寸:

<svg width="2048" height="2048" viewBox="-128 -128 2048 2048" xmlns="http://www.w3.org/2000/svg"><path d="M1664 1344v128q0 26-19 45t-45 19h-1408q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1408q26 0 45 19t19 45zm0-512v128q0 26-19 45t-45 19h-1408q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1408q26 0 45 19t19 45zm0-512v128q0 26-19 45t-45 19h-1408q-26 0-45-19t-19-45v-128q0-26 19-45t45-19h1408q26 0 45 19t19 45z"/></svg>

答案 1 :(得分:1)

你也可以使用IcoMoon来做到这一点。导入SVG后,按图标集右上角的菜单按钮,然后选择“获取信息”。从那里,您可以为所有图标添加填充。负填充也有效。

enter image description here