文本与盒子


带边框的盒子

带边框的盒子,就是把内容放进一个\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{内容}
\rotateright{内容}
\rotatedown{内容}
把“内容”放进一个\hbox中,然后进行旋转。比如
\Large\bfseries \rotateleft{Left} \rotatedown{Down} \rotateright{Right}

命令

\psscalebox{num1 num2}{内容}
在水平方向上以num1,在垂直方向上以num2为缩放因子缩放“内容”。

命令

\psscaleboxto(x,y){内容}
缩放内容,使其宽度为x,高度加深度为y。比如
\psscaleboxto(4,2){Big and long}


目录