1

法定サイズに印刷しようとしている画像があります。ただし、これにはいくつかの課題があります。

  1. 画像はサイズが異なります。これは、印刷オプションが制限されているが画像にエクスポートできるコントロールを使用しているためです。
  2. ページの印刷領域を最大化したい。可能な限り最小のマージン
  3. ユーザーは、プリンターを選択してオプションを設定できる必要があります

私が使用しているコードは次のとおりです。

 PrintDocument pd = new PrintDocument();
            pd.PrintPage += (sender, args) =>
            {
                Image i = Image.FromFile(Globals.TempDirectory + @"\temp.jpg");
                Point p = new Point(100, 100);
                Margins margins = new Margins(50, 50, 50, 50);
                pd.DefaultPageSettings.Margins = margins;
                args.Graphics.DrawImage(i, p);
            };
            pd.Print();

マージンを設定できず、正しく印刷できないように見えるため、これに問題がありました。合法的に印刷したいのですが、画像を印刷すると、適切に回転せず、デフォルトのプリンターに印刷されます。私はこれを機能させるために何でもします。

4

1 に答える 1

-1

C#での印刷は最悪

試してみてください

printdialog() 

ユーザーがプリンターと設定を選択できるようにします。それが機能するようになると、残りはあなたのためにクリックするかもしれません.

編集:どこでどのように使用するかを示します。

PrintDialog pDialog = new PrintDialog();
if (pDialog.ShowDialog() == DialogResult.OK)
{
   pd.PrinterSettings = pDialog.PrinterSettings;
   pd.Print();
}
于 2012-05-22T14:42:54.550 に答える