EMbreakrectbox環境
breakrectbox環境
ページをまたぐ rectbox環境です。~
ただし,ページをまたぐ必要がなければ,rectbox環境の使用を推奨します。
中身が1行だけの文章を breakrectbox環境で囲むなどは狂気の沙汰というべきです。
定義されているスタイルファイル †
emathPbb.sty
書式 †
\begin{breakrectbox}[#1]
.....
\end{breakrectbox}
#1 key=val をコンマ区切りで並べます。有効な key は
- backgroundcolor
- 背景色を指定します。
- bitem
- 下部罫線に見出し文字列を配置します。
- bitempos
- 下部罫線に配置する見出し文字列の位置(l:左・c:中・r:(デフォルト)
- framethickness
- 枠線の太さを指定します。
- framecolor
- 枠線に色をつけます。
- hsep
- 左右の縦罫線と枠内テキストとの間隔を指定します。
- hvsep
- 罫線と枠内テキストとの上下・左右の間隔を一括指定します。
- item
- 上部罫線に見出し文字列を配置します。
- itempos
- 上部罫線に配置する見出し文字列の位置(l:左(デフォルト)・c:中央・r:右)を指定します。
- LRonly
- 左右の縦罫線のみを描画します。
- rectboxparindent
- 段落先頭のインデント量を指定します。
- shade
- 枠の右辺・下辺に影をつけます。
- vsep
- 上下の横罫線と枠内テキストとの間隔を指定します。
基本例 †
rectbox環境はページをまたぐことができません。
それを可能としたのが breakrectbox環境です。
- ページをまたぐことができますが,break....sty の仕様として,
一行ごとに切ってその周りに罫線を配置して並べる
という手法がとられていますから,ブロックが大きくなれば処理に時間がかかります。
- いくらなんでも,一行だけの文をこの環境で囲んだらおかしくなった,
などとほざいてはいけません。
rectbox 環境で済ませることができる場面では,その方が断然有利なのです。
- 上の図はページをまたぐことを明示していますが,この後の図は一ページに収まったものを示しています。
もちろんページをまたぐことは可能ですが,そのような図を用意することは面倒なので手抜きです。
枠内のテキスト部と枠線との間隔 --[hsep=..,vsep=..,hvsep=..] オプション †
枠内のテキスト部と枠線との間隔は \fboxsep に従います。
- これを変更するには,\fboxsep を変更すればよいわけではありますが,
枠内テキストに含まれる \fbox などにも影響を及ぼしますから,EMpsrectbox環境独自の変更法を用意してあります。
- まずは,左右の罫線とテキスト部との間隔です。[hsep=..]の右辺値は単位つきの長さです。
- 上下の罫線との間隔変更は [vsep=..] オプションです。
- もちろん,両者を併用することも出来ますが
- 両者が同じ長さのときは [hvsep=..] オプションでまとめて指定できます。
段落先頭のインデント -- [rectboxparindent=..]オプション †
EMpsrectbox環境は,実質 minipage環境です。したがって段落先頭のインデントはつきません。
- 必要な場合は[rectboxparindent=..]オプションを用います。
- このオプションは,当該環境に対してのみ働く局所的オプションです。
もっと広範囲に有効とするには,\rectboxparindentコマンドを用います。
見出し †
枠線上に見出し文字列を配置します。
上見出し -- [item=..,itempos=..] オプション †
罫線枠上辺に見出し文字列を配置するためのオプションが
[item=..]です。右辺値は,見出し文字列です。
- 見出し配置位置を変更するオプションが [itempos=.] です。
右辺値は
l: 左(デフォルト), c: 中央, r: 右
のいずれかです。
下見出し -- [bitem=..,bitempos=..] オプション †
罫線枠下辺に見出し文字列を配置するためのオプションが
[bitem=..]です。
- 下見出し配置位置を変更するオプションが [bitempos=.] です。
デフォルトの位置は,r(右)です。
- 上下に見出しをつけることも可能です。
枠線の修飾 †
枠線の太さ指定 --[framethickness=..] オプション †
枠線の太さを指定するオプションが [framethickness=..] オプションです。
右辺値は 単位を伴う長さです。
- linethickness も同義の key として使用可能ではありますが,
枠内の記述部に対しても働きますから,枠内に zahyou環境があったりすると影響が出ます。
枠線色指定 --[framecolor=..] オプション †
枠線に色をつけるオプションです。
影付き --[shade=..] オプション †
枠線右・下に影をつけるオプションが [shade] です。
- デフォルトでは,影の線幅は 5pt ですが,オプションの右辺値で変更可能です。
- 上見出しをつけることも出来ます。
枠の形状 †
丸コーナー †
四隅を丸くするには,[rectboxoval=..] オプションを用います。
左右の罫線のみ --[LRonly] オプション †
[LRonly] オプションは左右の罫線のみを描画します。
(天地の罫線は描画されません。)
左罫線のみ --[Lonly] オプション †
[Lonly] オプションは左罫線のみを描画します。
- [kagi]オプションをつけると,左罫線の上下を右方向に「折る」ことができます。
二重枠 (breakrectbox環境のネスト) †
breakrectbox環境の中に breakrectbox環境を配置することで,二重枠線の囲みを作ることが出来ます。
- 外側の罫線枠を太くしています。そのためのオプション
[linethickness=1pt]
を外側の rectbox環境に附加していますが,これが内側の rectbox環境にも影響を及ぼします。
従って,内側の rectbox環境に対しても [linethickness=..] オプションが必要です。
背景色指定 --[backgroundecolor=..] オプション †
テキスト部に背景色をつけるオプションです。
- bgcolor も backgroundcolor と同義の key です。
傍注 †
breakrectbox環境内では,\marginparコマンドは使用できません。
代えて,\MigiRangaiコマンドを用います。
- ただし,このコマンドは emathBk.sty で定義されていますから,それを読み込んでおく必要があります。
- 傍注記号を付与するなど,細かいことは\MigiRangaiのページをご覧ください。
- 上の例(画像)では,breakrectbox環境の枠線の他に,
本文領域・傍注領域を示す枠線も表示してあります。
脚注 †
breakrectbox 環境内に付した \footnote は,
breakrectbox が複数ページにまたがる場合,
breakrectbox 環境が終了するページにまとめて出力されます。
注意事項 †
- この環境は,1行ごとに分割して処理をします。
(break... 環境はすべてそうです)
ページをまたぐ必要がなければ,rectbox環境を使用します。
- ページをまたぐという前提ですから,中のテキストは複数行であることが前提です。
極端な使用法として,
中身が1行だけの文を breakrectbox環境で囲むとおかしくなる
などというクレームは論外です。
( rectbox環境を使えばよい,ということ。)
- emathPbb.sty では,「EMbreakrectbox環境」の名前で定義されています。
他のスタイルファイルと競合しない限り,「breakrectbox環境」の名前で使用することができます。
関連事項 †
- 枠のコーナーを丸くするには,
EMpsframed環境 or EMpIIeframed環境
をお勧めします。
- 枠線を破線とするには,
EMpsframed環境 or EMpIIeframed環境
を用います。
5177