5

Open XML で .docx を生成する際に奇妙な問題があります。その後、次のように生成されたTableCellがあります。ParagraphRunText

tblRow.Append(new TableCell(new Paragraph(GetPropertiesForStyle("TableDescription"), new Run(new Text(colName)))));

このGetPropertiesForStyleメソッドはParagraphProperties、特定の段落の を返し、スタイルを設定します。これはすべて正常に機能しますが、テーブル行内では、最初のセルの前に二重の間隔があり、最後のセルの後に二重の間隔があるように見えます-中央のすべてのセルは完全にうまく見えます.

ここに画像の説明を入力

私のスタイル構成は次のようになります。

new Style(
    new StyleName() { Val = "TableDescription" },
    new StyleParagraphProperties(
        new ParagraphBorders(
            new BottomBorder() { Val = BorderValues.None }
        ),
        new SpacingBetweenLines() { Before = "100", After = "100", Line = "200", LineRule = LineSpacingRuleValues.Exact },
        new TableCellVerticalAlignment() { Val = TableVerticalAlignmentValues.Center }
    )
),

生産性向上ツールを使用して生成された XML を確認したところ、プロパティが完全に適用されています。それぞれTableCellに次の構成があります (いくつかの余分な余白プロパティと、簡潔にするために省略したシェーダー塗りつぶしがあります)。

<w:tc>
    <w:p>
        <w:pPr>
            <w:pStyle w:val="TableDescription" />
        </w:pPr>
        <w:r>
            <w:t>Reporting Period</w:t>
        </w:r>
    </w:p>
</w:tc>

何が起こっているのですか?

4

1 に答える 1

5

私のスタイルに以下を追加することで、これを修正することができました:

new ContextualSpacing() { Val = false }

段落オプションで同じスタイルの段落間にスペースを追加しないでください

于 2012-09-19T15:39:57.177 に答える