始めの言葉

「プリンターから印刷できて当たり前」と、ユーザーからもSIerからも軽視されがちなプリンターの世界ですが、実際にはお困りだったり、思ったような印刷結果が得られないまま我慢してお使いの皆様のために、今までの経験が役立てばと、このブログを立ち上げました。印刷の基本から、応用情報、問題の解決方法を情報発信すると共に、PDF化など、これからどうするかについても、ご相談に乗れれば幸いです。ご質問はコメントでお寄せください。

2018年11月3日土曜日

MapDraw を使った帳票設計のテクニック 第16回 - 条件の設定 - 5 -

前回は、グループで指定した開始行から終了行までの間で、データの存在する行だけに、下部に罫線を引くという設計を始めたところです。
各行の "6" 桁目に、ブランクが無ければ、つまり、何かのデータが存在すれば実行するという条件を、罫線のプロパティ画面の中で設定しました。しかし、その結果、プレビューすると罫線しか表示されませんでした。
それは、グループの中で条件を設定した場合には、その条件の結果が "真" になった場合だけ実行されるからです。
この場合に当てはめると、"6" 桁目にデータがある行において、罫線を引くことだけが "真" だったので実行されましたが、文字を表示するゾーンに対しては条件を設定していないので、"真" になることがなく実行されなかった、つまり、文字は表示されなかったということになります。
別の言い方では、グループの中で条件を設定する場合には、グループの中の全ての要素に対して条件を設定しないとならないと言えます。

では、前回、設定した "z11" というゾーンに対して条件を設定します。条件は新たに定義する必要はなく、罫線に適用した "a" を使用すればデータのある行の文字を表示できるはずです。
ゾーンに条件 "a" を適用する
では、プレビューしてみましょう。
プレビュー画面
文字も表示されるようになりましたが、元のスプールでは 1 行間隔であるはずの空白行が無くなっているため、行間が詰まっているように見えます。
それは、条件 "a" で指定した "6" 桁目にデータのある行に対して、罫線や文字のゾーンを設定しているからです。つまり、"6" 桁目にデータの存在しない空白行に対する手当てを行う必要があるということです。
そのためには、6 桁目を 1 桁だけ(桁数はもっと多くても構いません。)指定したゾーン "z12" を設定します。
ゾーン "z12" の設定
このゾーンに対して、"a" とは逆の条件 "b" を設定します。"a" とは逆に、"There is"と設定しても結構ですし、"There isn't"のままで、論理ルール欄に "not 1" と指定しても結構です。
条件 "b" の設定
では、改めてプレビューしてみましょう。
プレビュー画面
これで、1 行間隔で空白行が入る、元のスプールと同様になりました。
もちろん、ゾーン "z11" のプロパティで、間隔を調整するという方法もあり得ます。その場合は、間隔の量を調整できることがメリットかと思います。

ただ、良く見ると、文字と罫線の間隔が狭く、下部が重なって見えます。
プレビューを倍率100%で表示した画面
調整するには、文字のゾーンの位置を少し上に上げる、あるいは、罫線を少し下げるという 2 つの方法が考えられます。ここでは、罫線の位置を少し下げます。罫線のプロパティ画面で、"Y シフト" の値を 10(1/10mm 単位)に設定します。Y 軸は下方向に伸びていますので、下に移動するためには、値を大きくします。
罫線の Y シフトの値を 10 に設定する
プレビューしてみると、適当な間隔になったことを確認できます。
プレビュー画面

0 件のコメント:

コメントを投稿