My Daily Programming Life...

Showing posts with label 描画キャンパス. Show all posts
Showing posts with label 描画キャンパス. Show all posts

描画キャンパスと図表番号 その2

昨日の続き。

Wordの描画キャンパスとその図表番号をきれいに配置する方法を考えていたのだが、結局結論としては、描画キャンパスを右クリックして図表番号の挿入をすることをやめるべきということのようだ。

右クリックで図表番号を挿入してしまうと、勝手にオートシェープが作られてしまうだけでなく、図表番号がテキストボックスの中に入って、そのテキストボックスはレイアウトが「全面」になる。非常にレイアウトしにくい。また、なぜかテキストボックスの中の図表番号は、文章全体選択時に、範囲外になってしまって、「フィールドの更新」で番号が更新されない。これは致命的だ。

図表番号は図表番号用のスタイルを作って、一つの段落で表せばよいのだという結論になった。

描画キャンパスも、図表番号も一つの段落として配置して、それぞれに適当なスタイルを適用しておけば、比較的きれいに行く。(両方とも中央揃えにするなど)

描画キャンパスの段落のスタイルには、「段落」→「改ページと改行」の「次の段落と分割しない」にチェックをしておけば、描画キャンパスと図表番号がページの境界で分割されることがなくなるので、そうしておくのがよい。

描画キャンパスと図表番号

Word2007の理解できない仕様が一つ。

描画キャンパスをつくって、それに対して図表番号を挿入した時にバックグラウンドで起きる挙動について。

まず描画キャンパスをつくると、それは行の一要素として挿入される。わかりやすく言えば描画キャンパスは1文字として扱われる。一つの段落にすることもできるし、文章の行の一部にすることもできる。


このように、1行の一要素となる。

それだけを段落にすることもできる。



この場合その前後の行間などは、その行に適用するスタイルを変更すれば変えられる。そして、描画キャンパスの高さを変えたとしても、行の高さが変わるので、前後の文章は自動的に描画キャンパスの前後にきれいに配置される。

また、描画キャンパスは文字の回り込みなどの指定ができる。説明したように、デフォルトでは、1文字としてレイアウトされるが、周りを文字が囲むように配置することもできる。描画キャンパスを右クリックして「描画キャンパスの書式設定」→「レイアウト」を選択する。こうするとデフォルトでは「行内」が選択されているが、「外周」とすることで、以下のように文字の回り込みができるようになる。





ここまではよい。

さて、通常私が描画キャンパスを使うときは、それだけを一つの段落にして、レイアウトはデフォルトの「行内」にした状態で使う。仕様書などで図を入れるときにはこのように回り込みなどさせず、独立して図を配置して図表番号を付ける。
図表番号は、描画キャンパスを右クリックして「図表番号の挿入」を選択すればよい。次の図のようになる。


図表番号は、一つのテキストボックスとして作成され、ちょうど描画キャンパスの真下に配置される。しかし、この図のように、前後の行間が十分でないと、次の段落の文字に図表番号がかぶってしまったり、近づきすぎてしまって体裁が悪いことがある。
ここで考えられる対策としては、描画キャンパスの前後の行間を空けることというとこになる。行の上も下も均等に空けたいと考えて、たとえば2行分上も下も行間をあけることにして、描画キャンパスのある段落を設定すると次のようになる。


うまくいかない。上下とも2行空けたつもりが、描画キャンパスの下側だけ大きく開いてしまっている(これは4行分空いている)

今回の例ではこれだけのことなのだが、実際にレイアウトをいろいろしようとすると、とにかくごちゃごちゃになる。

これは、図表番号を描画キャンパスに付けた瞬間に先ほどの「行内」という設定が変わってしまうことが原因である。描画キャンパスの書式設定をみるとわかるが、「前面」になっている。「前面」というのは文字と重なって前面に表示されるということだ(文字のレイヤより上のレイヤに浮いているイメージ)。では、なぜ、描画キャンパスに図表番号を入れたときに、描画キャンパスの後ろ側に文字が入りこまずにそのまま表示されていたのかというと、図表番号を入れた瞬間にWordは、「前面」に変更するとともに、その場所にまったく同じ大きさの透明のオートシェープを作っているためだ。
その結果、先ほど上下の行間を空けたのはその透明のオートシェープの上下ということになり、描画キャンパスは「前面」なので当然その場にとどまる。つまり下の図のような関係になってしまう。


そして、なんだかわけがわからなくなってしまう。仮にこのオートシェープを消してしまうと、「前面」が保たれたままであるために他の文字と重なってしまう・・・。



もうここまでくると、これらの関係性をしっかり理解していないとレイアウトできなくなってしまう。

修正するのは簡単で描画キャンパスのレイアウトを「行内」に戻して、オートシェープを消し、上下の行間を適当な量空けて、そこに先ほど入れた図表番号を入れればよい。

これはどういう仕様なのだろうかと、戸惑うが、このように使ってほしいということなのだろうか。はっきり言って図表番号を描画キャンパスに付けた時、これだときれいにレイアウトできないと思うけど、そうじゃないんだろうか。私が知らないだけか。なんかもっと違った考え方があるのだろうか。
feedSubscribe to my feed