![TikZ 图片之间没有垂直间距](https://linux22.com/image/336702/TikZ%20%E5%9B%BE%E7%89%87%E4%B9%8B%E9%97%B4%E6%B2%A1%E6%9C%89%E5%9E%82%E7%9B%B4%E9%97%B4%E8%B7%9D.png)
我希望两个 TikZ 图片之间绝对没有垂直空间。我可以使用例如,\\[-1pt]
但我不知道 1pt 是否真的是精确的值...(所以我从代码中删除了它)!
这个垂直空间从何而来?我希望这两个盒子有联系!
\documentclass{article}
\usepackage{tikz}
\setlength{\parindent}{0pt}
\setlength\textwidth{5cm}
\begin{document}
\begin{tikzpicture}[every node/.style={inner sep=2,outer sep=0}]
\node[draw,text width=\textwidth] {A};
\end{tikzpicture} %\\[-1pt]
\begin{tikzpicture}[every node/.style={inner sep=2,outer sep=0}]
\node[draw,text width=\textwidth] {B};
\end{tikzpicture}
\end{document}
答案1
尽管使用\offinterlineskip
,如希瑟建议,在某种意义上会起作用,关闭整个文档的行间跳过可能不是您想要的:
相反,您可能只想针对这种特殊情况将其关闭。在这种情况下,您要么需要限制范围\offinterlineskip
并确保垂直间距正确,要么使用更像胡桃夹子而不是大锤的东西。
在这种情况下,\nointerlineskip
效果很好,只要你注意到两张图片之间的段落间隔是必需的。如果没有它,您将收到编译错误。还有其他方法可以避免这种情况,但段落分隔在这里不会造成任何损害,而且似乎是一个简单的解决方案。
\documentclass{article}
\usepackage{tikz}
\usepackage{kantlipsum}
\setlength{\parindent}{0pt}
\setlength\textwidth{5cm}
\begin{document}
\kant[1]
\begin{tikzpicture}[every node/.style={inner sep=2,outer sep=0}]
\node[draw,text width=\textwidth] {A};
\end{tikzpicture}
\nointerlineskip
\begin{tikzpicture}[every node/.style={inner sep=2,outer sep=0}]
\node[draw,text width=\textwidth] {B};
\end{tikzpicture}
\kant[2]
\end{document}
答案2
感谢 Christian Hupfer 的评论。
你需要代码
\documentclass{article}
\usepackage{tikz}
\setlength{\parindent}{0pt}
\setlength\textwidth{5cm}
\offinterlineskip
\begin{document}
\centerline{
\begin{tikzpicture}[every node/.style={inner sep=2,outer sep=0}]
\node[draw,text width=\textwidth] {A};
\end{tikzpicture}}
\begin{tikzpicture}[every node/.style={inner sep=2,outer sep=0}]
\node[draw,text width=\textwidth] {B};
\end{tikzpicture}
\end{document}
具体来说,该行\offinterlineskip
。这给出
希望这可以帮助!
再次感谢 Christian Hupfer。