private void WriteRowDefinition(Stream result) {
byte[] t;
result.Write(ROW_BEGIN, 0, ROW_BEGIN.Length);
this.document.OutputDebugLinebreak(result);
result.Write(ROW_WIDTH_STYLE, 0, ROW_WIDTH_STYLE.Length);
result.Write(ROW_WIDTH, 0, ROW_WIDTH.Length);
result.Write(t = IntToByteArray(this.width), 0, t.Length);
if (this.parentTable.GetCellsFitToPage()) {
result.Write(ROW_KEEP_TOGETHER, 0, ROW_KEEP_TOGETHER.Length);
}
if (this.rowNumber <= this.parentTable.GetHeaderRows()) {
result.Write(ROW_HEADER_ROW, 0, ROW_HEADER_ROW.Length);
}
switch (this.parentTable.GetAlignment()) {
case Element.ALIGN_LEFT:
result.Write(ROW_ALIGN_LEFT, 0, ROW_ALIGN_LEFT.Length);
break;
case Element.ALIGN_RIGHT:
result.Write(ROW_ALIGN_RIGHT, 0, ROW_ALIGN_RIGHT.Length);
break;
case Element.ALIGN_CENTER:
result.Write(ROW_ALIGN_CENTER, 0, ROW_ALIGN_CENTER.Length);
break;
case Element.ALIGN_JUSTIFIED:
case Element.ALIGN_JUSTIFIED_ALL:
result.Write(ROW_ALIGN_JUSTIFIED, 0, ROW_ALIGN_JUSTIFIED.Length);
break;
}
result.Write(ROW_GRAPH, 0, ROW_GRAPH.Length);
RtfBorderGroup borders = this.parentTable.GetBorders();
if (borders != null) {
borders.WriteContent(result);
}
if (this.parentTable.GetCellSpacing() > 0) {
result.Write(ROW_CELL_SPACING_LEFT, 0, ROW_CELL_SPACING_LEFT.Length);
result.Write(t = IntToByteArray((int) (this.parentTable.GetCellSpacing() / 2)), 0, t.Length);
result.Write(ROW_CELL_SPACING_LEFT_STYLE, 0, ROW_CELL_SPACING_LEFT_STYLE.Length);
result.Write(ROW_CELL_SPACING_TOP, 0, ROW_CELL_SPACING_TOP.Length);
result.Write(t = IntToByteArray((int) (this.parentTable.GetCellSpacing() / 2)), 0, t.Length);
result.Write(ROW_CELL_SPACING_TOP_STYLE, 0, ROW_CELL_SPACING_TOP_STYLE.Length);
result.Write(ROW_CELL_SPACING_RIGHT, 0, ROW_CELL_SPACING_RIGHT.Length);
result.Write(t = IntToByteArray((int) (this.parentTable.GetCellSpacing() / 2)), 0, t.Length);
result.Write(ROW_CELL_SPACING_RIGHT_STYLE, 0, ROW_CELL_SPACING_RIGHT_STYLE.Length);
result.Write(ROW_CELL_SPACING_BOTTOM, 0, ROW_CELL_SPACING_BOTTOM.Length);
result.Write(t = IntToByteArray((int) (this.parentTable.GetCellSpacing() / 2)), 0, t.Length);
result.Write(ROW_CELL_SPACING_BOTTOM_STYLE, 0, ROW_CELL_SPACING_BOTTOM_STYLE.Length);
}
result.Write(ROW_CELL_PADDING_LEFT, 0, ROW_CELL_PADDING_LEFT.Length);
result.Write(t = IntToByteArray((int) (this.parentTable.GetCellPadding() / 2)), 0, t.Length);
result.Write(ROW_CELL_PADDING_RIGHT, 0, ROW_CELL_PADDING_RIGHT.Length);
result.Write(t = IntToByteArray((int) (this.parentTable.GetCellPadding() / 2)), 0, t.Length);
result.Write(ROW_CELL_PADDING_LEFT_STYLE, 0, ROW_CELL_PADDING_LEFT_STYLE.Length);
result.Write(ROW_CELL_PADDING_RIGHT_STYLE, 0, ROW_CELL_PADDING_RIGHT_STYLE.Length);
this.document.OutputDebugLinebreak(result);
for (int i = 0; i < this.cells.Count; i++) {
RtfCell rtfCell = (RtfCell) this.cells[i];
rtfCell.WriteDefinition(result);
}
}