![但是我的秤 pgfkeys 在哪里?](https://linux22.com/image/371905/%E4%BD%86%E6%98%AF%E6%88%91%E7%9A%84%E7%A7%A4%20pgfkeys%20%E5%9C%A8%E5%93%AA%E9%87%8C%EF%BC%9F.png)
我想要访问/tilz/scale
,pgfkeysvalueof 返回一个空字符串。
是否有.store
专用的宏?
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[scale=2]
\node {*\pgfkeysvalueof{/tilz/scale}*} ;
\end{tikzpicture}
\end{document}
答案1
比例尺不是以您期望的形式存储的:它直接传递到pgf
基础层。如果您尝试
\documentclass{article}
\usepackage{tikz}
\pgfkeys{/tikz/scale/.show code}
你得到
> \pgfkeysshower=\long macro:
#1\pgfeov ->\tikz@addtransform {\pgftransformscale {#1}}.
\pgfkeys@code ...keysshower }\show \pgfkeysshower
IE有一个 TikZ 包装器传递给\pgftransformscale
。后者将数据存储在矩阵中:可以使用\pgfgettransformentries
或恢复它\pgfgettransform
(后者在一个宏中包含所有内容):
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\pgfkeys{/tikz/scale = 2}
\pgfgettransformentries\aa\ab\ba\bb\xhsift\yshift
\show\aa
\show\ab
\show\ba
\show\bb
\end{tikzpicture}
\end{document}