Seitenbeschränkungen in Tikz

Seitenbeschränkungen in Tikz

Mit Tikz zeichne ich eine Linie von einem Ende des A4-Blatts zum anderen wie folgt:

\begin{tikzpicture}
    \draw (current page.south) -- (current page.north);
\end{tikzpicture}

Das erstellte PDF hat zwei Seiten. Die erste ist leer, die andere hat die gewünschte vertikale Linie.

Wenn ich außerdem zwei "Grenzlinien" hintereinander zeichne, wie

\begin{tikzpicture}
    \draw (current page.south) -- (current page.north);
    \draw (current page.east) -- (current page.west);
\end{tikzpicture}

es entsteht eine zweite leere Seite, nach der Zeichnung (das Ergebnis ist also leere Seite-Zeichnung-leere Seite)?!

Ich habe die memoirKlasse mit dem geometryPaket gewählt:

\documentclass[oneside, english, 10pt, a4paper]{memoir}
\usepackage[a4paper, margin=0pt]{geometry}

Was mache ich falsch?

Antwort1

Normalerweise wird alles in einem Tikz-Bild in einen Begrenzungsrahmen gesetzt, der dann von LaTeX wie jeder andere Rahmen behandelt wird. Sie können nur die Grundlinie steuern.

Die Verwendung overlayist wie die Verwendung \smash{\rlap{...}}mit dem Ursprung an der Grundlinie der aktuellen Textposition. Sie deaktiviert auch die Berechnung des Begrenzungsrahmens.

Mit remember picturewird der Ursprungsort (der unbekannt ist, bis die Seite versandfertig ist) in der AUX-Datei gespeichert. Beim nächsten Durchgang wird dieser Wert gelesen und kann ermittelt werden, wo sich die (current page)Anker befinden. Außerdem wird der Ursprungsort für jedes andere Tikzpicture (mit remember picture) oder Tikzmark auf der Seite gelesen und die relative Position ihrer Anker kann ebenfalls ermittelt werden.

\documentclass[oneside, english, 10pt, a4paper]{memoir}
\usepackage[a4paper, margin=0pt]{geometry}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}[remember picture,overlay]
    \draw (current page.south) -- (current page.north);
    \draw (current page.east) -- (current page.west);
\end{tikzpicture}
\end{document}

verwandte Informationen