34

OpenXmlを使用して、単純なテキストとこのテキストの下にいくつかのテーブルを含むWord文書を作成します。このテキストを含む段落を常に新しいページに表示するにはどうすればよいですか?たぶん、この段落はヘッダーになるはずですが、これを行う方法がわかりません。

ありがとう

4

2 に答える 2

49

要素を使用して、Run要素内にページ分割を作成できます<w:br>。生のOpenXMLでは、次のようになります。

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

OpenXml SDKを使用している場合は、次を使用できます。

new Paragraph(
  new Run(
    new Break(){ Type = BreakValues.Page }));

編集:

段落がページの最後のものであることを指定したいだけの場合は、<w:lastRenderedPageBreak />タグを試すことができます。

new Paragraph(
   new Run(
      new LastRenderedPageBreak(),
      new Text("Last text on the page")));
于 2010-05-12T20:33:25.450 に答える
14

PageBreakBeforeプロパティはこれを実現します。Wordが自動的にページ分割を挿入しなかった場合、段落の前にページ分割が挿入されます。

if (myParagraph.ParagraphProperties== null) 
{ 
    myParagraph.ParagraphProperties = new ParagraphProperties();
}

myParagraph.ParagraphProperties.PageBreakBefore = new PageBreakBefore();

OpenXMLでは次のように見えると思います。

  <w:p>
    <w:pPr>
      ...
      <w:pageBreakBefore/>   
      ...
    </w:pPr>
    ...    
  </w:p>
于 2011-09-29T23:25:14.037 に答える