假设我有以下 MWE:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{decorations.text}
\begin{document}
\begin{tikzpicture}[node distance=5cm]
\node[draw, rectangle] (a) {A};
\node[draw, rectangle,right of=a] (b) {B};
\draw[postaction=decorate,decoration={raise=5pt, text along path,
text={Foooooooo},text align=center}] (a) to[bend left] (b);
\end{tikzpicture}
\end{document}
我想使用every character
手册(我的版本为第 605 页)记录的选项
设置将应用于装饰文本中每个字符的效果。效果通常是 TikZ 节点选项。
这听起来像是我想要的,即为每个字符应用背景颜色,但我一直无法正确使用这个键,也没有找到任何示例。如何使用此选项?
编辑:好的,text effects/every character/.style={fill=red}
这不是我想要的。它改变了填充颜色,但也改变了字符的位置和方向,现在这些字符看起来真的像单个节点。它们不再沿着路径移动,而是全部直立。有什么办法吗?我希望它们沿着路径移动,但只具有背景。
答案1
该every character
键仅适用于text effects along path
装饰:
\documentclass[tikz, border=5]{standalone}
\usetikzlibrary{decorations.text}
\begin{document}
\begin{tikzpicture}[node distance=2.5cm]
\node[fill=red!50!orange] (a) {A};
\node[right of=a, fill=green!50!orange] (b) {B};
\draw [postaction=decorate, decoration={raise=5pt, text effects along path,
text=FooBar!,text align=center,
text effects/.cd,
text along path,
every character/.style={
fill=blue!50!orange,
text=white,
}}]
(a) to [bend left] (b);
\end{tikzpicture}
\end{document}