印刷レイアウトをユーザにデザインさせるには?

解決


ガッツ  2005-12-12 15:02:55  No: 19214  IP: 192.*.*.*

Delphi7を使用して、ラベル印刷プログラムを作成しています。
プログラムで動的にレイアウトを作成し、プレビューの段階か、その前の
段階でラベル位置を調整したいと思っています。
市販のレポートツールのデザイナとプレビューのようなものをプログラム
に組み込みたいと言った方が早いでしょうか。
現在、プレビューについてはDelphian WorldのTplPrevを使用している
のですが、デザイナ部分をどうやって実現しようか悩んでいます。
このデザイナ部分の実装は、自前で開発しなければならないでしょうか?
それとも、プレビュー時に位置調整できるようなレポートツールないでしょうか?
ちょっとDelphiとそれるかもしれませんが、お願いします。

編集 削除
Syake  2005-12-12 16:07:22  No: 19215  IP: 192.*.*.*

位置調整が開始位置なのか、各項目の位置調整なのかわかりませんが
大体のレポートツールであれば開始位置(つまり上余白、左余白)の他、
各項目の印字位置調整等はプログラム上でできます。
多分(^_^;)
私の場合は、ユーザー毎にIniファイルかレジストリに保持させて印刷時
に呼び込んでプレビューなり印字なりさせています。
※印字開始位置はテスト印字で・・・
※項目のフォントやサイズ、位置は簡単なデザイン用のプレビューみたい
  なフォームを用意して、ユーザーに設定させてます。

>市販のレポートツールのデザイナとプレビューのようなものをプログラム
>に組み込みたいと言った方が早いでしょうか。
楽だと思います。

TplPrevはMrXRay氏のコンポーネントですね。
>このデザイナ部分の実装は、自前で開発しなければならないでしょうか?
はい。  また、これはレポートツールのようにはいきません。
でも、調整などは基本的に同じことになるのかな?
これに関しては
http://homepage2.nifty.com/Mr_XRAY/index.htm
の喫茶XRAYで相談されてはどうでしょうか。

>プレビュー時に位置調整できるようなレポートツールないでしょうか?
わかりませんです。

編集 削除
ガッツ  2005-12-12 23:04:59  No: 19216  IP: 192.*.*.*

Syakeさん、レスありがとうございます。

微調整というよりは、プログラムでデフォルト配置した後は、
自由に項目の配置を変えることができるものを目指しています。
毎回印刷するものが違っていて、毎回自由にレイアウトするような
感じです。要はデザイナですね。
今のところ、デザイナはDelphianWorldの実行時用デザインシステム
でつくろうかなぁと思っています。
でも難しいだろうなぁ・・・。

編集 削除
Basser  2005-12-13 18:39:08  No: 19217  IP: 192.*.*.*

下記のレポートツールはどうでしょう?

http://www.adv.co.jp/products/product_VB-Report3.htm

編集 削除
ガッツ  2005-12-15 09:57:30  No: 19218  IP: 192.*.*.*

Basserさん、レスありがとうございます。

URL拝見しました。
あらかじめExcelでレイアウトを定義できる点は面白そうですね。

今回の件は、印刷時にレイアウトは存在しない状況なんですよ。
なので、プレビュー時には適当に項目を並べて配置し、プレビュー画面で
自由に移動させたいのです。
ちょっと古いですが、Delphi Graphic Secretsという書籍を参考にして
いるのですが、実行時用デザインシステムとメタファイルを使ってできそう
な感じです。

編集 削除