1
我试图在C#中使用PrintDocument
打印图像,但在打印和预览时忽略设置(如页数和图像质量)。PrinterSetting在打印图像时被忽略
下面的代码有什么不对吗,我错过了什么吗?
private void button1_Click(object sender, EventArgs e)
{
using (var printDialog = new PrintDialog())
{
if (printDialog.ShowDialog() == DialogResult.OK)
{
_printDocument.PrinterSettings = printDialog.PrinterSettings;
}
}
}
void _printDocument_Print(object sender, PrintPageEventArgs e)
{
using (Image image = new Bitmap("image0002.tif"))
{
e.Graphics.DrawImage(image, e.MarginBounds.X, e.MarginBounds.Y);
}
}
这确实有助于理解PrintDialog的工作方式,但是有什么方法可以将'PrinterSettings'设置为使用'PrintDialog'进行文档打印,并在稍后使用另一个按钮进行打印? – 2010-09-03 08:37:08
@Prashant - 我想你可以只显示'PrintDialog'并忽略结果,让它与文档的设置交互,看它是否合适。我在猜测,如果用户点击“取消”,这些更改将被丢弃,其他任何内容都应该被应用,但是我已经使用过这些东西已经有一段时间了。看我的编辑。 – 2010-09-03 08:54:14