我需要制作许多使用相同序言的图像。为了制作这些图像,我使用文档类 standalone。我的目标是创建一个文件 preamble.tex 并将其包含在其他文件中,如下所示:
%preamble.tex
\usepackage[frenchb]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{tikz,pgf}
%drawing tools
和
%image.tex
\documentclass{standalone}
\include{preamble}
\begin{document}
\begin{tikzpicture}
%draw my picture
\end{tikzpicture}
\end{document}
但它对我来说似乎不起作用。
答案1
对于这种情况,当它不是文档的整个部分(可能单独编译,例如章节或部分内容)时,您应该使用\input
而不是。请参阅\include
这个问题了解详情。特别注意,您不能\include
在序言中使用。
\documentclass{standalone}
\input{preamble}
\begin{document}
\begin{tikzpicture}
\node {ABC};
\end{tikzpicture}
\end{document}
或者,按照 David Carlisle 的建议,将序言打包成一个文件:
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{mypreamble}
\usepackage[frenchb]{babel}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{tikz}% loads pgf
\endinput
然后像加载其他包一样加载它:
\documentclass{standalone}
\usepackage{mypreamble}
\begin{document}
\begin{tikzpicture}
\node {ABC};
\end{tikzpicture}
\end{document}
我不太明白为什么这比使用“更合乎逻辑” \input
,但我远非专家。