到目前为止,我在 TikZ 中编程的方式(但也许我遗漏了一些东西)我从未听说过告诉 TikZ 在打印页面上将坐标系的原点放在哪里的方法。但在很多情况下我都想这样做。例如,在下面的最小示例中,图片的一部分在右边距被吃掉了,我惊呼“为什么 TikZ 不将图形向左推一点,以便显示所有内容?”
TikZ 默认如何将坐标系转移到打印页面?这可能在手册的某处有解释,但我在索引中搜索时有点迷失,因为我不知道要查找哪个关键字。
任何帮助均感激不尽。
\documentclass[a4paper]{article}
\usepackage{tikz}
\begin{document}
\begin{center}
\begin{tikzpicture}
\foreach \x in {0,2,4,6,8} {
\draw (2*\x,0) -- ++(1,1);
}
\end{tikzpicture}
\end{center}
\end{document}
答案1
任何 都tikzpicture
被视为character
中的。除非您强制执行(稍后解释),否则坐标和打印页面LaTeX
之间没有固定的关系。tikzpicture
\documentclass{article}
\usepackage{tikz}
\begin{document}
This is an example
\begin{tikzpicture}
\draw (0,0) rectangle (2,2);
\end{tikzpicture}
with a \texttt{tikzpicture} inside.
\end{document}
您的示例太宽(超过 17 厘米)无法容纳\linewidth
(您必须考虑左右页边距)并且其中一部分被吃掉了。
如果你不想担心页面尺寸,可以使用standalone
根据您的示例,包/类会产生:
\documentclass[tikz,border=2mm]{standalone}
\begin{document}
\begin{tikzpicture}
\foreach \x in {0,2,4,6,8} {
\draw (2*\x,0) -- ++(1,1);
}
\end{tikzpicture}
\end{document}
现在,可以使用命令将此外部图形 (pdf) 插入到文本中\includegraphics
(可能在figure
环境内)。它也可以包含tikzpicture
在\usepackage{standalone}
主文档序言和中\input{your_file}
。在这两种情况下,图形都将被视为字符。
也可以将 放置tikzpicture
在固定位置,如第 17.13.2 节所述pgfmanual
。另一个选择是使用类似 的包background
。
\documentclass[4paper]{article}
\usepackage{tikz}
\begin{document}
This is an example with
\begin{tikzpicture}[remember picture,overlay]
\draw (current page.center) rectangle ++(2,2);
\end{tikzpicture}
a \texttt{tikzpicture} absolutely positioned.
\end{document}