我试图用它latexdiff
比较两个 .tex 文件,生成一个 .pdf 文件,其中的标记类似于 Microsoft Word 中的“跟踪更改”功能(请参阅https://www.sharelatex.com/blog/2013/02/16/using-latexdiff-for-marking-changes-to-tex-documents.html)。
我已经从 CTAN 下载了latexdiff
文件,还下载了 Strawberry Perl。我正在使用 MiKTeX 编译我的两个 tex 文档。
在命令行(DOS 提示符)中,我一直试图指示latexdiff
比较两个非常简单的 .tex 文件:SAMPLE4.tex
和SAMPLE5.tex
。我一直按照此处列出的第一个 URL 的 USAGE 部分中的说明进行操作(“...使用 latexdiff...”),具体来说:
“用法
要比较两个文档,只需在命令行中运行 latexdiff,如下所示:
latexdiff draft.tex revision.tex > diff.tex"
但是,当我在命令行中输入以下内容时:
C:\Users\Kathryn\latexdiff SAMPLE4.tex SAMPLE5.tex > diff.tex
我收到以下错误消息:
Input file SAMPLE$.tex does not exist. at C:\Program Files\MiKTeX 2.9\scripts\latexdiff\latexdiff line 513, <DATA> line 20026.
我怀疑问题在于计算机找不到该文件SAMPLE4.tex
,并且我需要将其SAMPLE4.tex
(大概也是SAMPLE5.tex
)放在我可以在 DOS 中准确指定的目录中。
我尝试放入两个 .tex 文件C:\Program Files\MikTeX 2.9\latexdiff
,但没有作用。
这里有人可以给我一些建议吗?
答案1
第一次尝试时我没有遇到任何问题,这就是我所做的。我在 Windows 8 上使用 MiKTeX。
我使用 MiKTeX 包管理器(管理员)来安装
latexdiff
。我下载并安装了 Strawberry Perl。
我在开始菜单/窗口搜索中搜索“cmd”,然后看到
perl(command line)
我打开并将目录更改为我的和所在perl(command line)
的目录(都在同一个文件夹中)。oldfile.tex
newfile.tex
然后我latexdiff oldfile.tex newfile.tex > diff.tex
在 shell 提示符下执行。
它diff.tex
在同一个文件夹中生成了一个文件,我使用 MiKTeX 进行编译以获取该diff.pdf
文件。
答案2
我刚刚也遇到了同样的问题。可能你已经放弃了,但愿这能帮助到下一个人。
按照以下步骤https://www.sharelatex.com/blog/2013/02/16/using-latexdiff-for-marking-changes-to-tex-documents.html
安装Perl
解压 latexdiff 文件并将其复制到 Perl > bin 文件夹(默认安装在 C: 盘)”
然后为文件 latexdiff 指定 .pl 扩展名。换句话说,进入 latexdiff 文件夹。找到名为“latexdiff”的文件并将其更改为“latexdiff.pl”。
现在将您的两个 tex 文件放入 latexdiff 文件夹。
打开命令行并使用 cd 转到 latexdiff 文件夹。您的命令应如下所示:
cd C:\Perl64\bin\latexdiff
现在是时候运行 latexdiff 了。运行以下行(替换您自己的文件名):
latexdiff.pl Original.tex Revision.tex > Difference.tex
在命令行中。
您应该在 latexdiff 文件夹中找到 Difference.tex 文件。如果您在您最喜欢的 latex 编译器中编译它,您将看到所有更改。