複数の連続した図の回り込みについて

複数の連続した図の回り込みについて

- マト の投稿
返信数: 3

TeXの回りこみのやり方についての質問です。


一連の図を右側に配置し、文章の回り込みを行いたいのですが、
図が大量にあるため、1ページでは収まりきらず数ページに渡ってしまいます。

回り込み環境のまま、ページをまたいで図を配置するにはどうしたらいいでしょうか?


現在使っているのは、wrapfigパッケージです。

また、
『[改訂第4版] LaTeX2e 美文書作成入門』には、
wrapfigは、回り込み位置でページが分割されたときはうまくいかない
ということが書かれてあったので、
multicolパッケージを用いて、図があるところだけ二段組にするという方法も考えました。

しかし、この方法だと実現は可能なんですが、文章の長さや図の個数によって二段組を終える位置を決めなければならず、
今後、文章や図の個数に度々変更を加える事を考えると、できればそういった方法は避けたいです。


wrapfigによる方法、別のパッケージを使う方法どちらでも構いません。

文字だけでは伝わりづらいため、参考までにどういったレイアウトにしたいのかを添付しておきます。

回答よろしくお願いします。


添付 DSC_0208.JPG
マト への返信

Re: 複数の連続した図の回り込みについて

- 前田 一貴 の投稿
解決策になるかはわかりませんが,ググると

Handling of wrapfig pictures in LaTeX
http://tex.stackexchange.com/questions/56176/handling-of-wrapfig-pictures-in-latex

というのが出てきます.
wrapfig のドキュメントによると,

> Parameter #2 (required) is the figure placement code, but the valid
> codes are different from regular figures.  They come in pairs: an
> uppercase version which allows the figure to float, and a lowercase
> version that puts the figure ``exactly here''.
>    r R - the right side of the text
>    ...

ということなので,図の配置パラメータに r ではなくて R を指定すれば,
フロート環境になってある程度自動化できるようです.ただ,そのすぐあとに

> The ability to float is somewhat restricted, and you will get best results
> by giving exact manual placement, but floating is more convenient while
> revising the document.  Any changes to the formatting can ruin your manual
> positioning so you should adjust the placement just before printing a
> final copy.  Here are some tips for good placement: ...

とあるので,wrapfig に完全なものを期待はしない方がよいように思われます.

もっとよい方法があればよいのですが…….
前田 一貴 への返信

Re: 複数の連続した図の回り込みについて

- 本田 知亮 の投稿
>図の配置パラメータに r ではなくて R を指定すれば,

こんな機能があるんですか.知らなかったです.

さて・・・現実的には制限なしではほぼ不可能でしょう.

少し,思考実験をしてみます.

まず,回り込み対象のすべての図表の高さを
知る必要があります.
ですので,回り込み開始の際にすべての図表を書かないといけないはず.
そこで高さを計測して,1ページの高さと比較して,
1ページにはいるように図表をわけて,
それぞれのグループごとにページに割り付ける.
また,図表の高さが足りない場合,
回り込ませるか否かとかを決める必要があります.

回り込み開始がページの先頭か否かでも
処理を変えないといけないですね.
ページ途中からの回り込みになるにもかかわらず,
最初の図表の高さが大きすぎてはいらないときの処理を
考えないといけないです.
自然なのは,高さが足りない場合には,
そのページでは回り込みさせずに
次のページの先頭から回り込みさせることになりますが,
これはかなり厄介な処理です.

\pdfsaveposを駆使すればできるのかもしれませんが,
すごいことになりそうです.



本田 知亮 への返信

Re: 複数の連続した図の回り込みについて

- 北見 けん の投稿
本田さんが仰るような汎用的なものは確かに難しそうですが、
レイアウトのサンプル図を見る限り、回り込み開始はページの上端で、
ページごとの図表の高さが足りない場合でも回り込みさせず、
全ての図表を出し切った最後のところだけ回り込みさせるのでよい、
ということであれば何とかなるのかもしれません。

この目的なら、対訳などに使う parallel.sty のような、二種類の要素を平行して配置してゆく
パッケージを使うのはいかがでしょうか。
(といっても、私は parallel.sty を使ったことがないので、見当はずれかもしれません)
全ての図表の分量に合わせて、最後のところだけ手動で文章を切って、
そこから1段組みに戻して余った文章を配置するような運用になるかと思います。