Re: ページをまたぐ網掛け

名前: misc
日時: 2004-02-11 14:37:33
IPアドレス: 211.4.123.*

>>25863 網掛け部分の周囲に罫線が要らないのでしたら,10202 で紹介されている パッケージが使えるでしょう. # 下記の例で,\fboxrule を 0pt にしても構いません. eclbkbox パッケージに手を入れるのでしたら, (あのパッケージを解析すれば,\bk@line が“個々の行”を 収めたボックスになっていることに注意して) 次のようにすることができます. \documentclass{article} \usepackage[dvips]{color} \usepackage{eclbkbox} \makeatletter \def\endbreakbox{% \egroup \ifhmode\par\fi \begingroup \noindent \bk@lcnt\@ne \@bkconttrue \baselineskip\z@ \lineskiplimit\z@ \lineskip\z@ \vfuzz\maxdimen \bk@split \bk@addfsepht \bk@addskipdp \ifvoid\bk@bxb % Only one line \def\bk@fstln{% \bk@addfsepdp \setbox\z@\vbox{% \hrule\@height\fboxrule \bk@line \hrule\@height \fboxrule}% \bk@addbgcolor@and@put@one@line}% \else % More than one line \def\bk@fstln{% \setbox\z@\vbox{\hrule\@height \fboxrule \bk@line}% \bk@addbgcolor@and@put@one@line \hfil \advance\bk@lcnt\@ne \loop \bk@split\bk@addskipdp\leavevmode \ifvoid\bk@bxb % The last line \@bkcontfalse\bk@addfsepdp \setbox\z@\vtop{\bk@line \hrule\@height\fboxrule}% \else % 2,...,(n-1) \setbox\z@\bk@line% \bk@line = \hbox to\linewidth{...} \fi \bk@addbgcolor@and@put@one@line \hfil \advance\bk@lcnt\@ne \if@bkcont \repeat}% \fi \leavevmode\bk@fstln\par \endgroup \vskip\breakboxskip\relax} \newif\ifBreakBoxShading \BreakBoxShadingfalse % 網掛けの濃さの指定(0 <=> 黒,1 <=> 白) \def\bk@shade{.85} % 印刷時に網掛け部分に隙間ができることを防ぐための, % 隣り合う行の網掛け部分の重なり量(\lineskip の値は % この値を超えていることが望ましい) \def\bk@shade@overlap{.25\p@} \def\bk@addbgcolor@and@put@one@line{% \ifBreakBoxShading \begingroup \dimen@\dp\z@ \setbox\z@\hbox to\wd\z@{% \@tempdima\ht\z@ \@tempdimb\dp\z@ \advance\@tempdima\bk@shade@overlap\relax \begingroup \color[gray]{\bk@shade}% \vrule\@width\wd\z@ \@height\@tempdima \@depth\@tempdimb \endgroup \kern-\wd\z@ \box\z@}% \dp\z@\dimen@ \box\z@ \endgroup \else \box\z@ \fi} \makeatother \begin{document} \def\text{% This is a meaningless sample text. This is a meaningless sample text. This is a meaningless sample text. This is a meaningless sample text. This is a meaningless sample text.\par} \begin{breakbox} \text\text\text\text\text \text\text\text\text\text \end{breakbox} \BreakBoxShadingtrue \begin{breakbox} \text\text\text\text\text \text\text\text\text\text \end{breakbox} \end{document} # 網掛け部分の四隅を丸くするのは…“本質的ではない面倒”なので, # ここではやめます(適当な描画パッケージを使わないと # 手間はかかるでしょう).

この書き込みへの返事:

お名前
題名 
メッセージ(タグは <a href="...">...</a> だけ使えます)