tikz を使用して、次のように A4 用紙の端から端まで線を描きます。
\begin{tikzpicture}
\draw (current page.south) -- (current page.north);
\end{tikzpicture}
生成された PDF には 2 つのページがあります。最初のページは空白で、もう 1 つのページには必要な縦線が入っています。
さらに、2つの「限界線」を連続して描くと、
\begin{tikzpicture}
\draw (current page.south) -- (current page.north);
\draw (current page.east) -- (current page.west);
\end{tikzpicture}
描画後に 2 番目の空白ページが生成されます (つまり、結果は空白ページ - 描画 - 空白ページになります) ?!
私はパッケージmemoir
付きのクラスを選択しましたgeometry
:
\documentclass[oneside, english, 10pt, a4paper]{memoir}
\usepackage[a4paper, margin=0pt]{geometry}
何が間違っているのでしょうか?
答え1
通常、tikzpicture 内のすべては境界ボックス内に配置され、LaTeX によって他のボックスと同様に処理されます。制御できるのはベースラインだけです。
を使用すると、現在のテキスト位置のベースラインに原点を配置して をoverlay
使用する場合と同様になります。また、境界ボックスの計算もオフになります。\smash{\rlap{...}}
を使用すると、remember picture
元の場所 (ページが送信される準備ができるまで不明) が aux ファイルに保存されます。次のパスでは、この値が読み取られ、(current page)
アンカーの場所が特定されます。また、ページ上の他のすべての tikzpicture ( を使用remember picture
) または tikzmark の元の場所も読み取られ、それらのアンカーの相対的な位置も特定されます。
\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}