名前 題名 ▼ KONさん > >実力というか,スキルというか,知識というか,その差は歴然としていました. > > 私もXRAY様のコードを見ると愕然とする事が今でも多々あるのですが^^; > 実力のある方のコードは、もはや理解できないレベルのコードもあり、 > お笑い芸人サンドイッチマンさんの「ちょっと何言ってんのかわからない」のセリフがピッタリ合う > 物もあったりします^^; > ※ 私のスキルが未熟な為ですよ(汗 > > 帳票印刷は私も過去に中村様のサイトを参考に(Delphi掲示板でリンクを貼って頂いた方が居ました) > 行った事があります。 > > (1) > 印刷といっても大きなTBitmapをローカルで用意し、それに必要な画像や文字を描画、 > スクロールボックスに動的に作成したTImageを配置し、そのTImageの大きさに合わせたStretchコピーを > 行ってプレビューさせるという方法でした。 > スクロールボックス内のTImageが動的生成なのは、ページ数がいくつあるか判らない、 > また、動的に作成されたTImageはマウスホイールで拡大・縮小できる様にする為、 > 1ページのプレビューがウインドウサイズを超える場合がある為でした。 > 内部TBitmapとTimageでかなりメモリを消費しますので、何百枚のプレビューは不可能でしたが(と思われる) > 最大でも10ページ位だろうという事でそういう風になりました。 > 肝心の印刷処理は、中村様のサイトを参考にさせてもらいました。 > > (2) > また、別な印刷処理では、 > 内部にTRichEditを生成、そのTRichEditに画像と文字を描画、 > DelphiのTRichEditは、標準では画像を貼り付けられない為、ネットから貼り付けられる > 魔法の様なコードを拝借して組み込みました(汗 > 内部で持たせたTRichEditの全ての画像や文字を全選択し、 > クリップボードの内容をTStreamに退避してから、クリップボードに転送、 > Windowsのワードパッドを起動し、ワードパッドにクリップボードから貼り付け、 > その後に退避していたデータをクリップボードを復帰させるというw > システマチックかつ七面倒な事を行った事があります。 > ※ 当時、私のスキルが未熟な為、この様な事しか思いつかなかったのです(白目 > ワードパッドの起動方法や、ワードパッド内のTRichEditハンドルの取得方法はHalbow様の > テクニックを参照しました。 > ワードパッドに転送された画像と文字はそのまま印刷できますし、 > 保存してMicrosoft Wordで読み込めば、罫線を引くなど好きな様に編集可能になります。 > > > (1)のやり方は、後日編集不可能な為、決まりきっている印刷物に向いてますが、 > 描画処理をゴリゴリ書けば綺麗なレイアウトで印刷できます。 > (2)のやり方は、後日編集が可能な為、とりあえずデータが欲しい、 > 文章フォーマットは各自用意してあるので、オペレータが自由に触りたいという場合向けでした。 > > 印刷に関しては、QuickReportやPDF出力などによる方法も考慮しましたが、 > PDF出力はプリンタ出力先をPDFに指定できるソフトがあり、興味はあったのですが断念。 > ドロー的な印刷に興味はあるのですが、まだ手も付けていない状態です。 > > 話が長くなってすみません。浅知恵的な事を書いていたら笑ってやって下さい^^; GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link