&size(24){''rectbox環境''};
 テキストを枠で囲みます。
 枠線は tpic-specials で描画されます。
 枠線を Post Script で描画する EMpsrectbox環境もあります。

#contents
#br
*定義されているスタイルファイル [#uc250ae8]
emathPb.sty
*書式 [#syosiki]
 \begin{rectbox}[#1]
 .....~
 \end{rectbox}

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

>
//[[allinethickness>#allinethickness]]~
[[backgroundcolor>#bgcolor]]~
[[bitem>#bitem]]~
[[bitempos>#bitem]]~
[[framecolor>#framecolor]]~
[[framelinewidth>#framelinewidth]]~
[[hsep>#hvsep]]~
[[hvsep>#hvsep]]~
[[item>#item]]~
[[itempos>#item]]~
[[LRonly>#LRonly]]~
[[Lonly>#Lonly]]~
[[pos>#pos]]~
[[rectboxoct>#oval]]~
[[rectboxoval>#oval]]~
[[rectboxparindent>#parindent]]~
[[rectboxWidth>#width]]~
[[rectboxwidth>#width]]~
[[sensyu>#sensyu]]~
[[tate>#tate]]~
[[vsep>#hvsep]]~

 \rectboxhrule

枠を[[上下に分割する横線>#rectboxhrule]]を引きます。

*例 [#q5c73081]
**基本例 [#ofe24f72]
 rectbox環境内の文を
   長方形の枠
 で囲みます。
#ref(rectbox01.png)
CENTER:&ref(rectbox01p.tex,,上のソースリスト);
**枠内のテキスト部と枠線との間隔 − [hsep=..,vsep=..,hvsep=..] オプション [#hvsep]
枠内のテキスト部と枠線との間隔は \fboxsep に従います。
これを変更するには,\fboxsep を変更すればよいわけではありますが,
\fbox などにも影響を及ぼしますから,rectbox環境独自の変更法を用意してあります。

 まずは,左右の罫線とテキスト部との間隔です。[hsep=..]の右辺値は単位つきの長さです。
#ref(hsep1.png)
 上下の罫線との間隔変更は [vsep=..] オプションです。
#ref(vsep1.png)
 もちろん,両者を併用することも出来ますが
#ref(hvsep1.png)
 両者が同じ長さのときは [hvsep=..] オプションでまとめて指定できます。
#ref(hvsep2.png)
**段落先頭のインデント − [rectboxparindent=..]オプション [#parindent]
rectbox環境は,実質 minipage環境です。したがって段落先頭のインデントはつきません。~
必要な場合は[rectboxparindent=..]オプションを用います。
#ref(rectboxparindent01.png)
-このオプションは,当該環境に対してのみ働く局所的オプションです。~
もっと広範囲に有効とするには,[[\rectboxparindentコマンド>rectboxparindent]]を用います。
**上見出し − [item=..,itempos=..] オプション [#item]
 罫線枠上辺に見出し文字列を配置するためのオプションが
[item=..]です。
#ref(item1.png)
 見出し配置位置を変更するオプションが [itempos=.] です。
#ref(itempos1.png)
 見出しに背景色をつけたければ,\colorbox コマンドを利用します。
#ref(item02.png)
**下見出し − [bitem=..,bitempos=..] オプション [#bitem]
罫線枠下辺に見出し文字列を配置するためのオプションが
[bitem=..]です。
#ref(bitem1.png)
下見出し配置位置を変更するオプションが [bitempos=.] です。
#ref(bitempos1.png)
上下に見出しをつけることも可能です。
#ref(bitem2.png)
**枠線の太さ指定 − [framelinewidth=..] オプション [#framelinewidth]
枠線の太さを指定するオプションが [framelinewidth=..] オプションです。
右辺値は単位を伴う長さです。
 下の例では,枠線の太さは 1pt です。
 なおデフォルトは [framelinewidth=0.3pt] に相当します。
#ref(framelinewidth01.png)
-枠線を太くすると,四隅における「欠け」が気になるでしょう。~
その場合は,[[EMpsrectbox環境]]に移行することをお勧めします。
-[allinethickness=..]オプションも使用可能ですが,環境内の zahyou環境などに影響します。
#ref(framelinewidth02.png)
**枠線の線種指定 - [sensyu=..]オプション [#sensyu]
枠線を破線・鎖線にするオプションが [sensyu=..] です。
右辺値は \hasen などです。
#ref(hasen1.png)
#ref(namisen1.png)
**枠線色指定 − [framecolor=..] オプション [#framecolor]
枠線に色をつけるオプションです。
#ref(framecolor1.png)
-ただし,tpic-specials での color は,dvi-ware に依存します。~
dvipdfmx は対応していません。~
対応策は~
  dvipdfm を用いる~
あるいは~
  [[EMpsrectbox環境]]を用います。
**背景色指定 − [backgroundecolor=..] オプション [#bgcolor]
テキスト部に背景色をつけるオプションです。
#ref(bgcolor1.png)
-ただし,tpic-specials での color は,dvi-ware に依存します。~
dvipdfmx は対応していません。~
対応策は~
  dvipdfm を用いる~
あるいは~
  [[EMpsrectbox環境]]を用います。
**横幅指定 − [rectboxwidth=..,rectboxWidth=..] オプション [#width]
枠の横幅は,その時点の \linewidth で,横いっぱいに広がります。~
これを制限するオプションです。

[rectboxwidth=..] がテキスト部の横幅を指定するのに対し,~
[rectboxWidth=..] は枠の横幅を指定します。
#ref(width1.png)
**ベースライン − [pos=..] オプション [#pos]
rectbox環境は,実質 minipage環境です。~
従ってそのベースラインは,minipage環境のベースラインであり,
デフォルトは c (中央)となります。
#ref(pos00.png)
rectbox環境は横いっぱいに広がりますから,ベースラインが問題となることはありません。~
ただし,何らかの状況で,他と横に並ぶことがあると,ベースラインを他とそろえる必要が生じます。~
下では,EMminipages環境を用いて,ミニページを横に並べています。~
左は rectbox環境,右は通常のテキストです。
左のベースライン(赤)と,右のベースライン(黒)が一致していますが......~
#ref(pos01.png)
emathパッケージでは,minipage環境のベースラインを変更するには,pos=. オプションを用いています。
#ref(pos02.png)
**縦の長さ指定 − [tate=..] オプション [#tate]
枠の縦長を指定します。
#ref(tate01.png)
rectbox環境内に記述されたものは,上下の中央に配置されます。~
これを上または下に寄せるには,\vfill を用います。
#ref(tate02.png)
-tate=.. オプションは,emathPb.sty 2007/10/29 以降で有効です。
**上下に分割する横線 − \rectboxhrule [#rectboxhrule]
枠を上下に分割する横線を引きます。
#ref(hrule01.png)
tate=.. オプションを併用し,\vfill を用いる例です。
#ref(hrule02.png)
-\rectboxhrule コマンドは rectbox内でのみ使用可能です。
-\rectboxhrule コマンドは,emathPb.sty 2007/11/14 以降で有効です。
**枠の形状 − [rectboxoval=..,rectboxoct=..] オプション [#oval]
rectbox環境の枠罫線は長方形で,四隅は直角の折れ線です。
この形状を変更するオプションを紹介します。

まずは,四隅を四分円にするのオプションが [rectboxoval=..] です。
右辺値は四分円の半径(単位を伴った長さ)です。
#ref(oval1.png)
このとき,左右・上下罫線とテキスト部の間隔は,~
rectboxoval=.. の右辺値となります。~
ただし,hsep=.., vsep=.., hvsep=.. オプションが指定されたときは
その指定が優先されます。
#ref(oval2.png)
見出しをつける item=.. オプションなどとも併用できることは当然です。
#ref(oval3.png)
次に,四隅から直角二等辺三角形を切り取るオプションが [rectboxoct=..] です。
#ref(oct1.png)
**左右の枠線のみ − [LRonly] オプション [#LRonly]
 枠罫線の上下を描画せず,左右の側線のみを描画するオプションが [LRonly] です。
 下では,その部分に左インデントをつけるため,jquote環境も用いています。
#ref(LRonly01.png)
 さらに,[rectboxoval=..]オプションを付加すれば,左右罫線の両端は四分円となります。
 もちろん,allinethickness, hsep, vsep オプションも有効です。
#ref(LRonly02.png)
**左の枠線のみ − [Lonly] オプション [#Lonly]
 左の側線のみを描画するオプションが [Lonly] です。
#ref(Lonly01.png)
**二重枠 (rectbox環境のネスト) [#tae1a931]
 rectbox環境の中に rectbox環境を配置することで,二重枠の囲みを作ることが出来ます。
 枠の間隔は,デフォルトでは \fboxsep ですが,外側の rectbox環境に対する hvsepオプションなどで変更可能です。
 ただし,外側の rectbox環境に対して hvsep オプションで行った変更は,内側の rectbox環境にも影響を及ぼします。
#ref(doublebox01.png)
 外側の罫線枠を太くしています。そのためのオプション
    [allinethickness=1pt] 
 を外側の rectbox環境に附加していますが,これが内側の rectbox環境にも影響を及ぼします。
 従って,内側の rectbox環境に対しても [allinethickness=..] オプションが必要です。
#ref(doublebox02.png)
 コーナーを丸くする [rectboxoval=..] オプションを附加してみました。
#ref(doublebox04.png)
-罫線を太くしたり,四分円と線分を接続したりすると,接続部が気になるという方には~
[[EMpsrectbox環境]]への移行をお勧めします。
**傍注 [#x9179dba]
 rectbox環境内では,\marginparコマンドは使用できません。
 代えて,\MigiRangaiコマンドを用います。
CENTER:&ref(boutyuu01p.tex,,下のソースリスト);
#br

#ref(boutyuu01.png)
-ただし,このコマンドは emathBk.sty で定義されていますから,それを読み込んでおく必要があります。
-傍注記号を付与するなど,細かいことは[[\MigiRangaiのページ>MigiRangai]]をご覧ください。
-上の例(画像)では,rectbox環境の枠線の他に,
本文領域・傍注領域を示す枠線も表示してあります。
*注意事項 [#jcaaa11f]
+ ページをまたぐことは出来ません。~
ページをまたぐには,[[breakrectbox環境]]を用います。
+ rectbox環境は,tpic-specials を用いて枠線を描画していますが,~
picture( zahyou )環境内に配置する必要はありません。
[[掲示板 No.7235 参照 >http://hpcgi3.nifty.com/emath/treebbs.cgi?all=7235&s=7235]]
+ rectbox環境は,内部で list環境を呼び出します。したがって edaenumerate環境内に配置することは出来ません。~
これを回避するために [[\useitemfalse>useitemfalse]]コマンドを使う方法もありますが.....
*関連事項 [#q246711c]
[[\Rectbox>Rectbox]]~
[[EMpsrectbox環境]]~
[[breakrectbox環境]]
RIGHT:&counter;


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