-
Notifications
You must be signed in to change notification settings - Fork 0
Configuration Word Theme
output.wordTheme styles the generated .docx. It is entirely optional: omit the block and you get a fully-styled default document.
Word-scoped only. The PDF output is unthemed.
Most projects only need one line — a brand colour. Headings, table headers, row banding, rules and code colour are all derived from it:
output:
wordTheme:
accentColor: '#0F62FE'Colours accept '#0F62FE' or '0f62fe'. An invalid colour logs a warning and falls back to the default — it never fails the run.
Setting a derived field overrides only that field.
| Field | Default | Notes |
|---|---|---|
accentColor |
#2A6099 |
Brand colour. Everything below marked "derived" comes from it. |
bodyFont |
Calibri |
|
headingFont |
bodyFont if set, else Calibri Light
|
|
bodyFontSize |
10.5 |
Points |
bodyColor |
#1A1A1A |
Near-black, deliberately not pure black |
headingColor |
derived (accentColor) |
Levels 3–4 are auto-darkened |
headingRule |
true |
Rule under level-1 headings |
tableHeaderFill |
derived | |
tableHeaderColor |
derived — white or near-black, whichever contrasts | Chosen by WCAG relative luminance, so a pale brand colour automatically gets dark text |
tableBanding |
true |
When on, inside horizontal borders are dropped — the shading already separates rows |
tableFontSize |
9 |
Points. See the warning below. |
tableBandFill |
derived — 92% tint towards white | |
tableBorderColor |
derived — 70% tint towards white | |
codeFont |
Courier New |
|
codeFill |
#F2F2F2 |
|
codeColor |
derived — accentColor darkened 35% |
tableFontSize is load-bearing, not cosmetic. Column widths are measured at exactly this size. Raise it and columns widen to match — there is no separate width knob to keep in sync. It defaults a step below body text because these tables are dense and wide, and body size forces mid-word wrapping.
Code size is not themeable. It is fixed at 9pt, as a deliberate relationship to body size (monospace reads larger at equal nominal size). Inside a table it is clamped to the table size so code never outsizes its cell.
Fonts are resolved by Word on whatever machine opens the document, and missing fonts are silently substituted. The defaults are all Office-bundled for that reason — stick to fonts you know every reader has.