名前: 大熊 一弘 日時: 2002-10-06 19:53:53 IPアドレス: 61.121.36.*
>>11515 はかばかしいコメントがつかないようですから, 苦し紛れの一案を書いてみます。 > \align環境 とありますから,amsmath を前提とします。 > 式番は普通「2.1.3.1」、「2.1.3.2」、・・・、「2.1.3.n」となると思うんですが、 > それを「2.1.3-n」という風に最後の式の順番のところだけハイフンにしたいんです。 \theequation を再定義するのはどうでしょうか。 > \align環境の複数行の中の一行(そうでなくてもいいんですが)で、 > 一行で収まらない式になってしまった場合、 > ・・・=・・・・・ > =・・・・・・・・・・ > +・・・・・・・・(ここだけ右寄せ) > =・・・・・・・ > としたいのですが、どうすればよいのでしょうか? 右寄せしたい一行を\tag*の引数に与える, というのは乱暴ですね。 ただし, (1) その行に数式番号を振るにはカウンタequationを増やし, > 今までは\tagで自分で打ってました・・・(意味なし) の再現となったりします。 (2) その行に対し,\label, \refによる相互参照をするには\labelが使えませんので, 直接 aux ファイルを操作するなどが必要でしょうか。 これまた苦しいことではあります。 以下,サンプルリストです。 右寄せする, ということは,その前の行は左寄せかな, と思い,fleqn オプションをつけてみましたが, 取り去っても動作するはずです。 % ------------------------------------------------- \documentclass[fleqn]{jbook} \usepackage{amsmath} \makeatletter % 数式番号の書式 \@addtoreset{equation}{subsection} \renewcommand{\theequation}{% \thesubsection-\@arabic\c@equation} % % 相互参照形式ラベル書き出し % \WriteLabel#1#2 % #1 : ラベル名 % #2 : 書き出す内容 \def\writeLabel#1#2{\@bsphack% \protected@write\@auxout{}% {\string\newlabel{#1}{{#2}{\thepage}}}% \@esphack}% \makeatother \begin{document} \chapter{sono1} \section{setu1} \subsection{syou1} \begin{align} (1+x)^2&=1+2x+x^2\\ (1+x)^3&=1+3x+3x^2+x^3 \end{align} \subsection{syou2} \begin{align} (1+x)^6&=\sum_{k=0}^{6}\binom6k x^k \label{Eq1}\\ &=1+\binom61x+\binom62x^2+\binom63x^3 \notag\\ \tag*{$\displaystyle+\binom64x^4+\binom65x^5+x^6$% \refstepcounter{equation}~(\theequation)\writeLabel{Eq2}{\theequation}} \end{align} \eqref{Eq1}を記号``$\sum$''を用いずに書き並べると\eqref{Eq2}のようになる。 \end{document}
この書き込みへの返事: