![如何处理大型项目](https://linux22.com/image/252820/%E5%A6%82%E4%BD%95%E5%A4%84%E7%90%86%E5%A4%A7%E5%9E%8B%E9%A1%B9%E7%9B%AE.png)
我正在做一个项目,我想让它精简一点,所以请帮我做以下事情。我的文档结构如下:
/DocumentRoot
|-main.tex
|-title.tex
|
|-/chapter-1
| |-/images
| |-chapter-1.tex
|
|-/chapter-2
|-/images
|-chapter-2.tex
我的文档是这样的:
\begin{document}
\include{./title}
\include{./chapter-1/chapter-1}
\include{./chapter-2/chapter-2}
\include{./chapter-3/chapter-3}
\end{document}
在我的章节中,我使用了一些图像和一些繁重的 tikz 图,因此我使用 externalize 和 draft 选项来加快编译速度。但我希望将图像放在相应的章节文件夹中,但例如在第 3 章中,这是可行的:
\includegraphics[width=\linewidth]{./chapter-3/images/img.jpg}
而这并没有
\includegraphics[width=\linewidth]{./images/img.jpg}
由于某种原因,xelatex 在包含章节的相对路径方面存在问题。我还想控制位置输出和外部化 tikz 文档的命名。有什么帮助吗?我正在使用 miktex 和 texworks。
答案1
这个想法很简单,只要在包含新章节时准备目录路径(以导入章节文件和图像文件)。
主文本
\documentclass{book}
\usepackage{graphicx}
\def\Include#1{%
\def\ChapterPath{#1/}%
\def\GraphicsPath{\ChapterPath Images/}%
\include{\ChapterPath#1}}
\newcommand\IncludeGraphics[2][width=\linewidth]{%
\includegraphics[#1]{\GraphicsPath #2}}
\begin{document}
\Include{Chapter-1}
\end{document}
第 1 章.tex
\chapter{Chapter One}
\IncludeGraphics[width=0.5\linewidth]{Tulips}
评论:
文件夹
Chapter-1
在Docoment-Root
文件夹中。Chapter-1.tex
在文件夹里Chapter-1
。Tulips.jpg
在文件夹里Chapter-1/Images
。
尖端
如果你的 Ti钾Z 代码没有“链接”到带节点的文本,例如,则将这样的 Ti钾Z 代码放入单独的可编译输入文件中。使用
article
document class pluspreview
可获得紧密的 PDF 输出。您也可以改用standalone
document class。如果您的表格不够长,无法跨越多页,则将其放入单独的可编译输入文件中以获得紧密的 PDF 输出。
调用时最好不要明确指定图像扩展名
\includegraphics
。为常用材料定义宏并将它们放入包中,以便您稍后可以在一个地方更改它们的定义,并且这些更改会影响整个文档。