【问题标题】:PDFsharp & MigraDoc: PDF layout page endingPDFsharp & MigraDoc:PDF 布局页面结束
【发布时间】:2017-04-14 17:17:40
【问题描述】:

我正在使用 PDFsharp 和 MigraDoc 创建 PDF 文档。昨天我遇到了页面结束的问题。我有一个循环数据,例如 10 个项目。在每次迭代中,我都需要创建这样的文档 ->

然后将其保存为一个 PDF 文档。正如我们所见,我在页面上有几个可以动态增加的块。如何检测页面结束在下一页继续绘制字符串?以及如何检测第一段的结尾以添加第二段(或仅附加到结尾)?我尝试使用 paragraph.AddText() 并没有在下一页继续,只是无处可去。从 PDFsharp 和 MigraDoc 的文档中,我找不到对应的示例。这是我尝试进行一次迭代的尝试download exampleexample 2 download。我将非常感谢一些可以帮助我的代码。

【问题讨论】:

    标签: c# pdf pdf-generation pdfsharp migradoc


    【解决方案1】:

    您没有显示任何代码。你提到了AddText(),所以我假设你使用 MigraDoc。

    可以在此处找到 MigraDoc 示例:
    http://www.pdfsharp.net/wiki/MigraDocSamples.ashx

    使用 MigraDoc,您通常不必关心分页符,因为 MigraDoc 会自动将段落分到下一页。至少这是您使用 renderer.RenderDocument() 创建文档时的默认行为。
    您可以在需要时使用Section.AddPageBreak() 强制分页。

    有关 MigraDoc 和 RenderDocument() 的推荐用法,请参阅此示例:
    http://www.pdfsharp.net/wiki/HelloMigraDoc-sample.ashx

    【讨论】:

    • 目前我没有任何正确的代码部分来生成该pdf。我正在尝试使用样本,但在所有样本上我都有类似的问题。示例中的一个解释了当你有很多行时如何使用它,但是在对示例作者的评论中说,如果你有换行符,那么它不适合你。这就是我现在要为自己纠正的link to sample。一般来说,我只有循环,我需要将每个项目填充到我提供的文档中。谢谢。
    • 作为我之前尝试的示例,我可以分享这个控制台应用程序。这是一个迭代的示例download 在 sln 附近的存档内,您可以找到带有数据的 txt 文档。
    • “混合 MigraDoc 和 PDFsharp”示例显示了一种特殊情况,您需要对分页符负责。使用 MigraDoc,如其他示例所示(使用 renderer.RenderDocument()),您将获得自动分页符。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-19
    相关资源
    最近更新 更多