使用 \geometry 调整独立 PDF 文件的大小会导致文件大小不正确或内容发生偏移

使用 \geometry 调整独立 PDF 文件的大小会导致文件大小不正确或内容发生偏移

我想将我的 tikz 图片外部化为一个独立类。因为我使用相对度量作为 \textwidth,所以我需要我的独立文件与我的 main.tex 的尺寸完全匹配。

看着这里geometry 包似乎适合这种情况。但是,无论有没有“pass”选项,生成的图片都有错误的大小或在裁剪区域内发生移动。

梅威瑟:

\documentclass[tikz]{standalone}
\usepackage{pgfplots}
\usepackage{layouts}
\usepackage[paperwidth=20cm]{geometry}  % add 'pass' stillt not work
\pgfplotsset{compat=1.16, width= .8\textwidth}

\begin{document}
PaperWidth in [cm] \printinunitsof{cm}\prntlen{\paperwidth}
\begin{tikzpicture}
\begin{axis}
\addplot [] coordinates {(0,0) (1,2) (2,3)};
\end{axis}
\end{tikzpicture}
PaperWidth in [cm] \printinunitsof{cm}\prntlen{\paperwidth}
\end{document}

如果没有“通过”,图片将无法完整显示,并且尺寸错误:

在此处输入图片描述

“通过”图片虽然没有完全显示出来,但看起来更好甚至更小(21cm 的 80% 不是 8.8):

在此处输入图片描述

答案1

评论太长了,提前致歉。如果与主题无关,我很乐意删除。

一般来说,当我想要有外部情节时,我会遵循这种策略。

我首先创建一个FigureHeader.tex包含一组参数指令的文件

% some useful  packages
\usepackage{...}
....
% some useful libraries
\usetikzlibrary{...}
% Some personal styles/options
\tikzset{myaxis/.style={width=20cm,...}}     

这样,您可以在同一个参数文件中定义很多参数,因此如果您有很多重复的图形,那么这样做比一直重写所有内容更容易。

然后在图像文件中执行

\documentclass[tikz]{standalone}
\input{FigureHeader}

\begin{document}
    \begin{tikzpicture}
        \begin{axis}[myaxis]
             ...
        \end{axis}
    \end{tikzpicture}
\end{document}

然后,在主文档中,我只需输入图形即可\includegraphics{theimage.pdf}

相关内容