TikZ:绘制部分填充的文本节点,即内部带有文本的进度条

TikZ:绘制部分填充的文本节点,即内部带有文本的进度条

我想在一行文本周围绘制一个节点,只填充左侧部分。“左侧部分”的大小将由某个分数指定。实际上,这将是一个带有文本的进度条。

\documentclass{article} \usepackage{tikz} \begin{document}
 \begin{tikzpicture}

 \draw (0, 0) node[draw, fill = green!10, fill fraction = .7] {Some
 text};

 \end{tikzpicture}
 \end{document}

当然,我虚构的选项“填充分数”会被忽略,该选项应该表示只应填充最左边的 70%。

答案1

这是如此的残酷,以至于Z 忽略了你,我必须做点什么。;-)

\documentclass{article} 
\usepackage{tikz}
\usetikzlibrary{calc} 
\begin{document}
 \begin{tikzpicture}[fill fraction/.style n args={2}{path picture={
 \fill[#1] (path picture bounding box.south west) rectangle
 ($(path picture bounding box.north west)!#2!(path picture bounding box.north
 east)$);}}]

 \draw (0, 0) node[draw, fill fraction={green!10}{0.7}] {Some
 text};
 \draw (4, 0) node[circle,draw, fill fraction={green!10}{0.7}] {Some
 other text};
 \end{tikzpicture}
\end{document}

enter image description here

相关内容