Skip to content

API reference / Common / Engine types / TableProperties

Interface: TableProperties ​

A table's own properties — the a:tblPr / w:tblPr union.

Used in three places, which is why it is a shared type: the table instance, a w:style[@type="table"]'s own w:tblPr and each of its w:tblStylePr regions, and a row's w:tblPrEx. The pptx side has only the first — a DrawingML table style carries no table-level properties at all.

Properties ​

PropertyDescription
style?
TableStyleRef
a:tableStyleId / a:tblStyle / w:tblStyle — the style this table resolves against. A lookup key, not an inherited value: the resolver reads it off the instance to find the style chain and only then folds properties, so a reference that arrives inside a folded style's own properties is never followed. CT_TblPrBase permits one there and w:basedOn is what actually chains styles, so it is preserved and ignored.
look?
TableLook
The six flags selecting which conditional regions of the style apply. a:tblPr@firstRow @lastRow @firstCol @lastCol @bandRow @bandCol, or w:tblLook — whose band flags are inverted (@noHBand, @noVBand) and which Word writes as 04A0 (first row + first column) into essentially every table, where an absent a:tblPr flag set bands nothing.
background?
PaintFill
a:tblPr's EG_FillProperties / w:tblPr/w:shd — the table's backdrop. Whether it paints under every cell (pptx) or is a default each cell's own fill replaces (docx, ECMA-376 §17.4.33) is a dialect rule the compose settings carry, not a property of the document.
effects?
PaintEffectList
a:tblPr's EG_EffectProperties. pptx-only.
bidi?
boolean
@rtl / w:bidiVisual — lay the columns out right to left.
width?
TableWidth
w:tblW — the table's preferred width, which may contradict the sum of the grid. Both are kept; the layout decides. docx-only (a pptx table takes its frame's extent).
layout?
TableLayout
w:tblLayout — whether the declared grid is authoritative or the columns re-fit to content. docx-only; a pptx grid is always fixed.
alignment?
TableAlignment
w:jc — how the table sits in the text column.
indent?
number
w:tblInd — the indent from the leading margin, in points.
cellSpacing?
number
w:tblCellSpacing — the gap between adjacent cells, in points.
borders?
TableBorders
w:tblBorders. docx-only: a pptx table's edges come from its style's per-part cell borders.
defaultMargins?
TableCellMargins
w:tblCellMar — the padding every cell inherits.
rowBandSize?
number
w:tblStyleRowBandSize — how many rows one horizontal band spans. Always 1 in pptx.
columnBandSize?
number
w:tblStyleColBandSize.
floating?
TableFloating
w:tblpPr — the table floats out of the text flow.
overlap?
TableOverlap
w:tblOverlap — whether a floating table may overlap another.
caption?
string
w:tblCaption — the accessible caption. In pptx this lives on the enclosing frame's a:cNvPr, not in the table.
description?
string
w:tblDescription.