TikZ:定义一种在文本周围放置光晕/轮廓的节点样式

TikZ:定义一种在文本周围放置光晕/轮廓的节点样式

如何按照建议使用轮廓包在文本周围添加光晕在这个答案中在许多节点中定义一种样式?

平均能量损失

\documentclass[tikz]{standalone}

\usepackage[outline]{contour} %halo around text
%https://tex.stackexchange.com/questions/18472/tikz-halo-around-text
\contourlength{1.2pt}

\usetikzlibrary{patterns}

\begin{document}

    \begin{tikzpicture}[halo text node/.style={circle, draw, pattern=north east lines}]

    \node [halo text node] {\contour{white}A};

    \end{tikzpicture}

\end{document}

结果

MWE 结果

我想要的是包含一个tikzpicture类似于形式的选项,halo text node/.style{...,text=\contour{white}}而不是\contour{white}{...}在每个节点内使用。

答案1

这并不能回答您的问题(因为我不知道如何应用于\contour节点内容)但为您提供了另一种方法来定义contour text以节点内容作为参数的样式。

\documentclass[tikz]{standalone}
\usetikzlibrary{patterns}
\usepackage[outline]{contour}
\contourlength{1.2pt}
\tikzset{
  contour text/.style={node contents={\contour{white}{#1}}},
  halo text node/.style={circle, draw, pattern=north east lines}
}
\begin{document}
  \tikz\node[halo text node, contour text=ABC];
\end{document}

在此处输入图片描述

笔记:

  • 对我来说,这与 XeLaTeX 不兼容。
  • 另一种可能性是不使用contour pdfrender或者在纯 TikZ 中重新定义轮廓的动作(在打印之前多次移动不同颜色的文本)。

相关内容