首页 > 解决方案 > 更改TEX_USE_CTEX的值后,manim动画显示中文失败

问题描述

基本上它与https://github.com/3b1b/manim/issues/570中的问题相同,但是不清楚该人是如何解决问题的,因为他说他不知道他是如何设法解决的它。我正在使用 Windows 10 和 MiKTeX。我尝试编辑constants.pyTEX_USE_CTEX = False更改为True并返回错误:

File "D:\Programs\manim\manim\manimlib\extract_scene.py", line 153, in main
    scene = SceneClass(**scene_kwargs)
  File "D:\Programs\manim\manim\manimlib\scene\scene.py", line 54, in __init__
    self.construct()
  File "tutorial/1_text_format.py", line 5, in construct
    text = TextMobject("你好")
  File "D:\Programs\manim\manim\manimlib\mobject\svg\tex_mobject.py", line 144, in __init__
    self, self.arg_separator.join(tex_strings), **kwargs
  File "D:\Programs\manim\manim\manimlib\mobject\svg\tex_mobject.py", line 45, in __init__
    self.template_tex_file_body
  File "D:\Programs\manim\manim\manimlib\utils\tex_file_writing.py", line 19, in tex_to_svg_file
    dvi_file = tex_to_dvi(tex_file)
  File "D:\Programs\manim\manim\manimlib\utils\tex_file_writing.py", line 67, in tex_to_dvi
    "See log output above or the log file: %s" % log_file)
Exception: Xelatex error converting to xdv. See log output above or the log file: D:\Programs\manim\manim\manimlib\files\Tex\6d518d13918960fc.log

而且命令非常简单:

class WriteText(Scene): 
    def construct(self): 
        text = TextMobject("你好")
        self.play(Write(text))
        self.wait(3)

有什么方法被证明可以解决这个问题?因为我不是第一个遇到这种情况的人。

编辑:这是它在D:\Programs\manim\manim\manimlib\files\Tex\6d518d13918960fc.log.

This is XeTeX, Version 3.14159265-2.6-0.999992 (MiKTeX 2.9.7400 64-bit) (preloaded format=xelatex 2020.5.4)  4 MAY 2020 05:14
entering extended mode
**D:/Programs/manim/manim/manimlib/files/Tex/6d518d13918960fc.tex
(D:/Programs/manim/manim/manimlib/files/Tex/6d518d13918960fc.tex
LaTeX2e <2020-02-02> patch level 5
L3 programming layer <2020-04-06>)
! Emergency stop.
<*> ...nim/manimlib/files/Tex/6d518d13918960fc.tex

Here is how much of TeX's memory you used:
 18 strings out of 414218
 562 string characters out of 2903153
 244959 words of memory out of 3000000
 17616 multiletter control sequences out of 15000+200000
 532338 words of font info for 24 fonts, out of 3000000 for 9000
 1348 hyphenation exceptions out of 8191
 12i,0n,15p,95b,8s stack positions out of 5000i,500n,10000p,200000b,50000s

No pages of output.

标签: pythonanimationutf-8latexmanim

解决方案


好吧,您可以检查您的 MiKTeX 是否是“完整版”而不是“基本版”。您可以将其完全删除,然后重新安装,请确保选择“完整版本”。如果您仍然遇到此错误,请尝试使用 TeX Live。只需单击此链接https://matnoble.me/tech/ubuntu/install-texlive/并了解如何在 Windows 上安装它。


推荐阅读