/ inTopicNo.1)  プリンタ設定

  
□投稿者/ hihiro さん ( ) 【202.229.48.159】(2008/09/26(Fri) 22:46:59)

   
    #-------------------------------------------
     #【ソフト名】 プリンタ設定
     #【作  者】 hihiro
     #【連 絡 先】 xxx@xxx.ne.jp
     #【U R L 】 http://www32.atwiki.jp/hihiro/pages/12.html
     #【投 稿 日】 2008/09/26
     #【ジャンル】 なでしこ支援
     #【なでしこバージョン】 ver.1.5071
     #【なでしこの実行方法】 標準GUI(vnako.exe)
     #【転  載】 不可
     #【利用作成するファイル】 設定.dat
     #【コメント】 プリンタ設定を保存し、その設定で印刷する
    #------------------------------------------
    /*
      「なでしこ」のプリンタ設定は、プログラム起動毎に初期化され、再度プリンタの設定が必要となります。
       また、プリンタの余白分小さく印刷されるので、実際の大きさと違う場合があります。
      【プリンタの設定】ダイアログでプリンタの設定行い、その設定を設定ファイルに保存します。
       その保存した設定ファイルを読込、プリンタを初期化(設定)して画像イメージを印刷する
       事ができます。(画像イメージによっては、ほぼ原寸大に印刷可能)


    #901のプリンタ設定から改良して 
    一旦設定した、プリンタの設定をプログラムから呼び出せないかと考えてみました。
    プリンタのデバイスコンテキストを取得できれば良いのですが、なでしこで使用するプリンタの
    情報が取得できないため、Win32APIを使ったプログラムにしました。
    一旦、画像イメージに描画して、プリンタデバイスコンテキストに転送し、印刷します。
    なでしこのプリンタ設定と同じような命令になっています。

    ●イメージを宣言(大きさ等を設定「例:A4縦」し、印刷したいものをイメージに描画)
       画像イメージとは、イメージ
       その幅は、210/25.4*300    //210mm/25.4*300dpi=2480dot 300dpiのA4用紙の幅
       その高さは、297/25.4*300   //297mm/25.4*300dpi=3508dot 300dpiのA4用紙の高さ
       その画面クリア        //大きさ変更を反映
       そを24に画像ビット数変更   //印刷できない場合、必要に応じてビット数を設定

    ●使用方法1(設定ファイルで、【プリンタの設定】ダイヤログを初期化し表示。
           設定変更を設定ファイルに保存)
       もし プリンタのダイヤログ(「設定名」)=1ならば
         プリンタの描画開始(「設定名」)
         プリンタの画像用紙範囲転送(画像イメージを0,0へ)
         プリンタの描画終了

    ●使用方法2(設定ファイルで初期化【プリンタの設定】ダイアログは非表示)
       プリンタの描画開始(「設定名」)
       プリンタの画像用紙範囲転送(画像イメージを0,0へ)
       プリンタの描画終了


    注)イメージを作成して、描画だけしたイメージの場合、イメージに画像ビット数変更を設定しないと、転送に失敗し、印刷できない場合があります。(コピーしたイメージや、ファイルから画像呼び込みしたイメージはOKのようです??)

    */

    プログラム本体(プリンタ設定API.nako)と
    テスト用プログラムは、大きすぎてアップロードできませんので、
    下記wikiに置いてあります。
    http://www32.atwiki.jp/hihiro/pages/12.html

    なお、エラー処理およびバグ取りは完全ではありません。
    また、手抜きの部分も各所にありますので御了承下さい。

    *(2008/09/27(Sat) 00:31:20 編集[投稿者])

    *(2008/10/02(Thu) 23:52:51 編集[投稿者])
削除キー/

コメントを記入





Name/
E-Mail/
Title/
URL/
Icon/ (画像を選択/サンプル一覧)
削除キー/ (半角8文字以内)
確認キー/ (”日本語でナデシコ”と記入)
 

Pass/

BBS CGI RSS CGI
Child Tree RSS/SPAM対応版