我正在 SAS 中编写一个程序,它将方程式写入 TeX 文件,然后使用 对其进行编译systask command pdflatex (...)
。也就是说,SAS 执行一个 Windows 命令。但是,当方程式太长时,在从 SAS 编译 TeX 文档时它们无法正确换行。
当使用与 SAS 编写的相同的 TeX 文件,但在 Texworks 中打开它,然后使用 pdflatex 时,方程式可以完美换行。从 cmd 编译和在 Texworks 中编译是否存在一些我需要考虑的内在差异?(我安装了 MikTex)
推论:打开 CMD 并执行 pdflatex 命令,会产生与 SAS 相同的包装问题。因此,我认为 SAS 不是问题所在。下面是我的程序输出的示例。
\documentclass{article}
\usepackage[top=2cm, bottom=2cm, left=1cm, right=1cm]{geometry}
\usepackage{framed}
\usepackage{amsmath}
\usepackage{mathpazo}
\usepackage[mathpazo]{flexisym}
\usepackage{breqn}
\setkeys{breqn}{breakdepth={3}}
\usepackage{float}
\author{John Doe}
\title{Some title}
\begin{document}
\maketitle
\begin{dmath*}
<Some long equation>
\end{dmath*}
\end{document}
答案1
@DavidCarlisle 指出 Texworks 默认的 pdflatex 命令选项可能与直接执行 pdflatex 不同。从 Texworks 复制参数,即将选项添加-synctex=1 -undump=pdflatex$fullname
到 Windows 命令中解决了这个问题。
SAS 执行的完整命令如下
systask command "pdflatex -synctex=1 -undump=pdflatex texfile.tex";
感谢您的回复!