如何正确导入 SVG 路径到 manim

How to properly import an SVG path to manim

我正在 Inkscape 上制作徽标,我想将其导入 manim。该文件确实使用 SVG 的所有路径正确导入,但发生了一件奇怪的事情。

我的 运行 文件代码是这样的:

class U_letter(Scene):
    def construct(self):
        letter = SVGMobject("u_letter")
        self.add(letter)
        letter.set_color(GREEN)

我要添加的字母的 SVG 格式是 available here

它目前有两层,当以这种方式导入它时,它在 manim 上显示正常,但我的问题是我必须设置 'inner path' 的填充(即字母的内部)以匹配场景的背景,我想避免这种情况。

我尝试使用 Inkscape 上的 difference 功能从字母中创建一条路径,这就是我的问题开始的地方,因为最终图像看起来失真 as shown here.

不过,我正在寻找类似 this 的东西作为我的最终解决方案。我还应该指出,到目前为止,我尝试过的其他字母(准确地说是 D 和 A 字母)也遇到过这种情况。

非常感谢您的帮助

截至当前日期(2020 年 6 月 3 日),没有 "proper" 导入 SVG 对象的方法,如您所见,您可以使用 SVGMObject,它在大多数情况下都可以工作,但是当 manim 解析路径本身时,它在其实现中忽略了 SVG 规范中的许多内容,因此您必须自己修复它或等到它被修复。