簡體   English   中英

生成TeX / LaTeX文件並在Python中編譯

[英]Generate TeX/LaTeX file and compile both in Python

我正在准備一個數據處理代碼,這些代碼的結果將被提供給TeX / LaTeX文件,文件將由Python編譯(即Python應該發送命令來編譯TeX / LaTeX文件)

目前我計划使用TeX / LaTeX的必要語法生成一個文本文件(擴展名為.tex),然后使用os.system調用外部系統命令。 有沒有更簡單的方法或模塊可以做到這一點?

不存在這樣的Python模塊,但您可以嘗試使用擴展名為.tex的文本文件的所需語法生成文本文件,並通過使用Python運行系統命令來編譯它:

import os
os.system("pdflatex filename")

你可以使用PyLaTeX。 這正是它應該用於的事情之一。 https://github.com/JelteF/PyLaTeX

確保您已在系統中安裝了PerlMikTeX (用於latexmkpdflatex編譯器支持)。

如果沒有,您可以從https://www.perl.org/get.html下載Perl

和來自https://miktex.org/download的 MikTeX

另外不要忘記檢查http://mg.readthedocs.io/latexmk.html#installation,因為它很好地指導了Latex編譯器。

我有document.tex以及以下內容。

\documentclass{article}%
\usepackage[T1]{fontenc}%
\usepackage[utf8]{inputenc}%
\usepackage{lmodern}%
\usepackage{textcomp}%
\usepackage{lastpage}%
%
%
%
\begin{document}%
\normalsize%
\section{A section}%
\label{sec:A section}%
Some regular text and some %
\textit{italic text. }%
\subsection{A subsection}%
\label{subsec:A subsection}%
Also some crazy characters: \$\&\#\{\}

%
\end{document}

最后創建任何python文件並粘貼以下任何一個代碼並運行。

第一路

# 1st way
import os

tex_file_name = "document.tex";
os.system("latexmk " + tex_file_name + " -pdf");

第二種方式

# 2nd way
import os

tex_file_name = "document.tex";
os.system("pdflatex " + tex_file_name);

要編譯復雜的乳膠文件,您需要查找使用latexmkpdflatex命令傳遞的額外選項。

謝謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM