Re: 文章中の数式の折り返し

名前: misc
日時: 2004-03-19 02:52:24
IPアドレス: 210.230.18.*

>>27349 \item の直後のディスプレイ数式に対しては, \box\@labels(\item に対するラベル部分を収めたボックス)の 中身を横取りし,数式の左側に置きなおせばいいのです. 例えば,(僭越ながら)19834 の後半で例示されている記述に さらに手を入れると,次のようになります. # amsmath パッケージが提供する各種ディスプレイ数式環境に # この類の変更を施すのは,興味がある方にお任せします(というより, # 私の腕ではすぐにはできません). # enumerate 環境などの“箇条書き”環境の外部の eqnarray 環境などの # 挙動は概ねオリジナルのものと同じにしています. \documentclass{jarticle} \makeatletter \newbox\@saved@label \newskip\@eqn@leftglue \def\@displaymath@setlabel{% \if@inlabel \global\setbox\@saved@label\box\@labels \global\@newlistfalse \global\@inlabelfalse \noindent \@eqn@leftglue\z@skip \def\@list@adjust{\topsep\z@ \partopsep\z@}% \abovedisplayskip\z@skip \belowdisplayskip\z@skip \else \global\setbox\@saved@label\box\voidb@x \@eqn@leftglue\@centering \let\@list@adjust\@empty \fi} \def\eqnarray{% \@displaymath@setlabel \stepcounter{equation}% \def\@currentlabel{\p@equation\theequation}% \global\@eqnswtrue \m@th \global\@eqcnt\z@ \tabskip\@eqn@leftglue \let\\\@eqncr $$\everycr{}\halign to\displaywidth\bgroup \hskip\@centering$\displaystyle\tabskip\z@skip{##}$\@eqnsel &\global\@eqcnt\@ne \hfil$\displaystyle{{}##{}}$\hfil &\global\@eqcnt\tw@ $\displaystyle{##}$\hfil\tabskip\@centering &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup \tabskip\z@skip \cr} \def\@@eqncr{% \let\reserved@a\relax \ifcase\@eqcnt \def\reserved@a{& & &}% \or \def\reserved@a{& &}% \or \def\reserved@a{&}% \else \let\reserved@a\@empty \@latex@error{Too many columns in eqnarray environment}\@ehc \fi \reserved@a \if@eqnsw \@eqnnum \stepcounter{equation}% \fi \hbox to\z@{% \kern-\displaywidth \box\@saved@label \hss}% \global\@eqnswtrue \global\@eqcnt\z@ \cr} \def\equation{% \@displaymath@setlabel \@list@adjust \@beginparpenalty\predisplaypenalty \@endparpenalty\postdisplaypenalty \refstepcounter{equation}% \trivlist \item[]\leavevmode \hb@xt@\linewidth\bgroup $\m@th \displaystyle \hskip\@eqn@leftglue} \def\endequation{% $\hskip\@centering \displaywidth\linewidth \hbox{% \@eqnnum \hbox to\z@{% \kern-\displaywidth \box\@saved@label \hss}}% \egroup \endtrivlist} \def\[{% \relax \begingroup \ifmmode \@badmath \else \@displaymath@setlabel \@list@adjust \begin{trivlist}% \@beginparpenalty\predisplaypenalty \@endparpenalty\postdisplaypenalty \item[]\leavevmode \hb@xt@\linewidth\bgroup $\m@th\displaystyle \hskip\@eqn@leftglue \bgroup \fi} \def\]{% \relax \ifmmode \egroup$\hskip\@centering \ifvoid\@saved@label\else \hbox to\z@{% \kern-\linewidth \box\@saved@label \hss}% \fi \egroup \end{trivlist}% \else \@badmath \fi \endgroup} \makeatother \begin{document} aaa \begin{enumerate} \item \[ a = b \] \item \begin{eqnarray*} a & = & b = \cdots = m\\ & = & o = \cdots = z \end{eqnarray*} \end{enumerate} \end{document}

この書き込みへの返事:

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