带边框的盒子,就是把内容放进一个\hbox中,再用一个Postscript帧(在本篇我们称为边框) 包围它。所以它们是复合对象,而不是纯对象。除了“\psframe”对象的参数,还有下列参数:
命令
\psframebox*[参数]{内容}用“\psframe”画一个简单的边框,如果带“*”号,边框将用“fillcolor”填充。 比如
\pspolygon[fillcolor=gray,fillstyle=crosshatch*](0,0)(3,0)(3,2)(2,2)
\rput(2,1){\psframebox*[framearc=.3]{Label}}
命令
\psdblframebox*[参数]{内容}绘制一个双线边框。比如
\psdblframebox[linewidth=1.5pt]{%
\parbox[c]{6cm}{\raggedright A double frame is drawn
with the gap between lines equal to \texttt{doublesep}}}
命令
\psshadowbox*[参数]{内容}绘制一个带阴影的边框。比如
\psshadowbox{\textbf{Great Idea!!}}
命令
\pscirclebox*[参数]{内容}绘制一个圆,盒子比圆稍大。比如
\pscirclebox{\begin{tabular}{c} You are \\ here \end{tabular}}
命令
\cput*[参数]{旋转角度}(x,y)内容}组合了“\pscirclebox”和“\rput”的功能,看起来就像
\rput{旋转角度}(x0,y0){\pscirclebox*[参数]{内容}}比如
\cput[doubleline=true](1,.5){\large $K_1$}
命令
\psovalbox*[参数]{内容}绘制一个椭圆。比如
\psovalbox[boxsep=false,linecolor=darkgray]{\$13.99}
命令
\psdiabox*[参数]{内容}绘制一个菱形。比如
\psdiabox[shadow=true]{\Large\textbf{Happy?}}
命令
\pstribox*[参数]{内容}绘制一个三角形,三角形顶点的朝向由参数
trimode=*U/D/R/L设置。如果有“*”号,会绘制一个等边三角形,否则是一个面积最小的等腰三角形。 比如
\pstribox[trimode=*U]{\Huge Begin}
命令
\clipbox[dim]{内容}把“内容”放进一个\hbox中,在距离盒子dim远处,沿着这个盒子的边界裁剪“内容”, dim的缺省值为0pt。
命令
\psclip{裁剪路径}沿着“裁剪路径”裁剪“内容”。比如
内容
\endpsclip
\parbox{4.5cm}{%
\psclip{\psccurve[linestyle=none](-3,-2)
(0.3,-1.5)(2.3,-2)(4.3,-1.5)(6.3,-2)(8,-1.5)(8,2)(-3,2)}
“One of the best new plays I have seen all year: cool, poetic,
ironic \ldots” proclaimed \emph{The Guardian} upon the London
premiere of this extraordinary play about a Czech director and
his actress wife, confronting exile in America.\vspace{-1cm}”
\endpsclip}
命令
\rotateleft{内容}把“内容”放进一个\hbox中,然后进行旋转。比如
\rotateright{内容}
\rotatedown{内容}
\Large\bfseries \rotateleft{Left} \rotatedown{Down} \rotateright{Right}
命令
\psscalebox{num1 num2}{内容}在水平方向上以num1,在垂直方向上以num2为缩放因子缩放“内容”。
命令
\psscaleboxto(x,y){内容}缩放内容,使其宽度为x,高度加深度为y。比如
\psscaleboxto(4,2){Big and long}