节点锚点距离节点文本太远

节点锚点距离节点文本太远

我使用循环为线交叉点写入多个标签,但可能出于比例或其他原因,标签距离交叉点有点太远。我无法手动修复每个标签,因为我使用的是循环,而添加固定校正意味着错误会通过循环传播,最后的标签会完全消失。

\documentclass[11pt,border=5pt]{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}

\draw (0,1) -- (2,1);
\draw (1,0) -- (1,2);

\node [anchor=north west] at (1,1) {Some text};
\node [anchor=north east] at (1.13,1.13) {Some text}; % Manual fix applied

\end{tikzpicture}
\end{document}

这是我的(极端)MWE 和我的实际应用。

MWE 示例 示例图像

我想知道是否有办法移动锚点,使其稍微位于文本边界框内或类似的东西内。

答案1

您可以使用inner sep甚至负值来移动节点的文本,同时保持锚点不变。或者,outer sep如果您使用边框,则使用会保持文本填充的 。

如果您只想水平或垂直应用此移位,请使用inner xsepinner ysep(或outer xsep或)。outer ysep

但我不确定这是否适用于你的情况。

\documentclass[11pt,border=5pt]{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}

\draw (0,1) -- (2,1);
\draw (1,0) -- (1,2);

\node [anchor=south east, outer xsep=-10pt, draw=red] at (1,1) {Some text};

\node [anchor=north west, inner sep=-5pt] at (1,1) {Some text};

\node [anchor=north east, inner sep=0pt] at (1,1) {Some text}; % Now (almost) overlapping with the following node
\node [anchor=north east] at (1.13,1.13) {Some text}; % Manual fix applied
    
\end{tikzpicture}
\end{document}

在此处输入图片描述

相关内容