2

目标:python 应用程序中的 SVG 到 PNG

我正在将 SVG 文件转换为 PNG 并遇到一个奇怪的问题。对于大多数文件,PNG 呈现完美,但对于某些文件,曲线呈现为点之间的直线。

使用的技术

  • 姜戈
  • 魔杖(ImageMagick python 绑定)

我的 view.py 文件中的片段

with Image( blob=temp_svg_data, format='svg' ) as original:
  original.format = 'png'
  original.save(filename=png_location)

错误 SVG 路径的示例。

<path fill="red" d="m27.518,42.335c3.9,0,7.043-3.166,7.043-7.055c0-3.911-3.144-7.055-7.043-7.055c-3.888,0-7.055,3.144-7.055,7.055
C20.463,39.169,23.63,42.335,27.518,42.335z"/>

输出

请注意,右侧呈现的 PNG 中的红色不是平滑曲线。

http://cl.ly/image/2t3B2w0e393Y

理论

  • 小数位。 - 不是。找到以 3 位小数呈现良好的曲线。
  • SVG 生成器。 - 不是。从有效和无效的 AI 版本中找到曲线。
  • SVG 移动数据中的 Capitol 与小写(绝对与相对)字母。
4

0 回答 0