如何知道某个包中定义的 pgfkey 是否可以通过宏访问pgfkeysvalueof
,.store
以及如何在不挖掘包代码的情况下找到此宏?或者使用任何其他方法来查找密钥的值。
例如line width
,无法通过该键访问\pgfkeysvalueof{/tilz/line width}
,从而返回空字符串。
\pgfkeys{/tikz/line width/.show code}
得到:
\pgfkeysshower=\long macro:
#1\pgfeov ->\tikz@semiaddlinewidth {#1}.
\pgfkeys@code ...keysshower }\show \pgfkeysshower
l.3 \pgfkeys{/tikz/line width/.show code}
该如何解释这一点?
在问题中但是我的秤 pgfkeys 在哪里?使用\pgfkeys{/tikz/scale/.show code}
给出:
> \pgfkeysshower=\long macro:
#1\pgfeov ->\tikz@addtransform {\pgftransformscale {#1}}.
\pgfkeys@code ...keysshower }\show \pgfkeysshower
但这不是\pgftransformscale {#1}
所使用的,而是:
\pgfgettransformentries\aa\ab\ba\bb\xhsift\yshift
如何根据\pgfkeys{/tikz/scale/.show code}
结果猜测?
我想要一种通用的方法来处理现有的 pgfkeys。
答案1
该pgfkeys
包不会自动将所有密钥值存储在任何地方。因此,没有通用的方法来恢复它们:这将取决于每个密钥如何被附加到它的代码处理。(有些密钥可能无法恢复。)