manim_directive

在 Sphinx 文档中包含 Manim 视频的指令

在渲染 HTML 文档时,此处实现的 .. manim:: 指令允许包含渲染的视频。

其允许处理内联内容的基本用法如下所示

.. manim:: MyScene

    class MyScene(Scene):
        def construct(self):
            ...

需要将代表要渲染场景的类名传递给指令。

作为第二个应用,该指令还可以用于渲染在 doctests 中定义的场景,例如

.. manim:: DirectiveDoctestExample
    :ref_classes: Dot

    >>> from manim import Create, Dot, RED, Scene
    >>> dot = Dot(color=RED)
    >>> dot.color
    ManimColor('#FC6255')
    >>> class DirectiveDoctestExample(Scene):
    ...     def construct(self):
    ...         self.play(Create(dot))

选项

选项可以按如下方式传递

.. manim:: <Class name>
    :<option name>: <value>

该指令支持以下配置选项

hide_source

如果存在此标志且不带参数,则源代码不会显示在渲染视频上方。

no_autoplay

如果存在此标志且不带参数,则视频将不会自动播放。

quality{‘low’, ‘medium’, ‘high’, ‘fourk’}

控制视频的渲染质量,类似于相应的命令行标志。

save_as_gif

如果存在此标志且不带参数,则场景将渲染为 GIF。

save_last_frame

如果存在此标志且不带参数,则将渲染并显示代表场景最后一帧的图像,而不是视频。

ref_classes

一个类列表,以空格分隔,在源代码后渲染为引用块。

ref_functions

一个函数列表,以空格分隔,在源代码后渲染为引用块。

ref_methods

一个方法列表,以空格分隔,在源代码后渲染为引用块。

ManimDirective

Manim 指令,在构建文档时渲染视频。

SetupMetadata

SkipManimNode

当存在 skip-manim 标签或正在构建 .pot 文件时使用的辅助节点类。

函数

depart(self, node)[source]
参数:
返回类型:

process_name_list(option_input, reference_type)[source]

将空格分隔的类名字符串重新格式化为包含有效 Sphinx 引用的字符串列表。

测试

>>> process_name_list("Tex TexTemplate", "class")
[':class:`~.Tex`', ':class:`~.TexTemplate`']
>>> process_name_list("Scene.play Mobject.rotate", "func")
[':func:`~.Scene.play`', ':func:`~.Mobject.rotate`']
参数:
  • option_input (str)

  • reference_type (str)

返回类型:

list[str]

setup(app)[source]
参数:

app (Sphinx)

返回类型:

SetupMetadata

visit(self, node, name='')[source]
参数:
返回类型: