diff --git a/MariGold.OpenXHTML/Elements/DocxTable.cs b/MariGold.OpenXHTML/Elements/DocxTable.cs
index 26c3278..7c2b57a 100644
--- a/MariGold.OpenXHTML/Elements/DocxTable.cs
+++ b/MariGold.OpenXHTML/Elements/DocxTable.cs
@@ -100,7 +100,14 @@ private void ProcessVerticalSpan(ref int colIndex, TableRow row, DocxTableProper
cell.TableCellProperties = new TableCellProperties();
cell.TableCellProperties.Append(new VerticalMerge());
-
+ // There should be a more elegant solution for drawing borders.
+ cell.TableCellProperties.Append(new LeftBorder() {
+ Val = BorderValues.Single,
+ Color = "auto",
+ Size = (UInt32Value)4U,
+ Space = (UInt32Value)0U
+ });
+ //
cell.AppendChild(new Paragraph());
row.Append(cell);
@@ -124,6 +131,13 @@ private void ProcessTr(DocxNode tr, Table table, DocxTableProperties tableProper
foreach (DocxNode td in tr.Children)
{
+ if (Int32.TryParse(td.ExtractAttributeValue("colspan"), out value))
+ {
+ if (value > 1)
+ {
+ colIndex += value - 1;
+ }
+ }
ProcessVerticalSpan(ref colIndex, row, tableProperties);
tableProperties.IsCellHeader = string.Compare(td.Tag, DocxTableProperties.thName, StringComparison.InvariantCultureIgnoreCase) == 0;