如何消除链条中的间隙?

如何消除链条中的间隙?

在下面的代码中,我使用node distance=0outer sep=0将节点无缝地定位在一起。

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{chains}

\begin{document}
\begin{tikzpicture}[
    start chain=going right,
    every node/.style={on chain, fill=black, text=white},
    text height=.8em,
    text depth=.2em,
    node distance=0,
    outer sep=0pt
  ]
  \node {a};
  \node {bc};
  \node {def};
\end{tikzpicture}
\end{document}

但结果仍然存在差距。

节点之间仍留有小间隙

我错过了什么?

答案1

这确实是 PDF 查看程序的问题,而不是 LaTeX 渲染的问题。例如,文档在某些查看器中显示有间隙

  • 表明
  • 扎图拉
  • Firefox 中包含 pdf.js 查看器
  • 适用于 Android 的完美查看器

而在其他方面则没有,尤其是

  • 谷歌驱动器查看器。

解决方法

但您仍然可以将-\pgflinewidth其 用作node distance

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{chains}

\begin{document}
\begin{tikzpicture}[
    start chain=going right,
    every node/.style={on chain, fill=black, text=white},
    text height=.8em,
    text depth=.2em,
    node distance=-\pgflinewidth,
    outer sep=0pt
  ]
  \node {a};
  \node {bc};
  \node {def};
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容