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 回答