我有一個 LaTeX 文檔,分成多個文字文件,位於各個文件夾中,如下所示:
\section{Foo}
\subsection{Foo1}
\input{foo/1}
\subsection{Foo2}
\input{foo/2}
\section{Bar}
\subsection{Bar1}
\input{bar/1}
等等。假設在該Foo2
小節內,我必須插入一個圖像。我怎麼告訴LaTeX
在當前打開的文件所在的目錄中查找圖像(即foo
),以便在文件中2
我可以編寫:
\includegraphics{baz}
我可以將確定部分的所有圖像放置在其資料夾內、該部分的輸入文字檔案中嗎?
答案1
您可以使用
\graphicspath{{foo}}\input{foo/1}
..
\graphicspath{{bar}}\input{bar/1}
答案2
有多種方法可以解決這個問題,具體取決於目錄的佈局方式。如果你的目錄樹看起來像
-foo
-foo1.tex
-foo2.tex
-baz.pdf
-baz.eps
-bar
-bar1.tex
-qux.pdf
foo
如果和目錄中的檔案bar
具有唯一的名稱,則可以指定TEXINPUT
環境變數以包含子目錄。如何設定的詳細資訊TEXINPUTS
取決於您的發行版(例如,TeXLive 或 MikTeX)和作業系統(例如,Windows 或 Linux)。在我看來,這是理想的設置,因為您告訴了tex
在哪裡查找文件。在這種情況下,你的「主」文件看起來像
\section{Foo}
\subsection{Foo1}
\input{foo1}
\subsection{Foo2}
\input{foo2}
\section{Bar}
\subsection{Bar1}
\input{bar1}
在這種情況下,您也可以使用\graphicspath
設定目錄來尋找圖像。
\graphicspath{{foo}{bar}}
\section{Foo}
\subsection{Foo1}
\input{foo/foo1}
\subsection{Foo2}
\input{foo/foo2}
\section{Bar}
\subsection{Bar1}
\input{bar/bar1}
如果你的目錄樹看起來像
-foo
-1.tex
-2.tex
-baz.pdf
-baz.eps
-bar
-1.tex
-qux.pdf
-baz.pdf
-baz.eps
foo
如果和目錄中的檔案bar
沒有唯一的名稱,則您無法指定TEXINPUT
環境變量,因為它不知道您指的是哪個檔案。您仍然可以使用\graphicspath
,但必須在每次使用之前進行設置\input
\graphicspath{{foo}}
\section{Foo}
\subsection{Foo1}
\input{foo/1}
\subsection{Foo2}
\input{foo/2}
\graphicspath{{bar}}
\section{Bar}
\subsection{Bar1}
\input{bar/1}
您也可以使用import
包裹。
\section{Foo}
\subsection{Foo1}
\import{foo/}{1}
\subsection{Foo2}
\import{foo/}{2}
\graphicspath{{bar}}
\section{Bar}
\subsection{Bar1}
\import{bar/}{1}
import
如果你的目錄是嵌套的,那麼包裝的事情就會變得有點棘手。