我将 700 个独立文件排列在 18 个不同的文件夹中,如附图所示。这是一个开源项目,用于逐页输入。每个文件夹的页数各不相同。
现在我的麻烦是如何将其集成到书籍布局中的一个文件中。
当我以这种方式创建文档时,我想我会手动将所有内容放在一个文件夹中并运行它,我仍然可以这样做,只是想知道是否有更简单的方法来做到这一点。
感谢您的帮助。
答案1
我不确定你想在这个文件中得到什么,以及你想获得什么,但假设你book.tex
在目录“Bellankonda”中有一个主文件,并且文件 chap_page_015 只有块正文(没有完全可编译的 LaTeX 文档),并且您想获得合并所有这些块的唯一 PDF,那么书籍文件可能是这样的:
\documentclass{book}
\begin{document}
\input{Chapter_02/chap_page_015}
\input{Chapter_02/chap_page_016}
\input{Chapter_02/chap_page_017}
% etcetera
\end{document}
如果子文件如下整章,必须开始结束新页面,也许你想使用\include
而不是\input
。请参阅 何时应使用 \input 和 \include?
如果子文档是完整的 LaTeX 文件带有序言(以\documentclass
\end{document} 开头和结尾),您可以使用相同的文件,在序言中包含包standalone
、 或docmute
、 或subfiles
(在这种情况下使用\subfiles
而不是\input
)。子文档必须全部属于同一类,在其他情况下,您可以尝试该类combine
,但通常这意味着自找麻烦。在这种情况下,另一种选择是生成单个页面的 PDF 文件并将所有页面与pdfpages
包合并。
编辑
由于 Aku 的评论要求循环自动写入 \input
命令,解决方案可以是命令\foreach
。下面的代码是一个简单的示例,其中主文档包含从page1.tex
到page5.tex
使用此命令:
% Main file
\documentclass{article}
\usepackage{tikz}
\begin{document}
\foreach \c in {1,...,5}{\input{page\c.tex} }
\end{document}
使用命令行创建子文档的方法如下:
echo " page {\em number 1}\par " > page1.tex
echo " page {\em number 2}\par " > page2.tex
echo " page {\em number 3}\par " > page3.tex
echo " page {\em number 4}\par " > page4.tex
echo " page {\em number 5}\par " > page5.tex
结果必须如下: