w:position (Vertical Text Position)
Raises or lowers text in a run relative to the baseline, expressed in half-points.
Parent elements
Description
w:position shifts characters in a run vertically relative to the text baseline. A positive value raises the text (superscript-like effect); a negative value lowers it (subscript-like effect). Unlike w:vertAlign, this element does not reduce the font size — the characters remain at their declared size.
It is defined in ECMA-376 Part 1 §17.3.2.36.
Attributes
| Attribute | Type | Possible Values | Description |
|---|---|---|---|
w:val |
ST_SignedHpsMeasure |
Signed integer in half-points (e.g. 12 = 6 pt raised, -8 = 4 pt lowered) |
Vertical offset from the text baseline. Positive = up, negative = down. |
Examples
<!-- Raised by 6 pt -->
<w:r>
<w:rPr>
<w:position w:val="12"/>
<w:sz w:val="16"/>
</w:rPr>
<w:t>raised</w:t>
</w:r>
<!-- Lowered by 4 pt -->
<w:r>
<w:rPr>
<w:position w:val="-8"/>
</w:rPr>
<w:t>lowered</w:t>
</w:r>
using DocumentFormat.OpenXml.Wordprocessing;
// Raised 6 pt (12 half-points)
var raised = new Run(
new RunProperties(
new Position { Val = "12" },
new FontSize { Val = "16" }
),
new Text("raised")
);
// Lowered 4 pt (8 half-points)
var lowered = new Run(
new RunProperties(new Position { Val = "-8" }),
new Text("lowered")
);
Notes
w:positiondoes not scale the font — contrast withw:vertAlign(superscript/subscript), which both shifts and reduces font size.- Use
w:positionfor precise baseline adjustments, e.g. for custom ordinal indicators or footnote markers at a specific offset. - Values are in half-points:
2= 1 pt,12= 6 pt.