Проблемы с Манимом. 'ошибка преобразования в dvi.'

Я пытаюсь использовать Manim (библиотека Python Youtuber 3Blue1Brown) для анимации. Я установил необходимое программное обеспечение, включая новейшие версии MikTex и python. Я могу запустить анимацию SquareToCircle, но всякий раз, когда я пытаюсь запустить любую анимацию, включающую текст, я получаю следующую ошибку:

Exception: Latex error converting to dvi. See log output above or the log file: C:\Animation Programs\Manim\manim
def tex_to_dvi(tex_file):
result = tex_file.replace(".tex", ".dvi")
if not os.path.exists(result):
    commands = [
        "latex", 
        "-interaction=batchmode", 
        "-halt-on-error",
        "-output-directory=" + TEX_DIR,
        tex_file,
    ]
    exit_code = os.system(" ".join(commands))
    if exit_code != 0:
        latex_output = ''
        log_file = tex_file.replace(".tex", ".log")
        if os.path.exists(log_file):
            with open(log_file, 'r') as f:
                latex_output = f.read()
        if latex_output:
            sys.stderr.write(latex_output)
        raise Exception(
            "Latex error converting to dvi. "
            "See log output above or the log file: %s" % log_file)
return result
feb\manimlib\files\Tex\47f78a457bde38f5.log

Такого файла .log нет, однако в той же папке есть файл .tex с таким же именем. Файл .tex читает (открытие в Блокноте)


\documentclass[preview]{standalone}
\usepackage[english]{babel}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{dsfont}
\usepackage{setspace}
\usepackage{tipa}
\usepackage{relsize}
\usepackage{textcomp}
\usepackage{mathrsfs}
\usepackage{calligra}
\usepackage{wasysym}
\usepackage{ragged2e}
\usepackage{physics}
\usepackage{xcolor}
\usepackage{textcomp}
\usepackage{microtype}
\DisableLigatures{encoding = *, family = * }
%\usepackage[UTF8]{ctex}
\linespread{1}

\begin{document}

\centering This is some \LaTeX

\end{document}

Для некоторых проблема казалась решенной в следующем сообщении, в котором сообщается, что Я «меняю command = [...] в mobject / tex_mobject.py», но нигде в файле tex_mobject.py нет строки «command».

Я скопировал следующие функции (которые, по-видимому, уже должны были существовать в файле, но не существовали) и вставил их в tex_mobject.py

def tex_to_dvi(tex_file):
result = tex_file.replace(".tex", ".dvi")
if not os.path.exists(result):
    commands = [
        "latex", 
        "-interaction=batchmode", 
        "-halt-on-error",
        "-output-directory=" + TEX_DIR,
        tex_file,
    ]
    exit_code = os.system(" ".join(commands))
    if exit_code != 0:
        latex_output = ''
        log_file = tex_file.replace(".tex", ".log")
        if os.path.exists(log_file):
            with open(log_file, 'r') as f:
                latex_output = f.read()
        if latex_output:
            sys.stderr.write(latex_output)
        raise Exception(
            "Latex error converting to dvi. "
            "See log output above or the log file: %s" % log_file)
return result

.

def dvi_to_svg(dvi_file, regen_if_exists = False):
    """
    Converts a dvi, which potentially has multiple slides, into a 
    directory full of enumerated pngs corresponding with these slides.
    Returns a list of PIL Image objects for these images sorted as they
    where in the dvi
    """
    result = dvi_file.replace(".dvi", ".svg")
    if not os.path.exists(result):
        commands = [
            "dvisvgm",
            dvi_file,
            "-n",
            "-v",
            "0",
            "-o",
            result,
        ]
        os.system(" ".join(commands))
    return result

Тем не менее, я все еще получаю ту же ошибку.

В том же посте другие советуют взглянуть на указанный файл .log, так как он даст мне знать, если какие-либо пакеты отсутствуют. Как я уже сказал, у меня нет такого файла .log, а в соответствующем файле .tex, похоже, нет упоминания о каких-либо недостающих пакетах.


Буду очень признателен за любую помощь!


person Leo    schedule 03.09.2019    source источник


Ответы (1)


Этот ответ больше бесполезен, потому что Маним уже решил эту проблему. Так что это может быть связано с двумя причинами: Чтобы намекнуть, что не так, перейдите в папку manimlib с терминалом и выполните следующее:

latex tex_template.tex

Мы выделяем две возможные ошибки:

  1. Распознана команда latex, но компиляция не может быть завершена из-за отсутствия библиотек. Чтобы решить эту проблему, вы можете установить недостающие пакеты, указанные терминалом.

  2. Этот LaTeX не распознается как команда, в этом случае переменная PATH наверняка установлена ​​неправильно, вот решение.

person TheoremOfBeethoven    schedule 04.09.2019
comment
Спасибо! По-видимому, отсутствовал какой-то файл .aux. Теперь он работает, единственная странность в том, что файлы .mp4 не открываются после ввода соответствующей команды, а вместо этого создаются в Manim \ manim_3_feb \ media \ videos \ example_scenes \ 1440p60, что у меня работает. Также благодарим за учебные пособия по установке (: - person Leo; 04.09.2019
comment
Хотя, когда я пытаюсь запустить программу OpeningManimExample, я получаю ту же ошибку («Ошибка латексного преобразования в формат dvi»), хотя теперь я могу запустить анимацию WriteStuff. - person Leo; 04.09.2019
comment
Откройте проблему в GitHub, пожалуйста, со всем скриптом терминала - person TheoremOfBeethoven; 05.09.2019