如何将 Rd2pdf latex 文件作为附录包含在文档中

如何将 Rd2pdf latex 文件作为附录包含在文档中

我已经创建了一个 R 包,我想将文档作为附录包含在我的论文文档中。为了创建 latex 文件,我做了以下操作(我部分地包括了这一点,以便其他人更容易使用)。

Rd2pdf "path to my package folder" --no-clean

使用 no-clean 选项来确保临时 latex 文件不会被删除。这些 late 文件存储在隐藏的“Rd2pdf”文件夹中,与 pdf 的保存路径相同(在 Linux ubuntu 上,这是主文件夹)。

但是,让 latex 文件与我的 latex 文档集成起来却很困难。Rd2pdf latex 文件依赖于我找不到的 Rd.sty 文件。我不知道即使我能找到 Rd.sty,它是否会弄乱文档其余部分的格式。

我可以使用哪些方法将 Rd2pdf latex 文件集成到我更大的 latex 文档中,同时尽量减少对原始文档造成的问题。理想情况下,我不会仅仅使用\usepackage{pdfpages}和将其作为 pdf 包含,\includepdf[pages=-]{myfile.pdf}但作为最后的手段。

答案1

您没有指定论文文档的设置(哪个文档类、附录如何制作等),因此很难说您的确切设置是否存在兼容性问题。

但是,使用常规文档类,通过从 Rd2pdf 的输出中删除一些内容,将文档与 R 文档结合起来并不太困难。

作为示例,我load.Rd从教程中获取了以下文件https://colinfay.me/writing-r-extensions/writing-r-documentation-files.html。这将产生以下.tex文件(仅显示顶部):

\documentclass[letterpaper]{book}
\usepackage[times,inconsolata,hyper]{Rd}
\usepackage{makeidx}
\usepackage[utf8,latin1]{inputenc}
% \usepackage{graphicx} % @USE GRAPHICX@
\makeindex{}
\begin{document}
\chapter*{}
\begin{center}
{\textbf{\huge \R{} documentation}} \par\bigskip{{\Large of \file{load.Rd}}}
\par\bigskip{\large \today}
\end{center}
\inputencoding{utf8}
\HeaderA{load}{Reload Saved Datasets}{load}
\keyword{file}{load}
% etc.

您需要从此文件中删除文档结构(\documentclass\begin{document}\end{document})。然后将包复制到主文档中。主包(\usepackage{Rd})具有可更改文档外观的字体选项,可以将其删除(timesinconsolata)。基本上就是这样,然后您只需将生成的文件的其余部分复制.tex到您自己的文档中即可。

假设您有以下主要文档:

\documentclass{report}
\usepackage[titletoc]{appendix}
\begin{document}
\tableofcontents

\chapter{Lorem ipsum}
\section{Dolor sit amet}
\begin{appendices}
\chapter*{Appendix: documentation}
\end{appendices}
\end{document}

那么完整文件就变成如下形式:

\documentclass{report}
\usepackage[titletoc]{appendix}
% following two packages are copied from the generated .tex file
\usepackage[hyper]{Rd}
\usepackage{inputenc}
\begin{document}
\tableofcontents

\chapter{Lorem ipsum}
\section{Dolor sit amet}
\begin{appendices}
\chapter*{Appendix: documentation}
% content from the generated file starts here
\begin{center}
{\textbf{\huge \R{} documentation}} \par\bigskip{{\Large of \file{load.Rd}}}
\par\bigskip{\large \today}
\end{center}
\inputencoding{utf8}
\HeaderA{load}{Reload Saved Datasets}{load}
\keyword{file}{load}
% etc.

附录开始页面的截图:

在此处输入图片描述

请注意,该Rd.sty文件位于 LaTeX 的搜索路径中(否则 Rd2pdf 将无法成功)。因此,您无需自己找到它或将其放在任何特定目录中。但是,如果您想知道它在哪里,您可以kpsewhich Rd.sty在终端中使用,它将返回路径。

相关内容