我遇到一个从WPF项目打印奇怪的问题。我正在为报告目的打印应用程序的屏幕截图,并且所有的工作都很好。目前用户按下打印,出现打印对话框,并打印出捕获图像。打印没有ShowDialog给出空白页
但是,我希望能够直接打印到默认打印机而不显示对话框。这应该通过注释ShowDialog()
声明轻松完成,并让剩下的事情发生。打印机仍然打印,但页面始终为空。 任何人都可以解释这种行为?
private void PrintCurrentScreen()
{
PrintDialog PD = new PrintDialog();
PD.PrintTicket.OutputColor = OutputColor.Grayscale;
PD.PrintTicket.OutputQuality = OutputQuality.Draft;
PrintTicket PT = new PrintTicket();
PT.PageOrientation = PageOrientation.Landscape;
PT.CopyCount = 1;
PT.PageBorderless = System.Printing.PageBorderless.Borderless;
//---Blank pages print when commented out---//
//if (PD.ShowDialog() == true)
//{
PD.PrintTicket = PT;
DrawingVisual DV = new DrawingVisual();
DV.Offset = new Vector(20, 20);
DrawingContext DC = DV.RenderOpen();
DC.DrawImage(previewimage.Source, new Rect(new Size(PD.PrintableAreaWidth - 40, PD.PrintableAreaHeight - 40)));
DC.Close();
PD.PrintVisual(DV, "TEST");
//}
}
你有没有发现这方面的任何解决方案,我有同样的问题,但问题是,这发生在一些具有不同操作系统的PC上 - 并非全部 - – safi