我试图在文档周围绘制一个框架,但输出并不像我预期的那样。
\documentclass[border=10mm]{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[remember picture,overlay]
\path[draw,line width=1mm]
(current page.north east)rectangle(current page.south west);
\end{tikzpicture}
\end{document}
答案1
TikZ
backgrounds
可以使用 tikzpicture 的库和framed
选项为您完成这项工作。
Backgrounds
库可用于在特定scopes
或整个周围/后面绘制框架或网格tikzpicture
。您可以定义样式并使用选项固定 tikzpicture ( ) 限制和所需框架background rectangle
之间的距离。current bounding box
inner frame {x|y}sep
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{backgrounds}
\tikzset{
background rectangle/.style={
draw=red,
line width=1mm
}
}
\begin{document}
\begin{tikzpicture}[framed, inner frame sep=1cm]
\path node {hello world};
\end{tikzpicture}
\end{document}
答案2
正如 Torbjørn T. 所建议的,我现在current bounding box
在 的末尾使用tikzpicture
。此外,除非您希望在文档边界和框架之间留出一些空间,否则border
应从类中删除选项。standalone
\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{calc}
\newcommand{\MARGIN}{10mm}
\begin{document}
\begin{tikzpicture}
\path node{hello world};
\path[draw,line width=1mm]
($(current bounding box.north west)+(-\MARGIN,\MARGIN)$)
rectangle
($(current bounding box.south east)+(\MARGIN,-\MARGIN)$);
\end{tikzpicture}
\end{document}