0

所以我从一个启用了自动换行的文本框中打印出一些文本,但是当我打印出文档时,应该自动换行的字符串不会,并且会在页面上截断。我想简单地为我的打印文档启用自动换行。还有一种方法可以设置打印文档的边距,一些文本会从顶部和左侧边距中截断。谢谢!下面附上代码。

        FixedDocument document = new FixedDocument();
        document.DocumentPaginator.PageSize = new Size(printDlg.PrintableAreaWidth, printDlg.PrintableAreaHeight);

        FixedPage page1 = new FixedPage();
        page1.Width = document.DocumentPaginator.PageSize.Width;
        page1.Height = document.DocumentPaginator.PageSize.Height;
        MessageBox.Show(page1.Height.ToString() + page1.Width);

        GridType.Children.Remove(Textbox);
        page1.Children.Add(Textbox);

        PageContent page1Content = new PageContent();

        ((IAddChild)page1Content).AddChild(page1);
        document.Pages.Add(page1Content);

        printDlg.PrintDocument(document.DocumentPaginator, "My first document");

        page1.Children.Remove(Textbox);
        GridType.Children.Add(Textbox);
4

1 回答 1

0

您的文本框设置不会应用于 PrintDoc .. 您必须在您的printdoc printpage 事件中重新计算所有内容

于 2013-07-11T15:09:31.820 回答