名前: みなも 日時: 2009-02-21 18:18:19 IPアドレス: 202.233.242.*
\parshape で文章を整形したとき,\hfill で「センター寄せ」をすると, 前後の行の長さ如何で,「変な」ところで改行されることがあります。 たとえば次の例(短い行3行のあと長い行)で真ん中の段落だけ, 2行目の「1文字目」の直後で改行されてしまいます。 「変な」というのはこちらの主観で TeX としてはこれの方が美しいとの 判断なのでしょうが,何とか思うように(=「余計な改行」を抑制して)組み版 できないものでしょうか。 \penalty などもいじってみたのですがどうもうまくいきません。 (とりあえず裸で\hfillを使わず(短い)行幅の \hbox 内で \hfill を使う, あるいはそれと同等の \makebox を使うことでしのいでいますが, 例によってマクロ内の動作を抽出したものですので, 個別状況に依存した方法より汎用的な方法が望ましいのです。。。 が,やっぱり難しいんでしょうかねぇ。) \documentclass{jarticle} \textwidth=14cm \begin{document} \parshape 4 0pt 10cm 0pt 10cm 0pt 10cm 0pt 14cm あああ\\ \null\hfill いいい\hfill\null\\ ううううううううううううううううううううううううううう えええええええええええええええええええええええええええ \vskip5mm \parshape 4 0pt 10cm 0pt 10cm 0pt 10cm 0pt 14cm あああ\\ \null\hfill いいい\hfill\null\\ ううううううううううううううううううううううううううう えええええええええええええええええええええええええええ おおおおおおおおおおおおおおおおおおおおおおおおおおお \vskip5mm \parshape 4 0pt 10cm 0pt 10cm 0pt 10cm 0pt 14cm あああ\\ \null\hfill いいい\hfill\null\\ ううううううううううううううううううううううううううう えええええええええええええええええええええええええええ おおおおおおおおおおおおおおおおおおおおおおおおおおお かかかかかかかかかかかかかかかかかかかかかかかかかかか \end{document}
この書き込みへの返事: