【问题标题】:Margin in MigraDocMigraDoc 中的保证金
【发布时间】:2014-12-07 20:03:54
【问题描述】:

我正在使用 MigraDoc 和 PDFsharp,我需要为我的 PDF 文档中的每一页设置不同的边距。 使用

  document.DefaultPageSetup.RightMargin = 20;
  document.DefaultPageSetup.LeftMargin = 20;

我发现我的文档中的所有页面都有相同的边距。 如何设置文档中每一页的边距? 谢谢

【问题讨论】:

    标签: c# margins migradoc


    【解决方案1】:

    你不应该修改 DefaultPageSetup。

    您可以在文档中创建多个部分。您可以根据需要为每个部分设置 PageSetup。

    一个部分中的所有页面都将具有相同的页面大小 (PageSetup)。我假设您只有一个部分,因此您更改了所有页面。

    【讨论】:

    • 它有效。我错误地认为我可以设置“document.DefaultPageSetup.RightMargin = 20;”设置文档的所有页面,然后使用“sixthPage.PageSetup.RightMargin = 0;”覆盖特定页面。感谢您的帮助。
    • 很高兴听到它有效。当您创建 MigraDoc 文档时,会有部分和段落,但没有页面。渲染为 PDF 时会创建页面。我不确定您需要什么,但 MigraDoc 允许为偶数页和奇数页设置不同的边距以支持双面打印;此外,您可以为部分的第一页设置不同的边距。另一种可行的方法:为所有页面设置最小边距,为某些段落格式设置较大的边距。这允许在一页上混合不同的边距 - 如果不需要,只需添加分页符。
    • 最后两句话打消了我的疑惑。我使用不同的边距将一些表格和图像放在页面中我需要的位置。我无法将表格或图像放在页面上的某个位置,所以我通过使用边距来解决问题。
    • 您可以将table.Rows.LeftIndent 设置为缩进表格。有很多选项可以在页面上定位图像(相对或绝对),因此恕我直言,无需使用页边距来实现这一点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多