按预期发出打印图像

时间:2012-05-22 13:29:15

标签: c# .net winforms image printing

我有一张图片,我正在尝试打印到合法尺寸。但是,这有一些挑战。

  1. 图像大小不一。这是因为我使用的控件具有有限的打印选项,但可以导出到图像。
  2. 我想最大化页面上的打印区域。可能的最小保证金
  3. 用户需要能够选择打印机并设置选项
  4. 这是我正在使用的代码:

     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();
    

    我一直遇到麻烦,因为我无法设置边距,似乎无法正确打印出来。我希望它合法打印,但是当我打印图像时,它没有正确旋转,只是打印到默认打印机。我需要做任何事来让它发挥作用。

1 个答案:

答案 0 :(得分:-1)

在C#中打印糟透了

尝试

printdialog() 

允许用户选择打印机和设置。一旦你开始工作,其余部分可能会为你点击。

编辑:显示您在何处以及如何使用它。

PrintDialog pDialog = new PrintDialog();
if (pDialog.ShowDialog() == DialogResult.OK)
{
   pd.PrinterSettings = pDialog.PrinterSettings;
   pd.Print();
}