rectbox環境

テキストを枠で囲みます。
枠線は \vrule など tex の機能を用いて描画されます。
枠の横幅は,\linewidth です。
 

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

EMfbox.sty

  • 丸ごとパックなど,emath の古いバージョンでは emathPb.sty で定義されていました。

書式

\begin{rectbox}[#1]
.....
\end{rectbox}
  • #1 key=val をコンマ区切りで並べます。有効な key は
apnzahyou
apnzahyouafter
backgroundcolor
bgcolor
bitem
bitempos
framecolor
framethickness
hasenLG
hsep
hvsep
item
itemmargin
itempos
kagi
labelsep
LRonly
Lonly
pos
rectboxoval
rectboxparindent
shade
shadecolor
tate
TBonly
vsep
\HVsep#1#2
#1
左右枠線と中のテキストとの間隔
#2
上下枠線と中のテキストとの間隔

基本例

rectbox環境内の文を,
  長方形の枠
で囲みます。
横幅は,\linewidth に従います。
rectbox01.png

枠内のテキスト部と枠線との間隔

枠内のテキスト部と枠線との間隔は \fboxsep に従います。 これを変更する方法を述べます。

[hsep=..,vsep=..,hvsep=..] オプション

まずは,左右の罫線とテキスト部との間隔です。[hsep=..]の右辺値は単位つきの長さです。
hsep1.png
上下の罫線との間隔変更は [vsep=..] オプションです。
vsep1.png
もちろん,両者を併用することも出来ますが
hvsep1.png
両者が同じ長さのときは [hvsep=..] オプションでまとめて指定できます。
hvsep2.png

\HVsep コマンド

[hsep=..,vsep=..,hvsep=..] オプションは当該 rectbox環境のみに働く局所的なものです。
広範囲に有効とするには,\HVsep コマンドを用います。
  第1引数に水平方向の間隔
  第2引数に垂直方向の間隔
を与えます。
HVsep01.png
  • [hsep=..,vsep=..,hvsep=..] オプションと併用したときは,[hsep=..,vsep=..,hvsep=..] オプションが優先されます。
    HVsep02.png

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

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

rectboxparindent01.png
  • このオプションは,当該環境に対してのみ働く局所的オプションです。
    もっと広範囲に有効とするには,\rectboxparindentコマンドを用います。

見出し

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

罫線枠上辺に見出し文字列を配置するためのオプションが
  [item=..]です。
item1.png
見出し配置位置を変更するオプションが [itempos=.] です。
itempos1.png
見出しに背景色をつけたければ,\colorbox コマンドを利用します。
item02.png
  • [item=...] の右辺値に,'=' または ',' が含まれる場合は,右辺値全体を{...}と括っておかなければなりません。

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

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

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

bitempos1.png

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

bitem2.png

見出しと枠コーナーとの距離

枠内上部に見出し

  • 見出しを枠内上部に付けるには,rectbox環境が zahyou*環境内にあることを利用します。
    枠の
      左上端点:\LT
      左下端点:\LB
      右上端点:\RT
      右下端点:\RB
    を基準として,zahyou*環境内に記述すべきものを
      psrectbox環境の [apnzahyou=...] オプション に与えます。
    wakunaimidasi01.png
  • 見出し部と本文との間の横罫線を引くのには \Rotateline を用いています。
    \Drawline を用いるのもありますが,こちらは tpic-specials で描画されますから,, dvi-ware に依存します。
    \Rotateline は TeX の \vrule を用いています。
  • 見出しブロックに背景色を付加するには,apnzahyou=.. の右辺値に
      \Nuritubusi{...}
    を記述します。
    wakunaimidasi02.png

枠内左に見出し

  • 枠内左を見出しブロックとすることも同様です。
    この場合,見出し文を \Put で配置することも出来ますが,
    右側本文の1行目と揃えたければ,本文1行目に左に突き出す形で配置するのもあるでしょう。
    wakunaimidasiL01.png

枠コーナーに見出し

  • 枠コーナーに見出しを配置するには,EMpsrectbox環境を用います。

枠線の修飾

枠線の太さ指定 − [framethickness=..] オプション

枠線の太さを指定するオプションが [framethickness=..] オプションです。 右辺値は単位を伴う長さです。

下の例では,枠線の太さは 1pt です。
なおデフォルトは [framethickness=0.3pt] に相当します。
framethickness01.png

枠線を破線で − [hasenLG=..] オプション

枠線を破線とするには,[hasenLG=..] オプションを用います。

hasenLG01.png

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

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

framecolor1.png

横仕切り線

枠内で,横幅一杯の仕切り線を引くには,\rectboxsikiri コマンドを用います。
rectboxsikiri01.png

影付き

枠線右・下に影をつけるオプションが [shade] です。
shade01.png
  • デフォルトでは,影の線幅は 5pt ですが,オプションの右辺値で変更可能です。
    shade02.png
  • 上見出しをつけることも出来ます。
    shade03.png
  • 影の部分の色を指定するには,[shadecolor=..] オプションを用います。
    shadecolor01.png

枠の形状

丸コーナー − [rectboxoval=..] オプション

枠の四隅を四分円で描画します。
ただし,この機能は,tpic-specials を用います。
また,四隅の四分円と,水平・垂直罫線との接続に難があります。
気になる,という場合は,PostScript を用いる
  EMpsrectbox環境,EMpsframed環境,or EMpIIeframed環境
などの利用をご検討ください。
oval01.png
  • tpic-specials を用いますから,emathPh.sty を読み込んでおくことが必要です。
  • このオプションを指定した場合は,罫線と中のテキストとの間隔は rectboxoval=.. の 右辺値となります。
    ただし,hsep, vsep, hvsep オプションを指定した場合は,その指定が優先されます。
    oval02.png
  • hasenLG オプションとの併用はできません。
    枠線を破線で描画をしたい場合は PostScript を用いる
      EMpsrectbox環境EMpsframed環境,or EMpIIeframed環境
    などの利用をご検討ください。
  • dvipdfmx を用いて PDF を作成する場合は,graphicx.sty, color.sty に対して
    グラフィックスドライバの指定が必須です:
      \usepackage[dvipdfmx]{graphicx,color}
    これを怠ると,下のようにヒゲが生えることがあります。
    oval03.png

左右の枠線のみ − [LRonly] オプション

枠罫線の上下を描画せず,左右の側線のみを描画するオプションが [LRonly] です。
下では,その部分に左インデントをつけるため,jquote環境も用いています。
LRonly01.png

左の枠線のみ − [Lonly] オプション

左の側線のみを描画するオプションが [Lonly] です。
Lonly01.png
  • 左側線の両端に短い水平罫線を付加するオプションが [kagi=..]です。
    右辺値は水平罫線の長さを単位付きの寸法で指定します。
    kagi01.png

天地の罫線のみ --[TBonly] オプション

[TBonly] オプションは上下の罫線のみを描画します。
(左右の罫線は描画されません。)
TBonly01.png
  • 背景色を付ける例です。
    TBonly02.png
  • kagi オプションと併用する例です。
    kagi03.png

枠線なし

枠線を描画したくないときは [framethickness=0pt] とします。
framethickness02.png

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

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

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

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

bgcolor1a.png
  • ただし,この機能は tpic-specials によって実現されています。
    tpic-specials color は,dvi-ware に依存します。
    dvipdfmx は,そのバージョンによっては真っ黒になったりします。
    カラーを扱うなら,PostScript を用いる
       EMpsrectbox環境,EMpsframed環境,or EMpIIeframed環境
    などの利用をお勧めします。
  • bgcolor も backgroundcolor と同義のキーです(省略形)。

ベースライン − [pos=..] オプション

rectbox環境は,実質 minipage環境です。
従ってそのベースラインは,minipage環境のベースラインであり,
デフォルトは c (中央)となります。
rectbox環境は横いっぱいに広がりますから,ベースラインが問題となることはありません。
ただし,何らかの状況で,他と横に並ぶことがあると,ベースラインを他とそろえる必要が生じます。~
下では,EMminipages環境を用いて,ミニページを横に並べています。~
左は通常のテキスト,右は rectbox環境です。
左のベースライン(黒)と,右のベースライン(赤)が一致していますが.....
pos00.png
  • ベースラインは一致していますが,頭が不揃いになっている方に目がいきます。
    これを揃えるには,rectbox環境に [pos=t] オプションを付加します。
    pos01.png

枠の横幅

  • 枠の横幅はデフォルトでは \linewidth で,版面・左右いっぱいに拡がります。
    これを制限したい場合は,minipage環境内に rectbox を配置します。
    minipage01.png
  • この場合,minipage の横幅は枠全体の横幅であって,枠内テキストの幅ではありません。
    テキストの横幅を指定して,枠で囲むには
      rectbox環境
    ではなく,
      \fbox or \EMfbox
    などのコマンドを用います。
    minipage02.png

枠の横位置(左右インデント)

枠に左右のインデントを付けるには,jquote環境を用います。
LRskip01.png
  • rectbox環境の枠と上下の段落との縦間隔が気になりますか。
    これは,jquote環境が list系環境であることに起因します。
    一つの対策は,jquote環境に代えて EMchangeLRskip環境を用いることです。
    LRskip02.png
  • 詰まりすぎですか。では,EMchangeLRskip に
      <vsep/tsep/bsep=..>
    オプションを付加します。
    LRskip03.png
  • 左インデントに負の値を指定すれば,枠は版面の左に突き出します。
    LRskip04.png
    • 上の例では,jquote環境を用いていますが,EMchangeLRskip環境でも同様です。

枠の縦幅

縦幅指定

枠の縦幅を指定するには,[tate=..] オプションを用います。
tate01.png
  • 指定した縦幅は,枠の縦幅であって,中のテキストの縦幅ではありません。

版面いっぱいの枠

版面いっぱいの枠を作るには,[tate=\textheight] とします。
tate02.png

残り高さいっぱいの枠

ページの途中から,残りいっぱいに枠で囲むには,\nokoritakasa コマンドで,
残りの高さを取得します。
tate03.png
  • 上の例では
      \nokoritakasa\tmp
    として,残りの高さを取得した後
      [takasa=\tmp-.5zw]
    オプションを指定しています。単に
      [takasa=\tmp]
    とすると,枠は次ページに送られてしまいます。

傍注

rectbox環境内では,\marginparコマンドは使用できません。
代えて,\MigiRangaiコマンドを用います。
 
boutyuu01.png
  • ただし,このコマンドは emathBk.sty で定義されていますから,それを読み込んでおく必要があります。
  • 傍注記号を付与するなど,細かいことは\MigiRangaiのページをご覧ください。
  • 上の例(画像)では,rectbox環境の枠線の他に, 本文領域・傍注領域を示す枠線も表示してあります。

脚注

rectbox環境は,内部で minipage環境を用いています。
minipage環境内では,\footnote は minipage の終了直後に出力されますが,
rectbox環境では,本文と同様にページ下部に出力するようにしてあります。

footnote01.png

これを,minipage直後に,すなわち,rectbox環境内に出力したいときは,
\EMminipagefootnote を宣言しておきます。

footnote02.png

注意事項

  1. ページをまたぐことは出来ません。
    ページをまたぐには,breakrectbox環境 あるいは EMframed環境 を用います。
  2. rectbox環境は,内部で list環境を呼び出します。したがって edaenumerate環境内に配置することは出来ません。
    これを回避するために \useitemfalseコマンドを使う方法もありますが.....

関連事項


添付ファイル: filerectboxsikiri01.png 68件 [詳細] filerectbox01old.tex 61件 [詳細] filekagi03.png 99件 [詳細] filetate03p.tex 142件 [詳細] filetate03.png 102件 [詳細] filetate02p.tex 153件 [詳細] filetate02.png 112件 [詳細] filetate01.png 127件 [詳細] filerectbox01ap.tex 252件 [詳細] filewakunaimidasiL01.png 162件 [詳細] filewakunaimidasi02.png 200件 [詳細] filewakunaimidasi01.png 160件 [詳細] fileshadecolor01p.tex 273件 [詳細] fileshadecolor01.png 127件 [詳細] fileminipage02.png 168件 [詳細] fileminipage01.png 176件 [詳細] fileTBonly02.png 166件 [詳細] fileTBonly01.png 158件 [詳細] fileLRskip04.png 155件 [詳細] fileLRskip03.png 172件 [詳細] fileLRskip02.png 153件 [詳細] fileLRskip01.png 138件 [詳細] filewidth1.png 136件 [詳細] filevsep1.png 161件 [詳細] fileshade03.png 161件 [詳細] fileshade02.png 177件 [詳細] fileshade01.png 172件 [詳細] filerectboxparindent01.png 156件 [詳細] filerectbox01p.tex 309件 [詳細] filerectbox01.png 243件 [詳細] filepos02.png 103件 [詳細] filepos01.png 160件 [詳細] filepos00.png 147件 [詳細] fileoval3.png 125件 [詳細] fileoval2.png 111件 [詳細] fileoval1.png 117件 [詳細] fileoval03.png 161件 [詳細] fileoval02.png 184件 [詳細] fileoval01.png 203件 [詳細] fileoct1.png 104件 [詳細] filenamisen1.png 105件 [詳細] filekagi01.png 164件 [詳細] fileitempos1.png 214件 [詳細] fileitem1.png 226件 [詳細] fileitem02.png 141件 [詳細] filehvsep2.png 173件 [詳細] filehvsep1.png 155件 [詳細] filehsep1.png 213件 [詳細] filehrule02.png 92件 [詳細] filehrule01.png 90件 [詳細] filehasenLG01.png 211件 [詳細] filehasen1.png 128件 [詳細] fileframethickness02.png 151件 [詳細] fileframethickness01.png 189件 [詳細] fileframelinewidth02.png 99件 [詳細] fileframelinewidth01.png 110件 [詳細] fileframecolor1.png 146件 [詳細] filefootnote02.png 176件 [詳細] filefootnote01.png 167件 [詳細] filedoublebox04.png 113件 [詳細] filedoublebox02.png 180件 [詳細] filedoublebox01.png 150件 [詳細] fileboutyuu01p.tex 334件 [詳細] fileboutyuu01.png 145件 [詳細] filebitempos1.png 207件 [詳細] filebitem2.png 170件 [詳細] filebitem1.png 162件 [詳細] filebgcolor1a.png 175件 [詳細] filebgcolor1.png 68件 [詳細] fileallinethickness1.png 77件 [詳細] fileLonly01.png 176件 [詳細] fileLRonly02.png 106件 [詳細] fileLRonly01.png 164件 [詳細] fileHVsep02.png 169件 [詳細] fileHVsep01.png 183件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-11-27 (木) 19:49:05 (1363d)