Tengo un extraño problema al generar un .docx con Open XML. Tengo un TableCell
que tiene un Paragraph
continuación Run
continuación Text
generado de esta manera:Open XML Paragraph Spacing
tblRow.Append(new TableCell(new Paragraph(GetPropertiesForStyle("TableDescription"), new Run(new Text(colName)))));
El método devuelve el GetPropertiesForStyle
ParagraphProperties
para el párrafo específico y establece el estilo. Todo esto funciona bien, sin embargo, dentro de la fila de la tabla, la primera celda parece tener doble espacio antes y la última celda tiene doble espacio después: todas las celdas del centro se ven perfectamente bien.
Mi estilo de configuración es el siguiente:
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 }
)
),
He comprobado el código XML producido usando la herramienta de la productividad y de la aplicación de las propiedades perfectamente bien. Cada TableCell
tiene la siguiente configuración (hay algunas propiedades de margen adicionales allí y un relleno de sombreado que he omitido por brevedad).
<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>
¿Alguna idea de qué está pasando?