【发布时间】:2012-10-02 00:20:29
【问题描述】:
我想知道是否有任何命令行工具可用于通过 SVG 中的转换来展平嵌套组?
在我的特殊情况下,我将 CAD 软件生成的 PDF 转换为 SVG,然后添加一些元素并将修改后的 SVG 发布到网页以供查看。 SVG 的响应时间非常缓慢(对于平移和缩放),我发现这是由于 SVG 内部的嵌套组数量非常多,通常高达几百个深度。对于 SVG 中的每个元素,浏览器需要计算其所有父节点的位置...
显然这是荒谬的,因为所有这些元素都需要一个单一的转换(矩阵)。所以我想知道是否有人知道一个工具来扁平化它(或者一个可以这样做的 C# 或 Delphi 实现......)。
【问题讨论】:
-
你有没有找到合适的解决方案?
-
@TomHall:除了 PStill,没有任何解决方案。我认为将许多折线(路径)转换为更简单的形状对于任何代码来说都可能过于复杂。
-
目前我发现的最佳选择是在将 Adobe PDF 保存为“优化的 PDF”(它是“丢弃对象”的一部分)时使用“拼合表单域”选项。这至少消除了嵌套,即使它不一定会减少对象的数量。
标签: svg nested transformation flatten