Re: 囲み線内に数式はいれられますか?

名前: 北見 けん
日時: 2002-10-08 15:42:05
IPアドレス: 211.128.71.*

>>11663 >\\で区切られた各単位を「行」と呼ぶことにして, >「各行を横一列に並べたときの横幅を取得」して >その最大値で判断させるようにすると >多分お望みのものは可能ですが,結構厄介です これはまさに \halign の機能ですよね。 ということで、eqnarray は無理なんですが。 \documentclass{jarticle} \newdimen\FRAMEhsep \FRAMEhsep=15pt \newdimen\FRAMEvsep \FRAMEvsep=5pt \newenvironment{FRAME}[1][\linewidth]{% \linewidth=#1\relax \advance\linewidth by -2\FRAMEhsep \advance\linewidth by -.8pt% -2\rulethickness % \begin{trivlist}\item[]% \par \hbox\bgroup \vrule \vbox\bgroup \def\\{\cr}% \parindent0pt \halign\bgroup \hskip\FRAMEhsep \setbox0\hbox{##}% \ifdim\wd0<\linewidth \box0 \else \vbox{\hsize\linewidth\unhbox0}\fi \hfil\hskip\FRAMEhsep \cr \noalign{\hrule\vskip\FRAMEvsep}% \ignorespaces }{% \crcr \noalign{\vskip\FRAMEvsep\hrule}% \egroup \egroup \vrule \egroup % \end{trivlist}% } \begin{document} 地の文は長くなると折り返されます。どのくらいで折り返されるか見やすいように、 この下に\verb!\hrule!を入れておきます。現在の\verb!\hsize!です。\strut \hrule \prevdepth0pt \begin{FRAME} さて、短い文です。 \end{FRAME} \begin{FRAME} $\displaystyle\int_0^\infty \!e^{-x}\,dx$ \end{FRAME} \begin{FRAME} これは、長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い長い文。 折り返されます。 \end{FRAME} \begin{FRAME} これは、長い長い長い長い長い長い長い長い長い長い長い長い長い長 \end{FRAME} \begin{FRAME} このように \\ 途中で改行した場合も \\ 囲み線が現在の\verb!\hsize!にはなりません。 \end{FRAME} \begin{FRAME} 囲みの中に、\\ \begin{FRAME} 入れ子にしたら \\ こうなります。 \end{FRAME} \end{FRAME} \begin{FRAME} 囲みの中に、\\ \begin{FRAME} 入れ子にした文章が長くなってしまったら折り返されればいいのでしょうか \end{FRAME} \end{FRAME} \begin{FRAME} この中に\\ \vbox{ \begin{enumerate} \item \verb!enumerate!環境 \item \verb!itemize!環境 \end{enumerate} }\\ などを入れれば、幅はいっぱいになります。\\ 入れ方次第ですが。 \end{FRAME} \begin{FRAME} この中に\\ \begin{tabular}{rl} \verb!tabular!&環境を\\\hline 入れてみました。&設定は\verb!{rl}!です。 \end{tabular} \end{FRAME} \verb!FRAME!環境 に入れる中身はどんなものを想定しているのか。 \verb!\footnote!などはどうしたいのか。 このあたりが不明瞭です。 \begin{FRAME}[.5\linewidth] これはおまけです。\verb!\begin{FRAME}[.5\linewidth]!と、オプションで 囲みの最大幅を指定できます。\\ はみ出してますが。 \end{FRAME} \end{document}

この書き込みへの返事:

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