On 09/08/12 09:37, Steffen Wolfrum wrote:
Hi,

for nice linebreaking we can adjust math formulas by the use of NC, NR alignment.

But if someone only wants long formulas to fit in a defined area, and want them to break automatically ... is there a handy solution?

(Below are examples that don't work)

Thanks,
Steffen
-------


\starttext


\placeformula
\startformula[9pt]
I=\big\{\lambda u(x_0-\pi^H K)+(1-\lambda)[\pi^L u(x_0-K+(1-\pi^L)Z_{L'})
+(1-\pi^L)u(x_0-\pi^L Z_{L'})]\big\}-\big\{\pi^U u(x_0-K+(1-\pi^U)Z_{U'})
+(1-\pi^U)u(x_0-\pi^U Z_{U'})\big\}.
\stopformula



\defineframedtext
 [defbackground]
 [width=10cm,
  frame=on,
  location=paragraph]


\startdefbackground
\placeformula
\startformula[9pt]
I=\big\{\lambda u(x_0-\pi^H K)+(1-\lambda)[\pi^L u(x_0-K+(1-\pi^L)Z_{L'})
+(1-\pi^L)u(x_0-\pi^L Z_{L'})]\big\} -\big\{\pi^U u(x_0-K+(1-\pi^U)Z_{U'})
+(1-\pi^U)u(x_0-\pi^U Z_{U'})\big\}.
\stopformula
\stopdefbackground





\definelayer[mylayer]


\setlayerframed
 [mylayer]
 [x=25mm,
  y=85mm,
  height=43.5mm,
  width=10cm,align=block]
 {
 \placeformula
\startformula[9pt]
I=\big\{\lambda u(x_0-\pi^H K)+(1-\lambda)[\pi^L u(x_0-K+(1-\pi^L)Z_{L'})
+(1-\pi^L)u(x_0-\pi^L Z_{L'})]\big\} -\big\{\pi^U u(x_0-K+(1-\pi^U)Z_{U'})
+(1-\pi^U)u(x_0-\pi^U Z_{U'})\big\}.
\stopformula
 }

\setupbackgrounds[page][background=mylayer]






\stoptext

When I needed something like that, I used \allowbreak with inlinemath. In your case, you could do:
\bTABLE[frame=on,align=right,width=10cm]
\bTR
\bTD
$I=\big\{\lambda u(x_0-\pi^H K)\allowbreak+(1-\lambda)[\pi^L u(x_0-K+(1-\pi^L)Z_{L'})\allowbreak+(1-\pi^L)u(x_0-\pi^L Z_{L'})]\big\}\allowbreak -\big\{\pi^U u(x_0-K+(1-\pi^U)Z_{U'})\allowbreak+(1-\pi^U)u(x_0-\pi^U Z_{U'})\big\}.$
\eTD
\eTR
\eTABLE

This will just flow it like regular text. I don't know if this is good enough for your needs. If not, you can add another way to your list of ways ;-).

-- Prash