【发布时间】:2022-01-16 04:19:31
【问题描述】:
我有 2 个文件 Canvas.svg 和 Rectangle.svg。我想在 X-mm,Y-mm 坐标处将 Rectangle.svg 放到 Canvas.svg 上。是否可以使用 python3 或 INKSCAPE 命令行 执行此操作?
首选是任何 python3 实现。
提前致谢!!!
【问题讨论】:
标签: python python-3.x svg command-line inkscape
我有 2 个文件 Canvas.svg 和 Rectangle.svg。我想在 X-mm,Y-mm 坐标处将 Rectangle.svg 放到 Canvas.svg 上。是否可以使用 python3 或 INKSCAPE 命令行 执行此操作?
首选是任何 python3 实现。
提前致谢!!!
【问题讨论】:
标签: python python-3.x svg command-line inkscape
我会建议一个同时引用 Canvas.svg 和 Rectangle.svg 的包装文件:
<?xml version="1.0" encoding="UTF-8"?>
<svg xmlns="http://www.w3.org/2000/svg"
xmlns:xlink="http://www.w3.org/1999/xlink"
width="600" height="400" viewBox="0 0 600 400">
<image xlink:href="Canvas.svg" width="600" height="400"/>
<image xlink:href="Rectangle.svg" width="200" height="100"
transform="translate(100, 200)"/>
</svg>
例如:使用命令inkscape --export-type="pdf" wrapper.svg 将生成一个 600x400 像素的 PDF 文件,默认 DPI 为 96,生成大小为 6.25 英寸 x 4.17 英寸的 PDF。 DPI 可以通过标志--export-dpi=DPI 控制。
由您计算适合公制单位的尺寸:-)
PS:我知道在浏览器中使用 SVG 时可以省略命名空间http://www.w3.org/1999/xlink,但这里需要...
【讨论】: