At this point, only background-color is supported. Add support for bgcolor attribute as well. It could be used with the following tags: body, marquee, table, tBody, td, tFoot, th, tHead, tr.
There are 27 types of border styles in the Open XML specification and they are implemented in RadFlowDocument. Part of the borders are already supported (eg. None, Single, Dotted) when exporting to HTML, all others are treated as None and stripped.
The HTML format doesn't support all types of border styles OOXML format supports.
Such objects are defined as oleObject elements in the XML:
<w:object w:dxaOrig="3795" w:dyaOrig="3555">
<v:shape id="_x0000_i1026" type="#_x0000_t75" style="width:32.85pt;height:30.55pt" o:ole="" fillcolor="window">
<v:imagedata r:id="rId9" o:title=""/>
</v:shape>
<o:OLEObject Type="Embed" ProgID="PBrush" ShapeID="_x0000_i1026" DrawAspect="Content" ObjectID="_1647182330" r:id="rId10"/>
</w:object>
Currently, they are skipped on import.
Wrongly imported/exported table cells from nested tables (see the picture below).
There is a discrepancy between RadWordsProcessing and MS Word:
A possible workaround could be to set the row height the same as the image height:row.Height = new TableRowHeight(HeightType.Exact, image.Image.Height);
Wrongly exported table width when the table preferred width is set to fixed:
<w:tblW w:w="11160" w:type="dxa"/>
and it is greater than the available page width:
<w:pgSz w:w="12240" w:h="15840"/>
<w:pgMar w:top="630" w:right="1440" w:bottom="540" w:left="1440" w:header="720" w:footer="720" w:gutter="0"/>
Available page width = 12240 - (1440 + 1440) = 9360
A possible workaround is to set the page width to Auto:
IEnumerable<Table> tables = document.EnumerateChildrenOfType<Table>();
foreach (Table table in tables)
{
if (table.PreferredWidth.Type == TableWidthUnitType.Fixed)
{
table.PreferredWidth = new TableWidthUnit(TableWidthUnitType.Auto, table.PreferredWidth.Value);
}
}