テキストを枠で囲みます。
rectbox 環境が,枠線を tpic-specials で描画するのに対し,
EMpsrectbox 環境は PostScript で描画します。
その効用は,
  枠線を太くしたとき
  コーナーを四分円にしたとき
など,綺麗につながる,というところにあります。
 

定義されているスタイルファイル

emathPs.sty

ただし,下請けが emathPb.sty にありますから
 \usepackage{emathPs}
 \usepackage{emathPb}
として用います。

書式

\begin{EMpsrectbox}[#1]<#2>
.....
\end{EMpsrectbox}

#1 key=val をコンマ区切りで並べます。有効な key は

backgroundcolor
bitem
bitempos
borderwidth
dash
debug
framecolor
hsep
hvsep
item
itempos
linewidth
Lonly
LRonly
rectboxoct
rectboxoval
rectboxparindent
rectboxWidth
rectboxwidth
remake
vsep
wave

基本例

EMpsrectbox01.png

[debug] オプション

emathPs.sty の仕様として,いったん作成された EPS ファイルは再描画されません。 したがって,枠内のテキストが変更され行数に増減があっても枠は前のままです。 基本例で,テキスト部が修正され,長くなったとしましょう。

EMpsrectbox-debug1.png

テキスト部と枠線(EPS ファイル)は,左下を揃えて配置されますから, 長くなったテキスト部の先頭行は枠の上に飛び出しています。

枠を作り直すには,[debug]オプションをつけます。

EMpsrectbox-debug2.png

[remake] オプション

debug オプションの欠点は,画像を最後に読み込むため,テキストの上に画像がかぶさります。 背景色を付けた場合は,致命的です。

remake00.png

この点を改良したものが [remake] オプションです。

remake01.png

[hsep=..,vsep=..,hvsep=..] オプション − 枠内のテキスト部と枠線との間隔

枠内のテキスト部と枠線との間隔は \fboxsep に従います。 これを変更するには,\fboxsep を変更すればよいわけではありますが, \fbox などにも影響を及ぼしますから,EMpsrectbox環境独自の変更法を用意してあります。

まずは,左右の罫線とテキスト部との間隔です。[hsep=..]の右辺値は単位つきの長さです。

EMpsrectbox-hsep1.png

上下の罫線との間隔変更は [vsep=..] オプションです。

EMpsrectbox-vsep1.png

もちろん,両者を併用することも出来ますが

EMpsrectbox-hvsep1.png

両者が同じ長さのときは [hvsep=..] オプションでまとめて指定できます。

EMpsrectbox-hvsep2.png

[rectboxparindent=..]オプション − 段落先頭のインデント

EMpsrectbox環境は,実質 minipage環境です。したがって段落先頭のインデントはつきません。
必要な場合は[rectboxparindent=..]オプションを用います。

rectboxparindent01.png

[item=..,itempos=..] オプション − 上見出し

罫線枠上辺に見出し文字列を配置するためのオプションが [item=..]です。

EMpsrectbox-item1.png

見出し配置位置を変更するオプションが [itempos=.] です。

EMpsrectbox-itempos1.png

[bitem=..,bitempos=..] オプション − 下見出し

罫線枠下辺に見出し文字列を配置するためのオプションが [bitem=..]です。

EMpsrectbox-bitem1.png

下見出し配置位置を変更するオプションが [bitempos=.] です。

EMpsrectbox-bitempos1.png

上下に見出しをつけることも可能です。

EMpsrectbox-bitem2.png

[borderwidth=..] オプション− 枠線の一部が削られることへの対策

EMpsrectbox環境は,グラフィックスで枠線を描画しています。 グラフィックスは dvi-ware に依存します。 再三述べていますが,emath では,
  platex + dvipsk (+Distiller)
で得られる,PS or PDF を基準としています。次の例において

EMpsrectbox-oval1.png

dvipdfmx で作成した filePDF をごらん頂くと,左辺と下辺罫線の太さが半分に削られていることがお分かりでしょう。
(上述の dvipsk(+Distiller) では,そのようなことはおきません。)
この現象に対応するために,[borderwidth=..] オプションを用意しました。 右辺値は,罫線の太さの 1/2 です。デフォルトでは,罫線の太さは 1pt ですから
  borderwidth=0.5pt
と指定することとなります。 その結果の filePDF では枠線の一部が削られる 現象は回避されています。

[linewidth=..,dash=..,wave=..] オプション − 枠線の形状指定

  1. 枠線の太さを指定するオプションが [linewidth=..] オプションです。
    右辺値は \setlinewidth の引数と同じです。
    すなわち,単位を伴う長さですが,無名数の場合,単位は 0.1pt とみなされます。
    下の例では,枠線の太さは 2pt です。 なおPostScript のデフォルト値は [linewidth=1pt] に相当します。

    #ref(): File not found: "EMpsrectbox-linewidth1.png" at page "EMpsrectbox環境"

  2. 枠線を破線・鎖線にするオプションが [dash=..] です。 右辺値には `,' が含まれますから,{...} で括っておく必要があります。
    EMpsrectbox-dash1.png
  3. 枠線を波線にするオプションが [wave=..] です。
    右辺値は,\setwavesize コマンドの引数ですが,先頭に`*'を附加することが出来ます。
    その場合は,波線描画コマンドは \Drawwave ではなく,\Drawwave* コマンドとなります。
    右辺値を省略した場合は
      *{2mm}{.3mm}
    とみなされます。
    wave01.png
    • このオプションを用いるには emathPs.sty 2007/07/19 以降が必要です。
    • 他のオプションとの併用例です:
      wave02.png
    • wave オプションは,次のオプションとの併用は出来ません。
        rectboxoval, rectboxoct, Lonly, LRonly

[framecolor=..] オプション − 枠線色指定

枠線に色をつけるオプションです。

EMpsrectbox-framecolor1.png

[backgroundecolor=..] オプション − 背景色指定

テキスト部に背景色をつけるオプションです。

EMpsrectbox-bgcolor1.png
[debug] オプションをつけたままですと,背景色がテキストの上にかぶさります。
EMpsrectbox-bgcolor2.png
最終的には [debug] オプションは除去してタイプセットする必要があります。

[rectboxWidth=..,rectboxwidth=..] オプション − 横幅指定

枠の横幅は,その時点の \linewidth で,横いっぱいに広がります。 これを制限するオプションです。

[rectboxwidth=..] がテキスト部の横幅を指定するのに対し, [rectboxWidth=..] は枠の横幅を指定します。

EMpsrectbox-width1.png

[rectboxoval=..,rectboxoct=..,LRonly,Lonly] オプション − 枠の形状

EMpsrectbox環境の枠罫線は長方形で,四隅は直角の折れ線です。 この形状を変更するオプションを紹介します。

まずは,四隅を四分円にするのオプションが [rectboxoval=..] です。 右辺値は四分円の半径(単位を伴った長さ)です。

EMpsrectbox-oval1.png

このとき,左右・上下罫線とテキスト部の間隔は, rectboxoval=.. の右辺値となります。 ただし,hsep=.., vsep=.., hvsep=.. オプションが指定されたときは その指定が優先されます。

EMpsrectbox-oval2.png

見出しをつける item=.. オプションなどとも併用できることは当然です。

EMpsrectbox-oval3.png

次に,四隅から直角二等辺三角形を切り取るオプションが [rectboxoct=..] です。

EMpsrectbox-oct1.png

[LRonly] オプションは左右の罫線のみを描画します。

EMpsrectbox-LRonly1.png

[Lonly] オプションは左罫線のみを描画します。

EMpsrectbox-Lonly1.png

二重枠 (EMpsrectbox環境のネスト)

EMpsrectbox環境の中に EMpsrectbox環境を配置することで,二重枠の囲みを作ることが出来ます。
枠の間隔は,デフォルトでは \fboxsep ですが,外側の EMpsrectbox環境に対する hvsepオプションなどで変更可能です。
ただし,外側の EMpsrectbox環境に対して hvsep オプションで行った変更は,内側の EMpsrectbox環境にも影響を及ぼします。
doublebox01.png
外側の罫線枠を太くしています。そのためのオプション
   [linewidth=2pt] 
を外側の EMpsrectbox環境に附加していますが,これが内側の EMpsrectbox環境にも影響を及ぼします。
従って,内側の EMpsrectbox環境に対しても [linewidth=..] オプションが必要です。
doublebox02.png
コーナーを丸くする [rectboxoval=..] オプションを附加してみました。
doublebox04.png
見出しをつけることは可能ではありますが,厄介です。
doublebox03.png

注意事項

  1. ページをまたぐことは出来ません。

関連事項

\EMpsRectbox
EMpsitemrectbox環境?
rectbox環境

12027

トップ   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS