【问题标题】:DefaultPageSettings.Margins not adding marginsDefaultPageSettings.Margins 不添加边距
【发布时间】:2017-03-09 07:37:21
【问题描述】:

基于documentation,添加这些代码应该会为打印文档添加边距,但是当我在代码中使用它时,我看不到添加任何边距。我对代码的使用是否正确?这是来自 MSDN 的代码:

 printFont = new Font("Arial", 10);
 PrintDocument pd = new PrintDocument(); 
 pd.PrintPage += new PrintPageEventHandler(pd_PrintPage);
 pd.PrinterSettings.PrinterName = printer;
 Margins margins = new Margins(100,100,100,100);
 pd.DefaultPageSettings.Margins = margins;
 pd.Print();

这是我的代码:

printDoc = new PrintDocument();
PrinterSettings printSettings = new PrinterSettings();
PaperSize paperSize = new PaperSize("Receipt", 350, 700);

Margins margin = new Margins(2000, 1000, 2000, 1000);
printDoc.DefaultPageSettings.PaperSize = paperSize;

printDoc.PrintPage += new PrintPageEventHandler(pdoc_PrintPage);
PrintPreviewDialog printPreview = new PrintPreviewDialog();
printPreview.Document = printDoc;
DialogResult result = printPreview.ShowDialog();
printDoc.DefaultPageSettings.Margins = margin;
if (result == DialogResult.OK)
{
    printDoc.Print();
}

【问题讨论】:

    标签: c# wpf margins printdocument


    【解决方案1】:

    之所以没有影响文档的边距是因为我没有将OriginAtMargins的值改为true。所以你需要把它从PrintDocument()改成这样:

    New printDoc = new PrintDocument();
    printDoc.OriginAtMargins = true; //Default is false
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-12
      • 1970-01-01
      • 1970-01-01
      • 2013-10-25
      • 2022-01-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多