如何将每个 tikz 图片的 (0, 0) 位置固定为 (当前页面.西南)?

如何将每个 tikz 图片的 (0, 0) 位置固定为 (当前页面.西南)?

我需要绘制几张不同大小的 tikz 图片。每张图片都在单独的页面上。不过坐标系应该是固定的。每当我这样做时

\node at (0, 0) {hello};

“hello”应该位于页面左下角(当前页面.西南)。

所以 tikz 中的坐标系应该是这样的

-------------------------------------  
|          (page width, page height)|  
|                                   |  
|                                   |  
|                                   |  
|                                   |  
|                                   |  
|                                   |  
|                                   |  
|                                   |  
|                                   |  
|                                   |  
|(0, 0)                             |  
-------------------------------------  

平均能量损失

% the node with 'two' is way below the node with 'one'

\documentclass{article}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}

\node at (0, 0) {one};

\end{tikzpicture}

\clearpage

\vspace*{5cm}

\begin{tikzpicture}

\node at (0, 0) {two};

\end{tikzpicture}


\end{document}

(截图中颜色是反转的,正常情况下背景是白色)

在此处输入图片描述

答案1

tikzpicture您可以通过添加选项来移动 a 的原点shift,如下所示:

\begin{tikzpicture}[shift={(5,0)}]

例如,在本例中,我将原点移至5,0。对于您的情况,您必须编写\begin{tikzpicture}[remember picture, overlay, shift={(current page.south west)}],但请记住,您的节点实际上将是那里在页面的角落。

您当然可以使用锚点,因此添加\node[anchor=south west] ...会将节点固定在左下角。

输出

在此处输入图片描述

代码

\documentclass{article}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}[remember picture, overlay, shift={(current page.south west)}]
    \node at (0,0) {one};
\end{tikzpicture}

\clearpage
\vspace*{5cm}

\begin{tikzpicture}[remember picture, overlay, shift={(current page.south west)}]
    \node at (0,0) {two};
\end{tikzpicture}
\end{document}

相关内容