总体理解
我知道有几个人问过如何将图表和图形(由 tikz 和 pstricks 创建)包含到乳胶文档中。
现在显然要问的是如何处理大数字。首先,预编译应进入文档的图形似乎至关重要,以减少最终文档的编译时间。
但有很多不同的方法可以解决这个问题,实际上这个包standalone
似乎是最吉利的。通过尝试,我认识到,standalone
如果进行了更改,所有 tex 文件都必须位于同一文件夹中才能进行编译。否则会导致错误(使用独立包包含子目录中的图片)。
问题
我现在如何包含像以下 MWE 这样的图形(改编自matlab2tikz
包含我的宏),以便我的文档中的所有文本(包括图形标签)具有相同的通用格式(例如字体大小和形状)?
平均能量损失
\documentclass{article}
\input{Style/macros.tex}
\usepackage{standalone}
\standaloneconfig{mode=buildnew}
\usepackage{filecontents}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% File Style/macros.tex
\begin{filecontents*}{Style/macros.tex}
\fontsize{10}{12}
\end{filecontents*}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% File Documents/test_standalone_slave.tex
\begin{filecontents*}{Documents/test_standalone_slave.tex}
\documentclass{standalone}
\input{../Style/macros.tex}
\usepackage{tikz,pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
\begin{tikzpicture}
\draw (0,0) circle (2);
\end{tikzpicture}
\end{document}
\endinput
\end{filecontents*}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{tikz,pgfplots}
\pgfplotsset{compat=newest}
\begin{document}
This is my MWE!
\includestandalone{Documents/test_standalone_slave}
\end{document}
答案1
如果我是你,我会做以下事情:
为了使你的通用设置可用于所有图形、图表、文档等,请将设置放入一个包中,即
mycommon.sty
。全局注册此包,以便你可以在整个项目中使用它。如果你不知道如何做到这一点,请参阅我的答案此处(点击)。如果您希望其他项目可以访问您的图表或图形,请将它们放在高于项目目录的单独目录中。例如,
<any directory>\Diagrams\ <any directory>\Diagrams\Projects\Project-01\ <any directory>\Diagrams\Projects\Project-02\
为了获得每个图表的紧密绘图,请使用
standalone
以下文档类\documentclass[pstricks,border=12pt,12pt]{standalone} \usepackage{mycommon} \begin{document} % your drawing code goes here... \end{document}
还请加载用于常用设置的包。
使用适当的编译器编译每个图表以获得 PDF 版本。这将节省您编译项目主要输入文件时大量的时间。
从项目的主输入文件中导入 PDF 图表。并使用编译主输入文件
pdflatex
(推荐,因为包完全支持它)。如有必要,microtype
您还可以加载包。mycommon
\includegraphics
fromgraphicx
将完成导入图表的工作。您可以设置\graphicspath{{../../Diagrams/}}
为在调用时缩短路径\includegraphics
。