PostScript 用に定義する定数とマクロがいくつかあります。
\pstVerb
{
/a {3} def
/b {2} def
}
考えられる場所は3つあります。
- 前文(A)
- 内側
document
だが外側pspicture
(B)。 pspicture
(C)では。
\documentclass[border=15pt,pstricks]{standalone}
% A
\begin{document}
% B
\begin{pspicture}[showgrid](-4,-4)(4,4)
% C
\psellipse(0,0)(!a b)
\end{pspicture}
\end{document}
オプション A と B の場合、次のように不要な空白が生成されました。
しかし、オプションCの場合、
\documentclass[border=15pt,pstricks]{standalone}
\begin{document}
\begin{pspicture}[showgrid](-4,-4)(4,4)
\pstVerb
{ /a {3} def
/b {2} def
}%
\psellipse(0,0)(!a b)
\end{pspicture}
\end{document}
空白は存在しなくなります。
質問
どこで使用すればよいですか\pstVerb
?
答え1
必要な場所で使用できますが、既存の定義を上書きしないように注意する必要があります。内部関数については、すでにいくつかの方法で定義されています/a
。/b
常に少なくとも 2 文字の変数を使用するか、独自の辞書を使用します。
\documentclass[border=15pt,pstricks]{standalone}
\pstVerb{
/aA 3 def
/bB 2 def
}
\pstVerb{
/myDict 2 dict def % define a local dictionary with two variables
myDict begin
/a 3 def
/b 2 def
end
}
\begin{document}
\begin{pspicture}[showgrid](-4,-4)(4,4)
\psellipse(0,0)(! myDict begin a b end )
\psellipse(0,1)(! aA bB )
\end{pspicture}
\end{document}
C の場合、pspicture
すべてがローカルに保持されるため機能します。