標準の 8.5 インチ x 11 インチのページに目次を書いています。向き (横向きか縦向きか) は変数です。ページに x インチのマージンが適用されている場合 (x は可変)、TOC を内側の領域に書き込むことができます。
生データは、Topic と Page の 2 つの列を持つテーブルです (つまり、{ "Animals" , 1 } , { "Big Plants" , 2 } , { "Small Plants" , 2 } )。これはネストされた TOC ではありません。「サブトピック」はありません。すべてのトピックの重要度は同じで、すべてのテキストのフォント サイズは固定されています。
ページごとに 1 列以上の目次を許可したいのですが、必要に応じて複数ページの目次を許可しています。レイアウトはトピック列のテキストに完全に依存します。トピックが短い場合は、縦方向に 2 列、横方向に 3 列を配置することを想像できます。トピック名が長い場合は、1 列しか収まらない可能性があります (非常に長い場合は、1 つのトピックに複数の行を使用してもかまいません)。トピックが多い場合は、複数のページにまたがる可能性があります。目標は、各ページにできるだけ多くの目次情報を掲載することです。
これは難しい問題だと認識しています。まだ調べていない詳細がいくつかあります (つまり、すべてのページの列数は同じでなければなりませんか?)。私はちょうどスタートを探しています...仕事をする1、2時間で実装するのに十分簡単なもの。ページに配置する行数を決定するために、文字数を含む 1 列の TOC を強制するよりも、ある程度インテリジェントな方法の方が優れています。