EMframed環境
ページをまたぐこともできる rectbox環境です。
定義されているスタイルファイル †
EMframed.sty
- graphicx.sty が必須です。適切なドライバを指定して,EMframed.sty より前に読み込んでおきます。
- ベースに,\EMfbox コマンドを用いますから,emathPb.sty も必須です。
書式 †
\begin{EMframed}[#1]
.....
\end{EMframed}
- backgroundcolor
- 背景色を指定します。
- bitem
- 枠下辺に見出しを付加します。
- bitempos
- 枠下辺の見出し位置を指定します。
- framecolor
- 枠線の色を指定します。
- framethickness
- 枠線の太さを指定します。
- hasenLG
- 枠線を破線で描画します。
- hsep
- 左右の枠線と枠内テキストとの間隔を指定します。
- hvsep
- 枠線と枠内テキストとの間隔を指定します。
- item
- 枠上辺に見出しを付加します。
- itempos
- 枠上辺の見出し位置を指定します。
- LRonly
- 左右の罫線のみを描画します。
- Lonly
- 左罫線のみを描画します。
- rectboxparindent
- 枠内テキストについて,段落冒頭の字下げを指定します。
- shade
- 枠線右・下に影をつけます。
- vsep
- 上下の枠線と枠内テキストとの間隔を指定します。
基本例 †
ページをまたぐことができる枠囲みです。
- 上の図はページをまたぐことを明示していますが,この後の図は一ページに収まったものを示しています。
もちろんページをまたぐことは可能ですが,そのような図を用意することは面倒なので手抜きです。
枠内のテキスト部と枠線との間隔 --[hsep=..,vsep=..,hvsep=..] オプション †
枠内のテキスト部と枠線との間隔は \fboxsep に従います。
- これを変更するには,\fboxsep を変更すればよいわけではありますが,
枠内テキストに含まれる \fbox などにも影響を及ぼしますから,EMpsrectbox環境独自の変更法を用意してあります。
- まずは,左右の罫線とテキスト部との間隔です。[hsep=..]の右辺値は単位つきの長さです。
- 上下の罫線との間隔変更は [vsep=..] オプションです。
- もちろん,両者を併用することも出来ますが
- 両者が同じ長さのときは [hvsep=..] オプションでまとめて指定できます。
段落先頭のインデント -- [rectboxparindent=..]オプション †
EMframed環境は,実質 minipage環境です。したがって段落先頭のインデントはつきません。
- 必要な場合は[rectboxparindent=..]オプションを用います。
- このオプションは,当該環境に対してのみ働く局所的オプションです。
もっと広範囲に有効とするには,\rectboxparindentコマンドを用います。
見出し †
枠線上に見出し文字列を配置します。
上見出し -- [item=..,itempos=..] オプション †
罫線枠上辺に見出し文字列を配置するためのオプションが
[item=..]です。右辺値は,見出し文字列です。
- 見出し配置位置を変更するオプションが [itempos=.] です。
右辺値は
l: 左(デフォルト), c: 中央, r: 右
のいずれかです。
下見出し -- [bitem=..,bitempos=..] オプション †
罫線枠下辺に見出し文字列を配置するためのオプションが
[bitem=..]です。
- 下見出し配置位置を変更するオプションが [bitempos=.] です。
デフォルトの位置は,r(右)です。
- 上下に見出しをつけることも可能です。
枠線の修飾 †
枠線の太さ指定 --[framethickness=..] オプション †
枠線の太さを指定するオプションが [framethickness=..] オプションです。
右辺値は 単位を伴う長さです。
- デフォルト値は 0.4pt です。
- linethickness も同義の key として使用可能ではありますが,
枠内の記述部に対しても働きますから,枠内に zahyou環境があったりすると影響が出ます。
破線指定 --[hasenLG=..] オプション †
枠線を破線で描画します。
枠線色指定 --[framecolor=..] オプション †
枠線に色をつけるオプションです。
背景色指定 --[backgroundcolor=..] オプション †
テキスト部に背景色をつけるオプションです。
枠のいろいろ †
コーナーを丸く †
コーナーを丸くするのは,TeX では困難です。\oval と直線の接続がギグシャクしてしまいます。
PostScript を用いる EMpsframed環境
あるいは
pict2e.sty を用いる EMpIIeframed環境
の使用をお勧めします。
breakpsrectbox環境
もありますが,行ごとに eps ファイルを作りますから,dvi-ware によっては重い処理となります。
左右の罫線のみ --[LRonly] オプション †
[LRonly] オプションは左右の罫線のみを描画します。
(天地の罫線は描画されません。)
左罫線のみ --[Lonly] オプション †
[Lonly] オプションは左罫線のみを描画します。
二重枠 †
EMframed環境をネストさせることはできません。
二重枠を作るには,\emFrameCommand を 二重の \EMfbox とします。
- 上の方法では,再定義が有効な範囲すべての EMpsframed環境が二重枠となります。
再定義を局所的とするには,[framecmd=..] オプションを用いるのもあります。
- framecmd=.. の右辺値は,EMframed環境のマクロ定義内に配置されます。
従って,引数表示は #1 ではなく,##1 としなければなりません。
雑(1) †
EMframed環境の元になっている framed環境では,コマンド
\emFramedCommand
を切り替えることで,いろいろな形状の枠を使用できるようにしてあります。
デフォルトは \fbox です。
EMframed環境もその仕掛けをそのまま借用していますが
デフォルトを \EMfbox としています。
\emFramedCommand を切り替えることで,好みの囲みを作ることができます。
次の例は,藤田眞作氏の「LaTeX2e コマンドブック」で使われている節見出し枠をまねてみました。
奥村先生の Q&A #53244 からのスレッドで話題になりました。
関連事項 †
注意事項 †
2625