TikZ: Определите стиль узла, который создает ореол/контур вокруг текста

TikZ: Определите стиль узла, который создает ореол/контур вокруг текста

Как создать ореол вокруг текста с помощью пакета Contour, как предлагаетсяв этом ответево многих узлах, определяя стиль?

МВЭ:

\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}

Результат:

Результат МВЭ

Я хочу включить опцию для 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 (перемещать текст несколько раз с использованием другого цвета, прежде чем напечатать его).

Связанный контент