C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.77874 の関連記事表示

<< 0 >>
■77874  印刷データの作り方を教えてください。
□投稿者/ ミルク -(2015/11/27(Fri) 14:34:58)

    分類:[.NET 全般] 

    環境は Visualstudio2013 c# .net です。

    文字の印刷方法は調べるとすぐにわかったのですが、
    用紙の、左から14cm、上から3cmのところに
    横5cm、縦6cmの四角形を描きその四角の中に
    拡大縮小した5cm×5cmの画像を入れて、
    その下側の縦の残り1cmのところに文字を入れて
    出力をしたいのですが。

    方法がわかりません。

    ネットを調べても、文字列の印刷、画像の印刷とか帳票の印刷とかで
    位置を合わせて印刷する方法が見当たりませんでした。

    参考になりそうなサイトや、方法を教えてください。


    イメージ的は、画像印刷のように、
    プリンターの印刷可能サイズと同じ縦横ピクセルサイズの Image を作成して
    描画したものを印刷するとできそうな気がしますが。
    なんだか原始的な方法みたいですね。

    もっといい方法があるのでしょうか?
親記事 /過去ログ132より / 関連記事表示
削除チェック/

■77906  Re[1]: 印刷データの作り方を教えてください。
□投稿者/ ぶなっぷ -(2015/11/30(Mon) 10:23:31)
>
記事No.77874 のレス /過去ログ132より / 関連記事表示
削除チェック/

■77921  Re[1]: 印刷データの作り方を教えてください。
□投稿者/ よもやま -(2015/12/01(Tue) 18:35:18)
    No77874 (ミルク さん) に返信
    > 環境は Visualstudio2013 c# .net です。
    >
    1.印字位置に関して
    参考までに。
    検索キーワード「C# 印刷 drawing printing」
    http://www.ipentec.com/document/document.aspx?page=csharp-printer-print&culture=ja-jp

    2.位置合わせに関して
    プリンタのメーカーや使用している用紙の様式(例えば、宅配業者が使うような複写式の連続帳票)にあわせて
    印字位置、改ページを調整するしかないのではないでしょうか。
    例えば、ドットインパクトでロール式の場合
    帳票サイズを設定しても改ページ後、微妙にずれたりします。
    こればっかりは何度か試行錯誤して
    ・ミリやインチ単位の位置調整用処理をいれる
    ・印字ページ数範囲を決め、人の操作でロール位置を調整してもらう
    など対策をとるとよいと思います。

    3.画像の印刷
    参考までに。。
    検索キーワード「C# 印刷 drawing printing」
    http://dobon.net/vb/dotnet/graphics/printdocument.html

記事No.77874 のレス /過去ログ132より / 関連記事表示
削除チェック/

■77937  Re[2]: 印刷データの作り方を教えてください。
□投稿者/ ミルク -(2015/12/02(Wed) 08:56:55)
    以下のように

    幅 0.25mm で 左 15mm 上 22mm 幅 140mm 高さ 140mm の四角形を
    印刷すると、実際の左は約 19.5mm 上は約 25.5mm で印刷されました。
    これは印刷のずれによるものでしょうか?
    それとも、余白等の処理をする必要があるのでしょうか?

    e.MarginBunds = (100, 100, 969, 627) です。
    左も上も 100 に対して左が 4.5mm,上が 3.5mm のずれで異なります。

    それに 100ミリインチ だと 25.4mm に相当するので余白は関係ないですよね。


    private void pd_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e)
    {
     e.Graphics.PageUnit = GraphicsUnit.Inch;
     e.Graphics.DrawRectangle(new Pen(Color.Black, 0.25f / 25.4f), 15f / 25.4f, 22f / 25.4f, 140f / 25.4f, 140f / 25.4f);
    }
記事No.77874 のレス /過去ログ132より / 関連記事表示
削除チェック/

■77939  Re[3]: 印刷データの作り方を教えてください。
□投稿者/ furu -(2015/12/02(Wed) 09:52:23)
    No77937 (ミルク さん) に返信
    > e.MarginBunds = (100, 100, 969, 627) です。

    ハードマージン(System.Drawing.Printingの
    HardMarginX,HardMarginY)はどれくらいですか?
記事No.77874 のレス /過去ログ132より / 関連記事表示
削除チェック/

■77951  Re[4]: 印刷データの作り方を教えてください。
□投稿者/ ミルク -(2015/12/03(Thu) 08:48:32)
    No77939 (furu さん) に返信
    > ■No77937 (ミルク さん) に返信

    > ハードマージン(System.Drawing.Printingの
    > HardMarginX,HardMarginY)はどれくらいですか?

    16でした。

    これを考慮すると
    ほぼ1mm以内の誤差内で印刷できるようになりました。
    ありがとうございます。
記事No.77874 のレス / END /過去ログ132より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -