【问题标题】:WPF - Print content on same pageWPF - 在同一页面上打印内容
【发布时间】:2011-10-18 05:32:54
【问题描述】:

我需要在单击“保存”按钮时打印 WPF 表单内容。内容是纯文本,每行都是名称值对。我不需要在连续保存时分页符。

我已经尝试了 PrintDialog、FlowDocument 和 FixedDocument 的示例,但无法避免分页符。 我有什么特别的设置吗? PrintDialog 的任何替代品?

代码:

 Paragraph myParagraph = new Paragraph();
 myParagraph.Margin = new Thickness(0);
 **myParagraph.BreakPageBefore = false;**
 foreach (string line in textToPrint.Split(new string[] { Environment.NewLine }, StringSplitOptions.None))
 {              
     myParagraph.Inlines.Add(new Run(line));              
 }
 flowDocument.Blocks.Add(myParagraph);
 DocumentPaginator paginator = ((IDocumentPaginatorSource)flowDocument).DocumentPaginator;
 printDialog.PrintDocument(paginator, "Test Page");

【问题讨论】:

    标签: wpf printing


    【解决方案1】:

    据我所知,新的打印作业(文档)从新页面开始。如果您不想分页符,请收集您要打印的所有值,然后打印它们。

    【讨论】:

    • 如果您不想分页符,请收集您要打印的所有值,然后打印它们。我应该为此使用 Win32 API 还是在 C#/WPF 本身中使用它?
    • 目前您正在创建一个文档,每次用户按下按钮。相反,创建一个文档并将数据添加到该文档。添加完所有数据后,打印文档。
    • 我需要在每次保存后打印。即使我尝试重用 Document 对象并仅打印新内容,我也必须确保它针对同一页面并且不会在其间插入分页符。目标打印机很可能是点阵打印机。
    猜你喜欢
    • 1970-01-01
    • 2011-09-27
    • 2018-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-07
    • 1970-01-01
    • 2012-01-29
    相关资源
    最近更新 更多