在OpenXML文档的每页顶部插入一张图片

本文关键字:一张 插入 文档 OpenXML 顶部 | 更新日期: 2023-09-27 17:59:04

我在C#for Word中创建OpenXML文档,我发现总是无法确定文档中的分页符。这就产生了以下问题:

我想在每一页的顶部插入一个小图像,它对页面的元素进行了一点概述。

为此,是否可以使用以下条件:

"if(page break reached == true)然后在下一页插入一个小图像"?

我可以在每一段之后使用这个条件,所以我不必知道分页符出现在哪里。任何其他解决方案也会有所帮助。

在OpenXML文档的每页顶部插入一张图片

Word文档不以文件格式分页。确定页面上有哪些对象的唯一方法是使用渲染引擎。Aspose。Words就是一个例子,但它并不便宜。

另一种选择是添加一个标题并将图像放在那里,或者使用水印

您可以通过手动插入分页符来解决问题,只要您想插入图像、xml中的分页符、

 <w:r>
      <w:br w:type="page" />
 </w:r>

您还需要在下一页的内容之前添加lastRenderedPageBreak元素

  <w:r>
    <w:lastRenderedPageBreak />
    <w:t>your content on page 2</w:t>
  </w:r>

在代码中可以获得相同的东西:

    Run run1 = new Run();
    Break break1 = new Break(){ Type = BreakValues.Page }; //Breaks page
    run1.Append(break1); //append your run to paragraph on page 1

在第2页

    Run run2 = new Run();
    LastRenderedPageBreak lastRenderedPageBreak1 = new LastRenderedPageBreak();
    //add your image here in openxml code
    run2.Append(lastRenderedPageBreak1);