Files
docx-js/docs/usage/text.md
2020-05-22 12:32:40 +08:00

2.7 KiB

Text Runs

!> TextRuns requires an understanding of Paragraphs.

You can add multiple text runs in Paragraphs. This is the most verbose way of writing a Paragraph but it is also the most flexible:

import { Paragraph, TextRun } from "docx";

const paragraph = new Paragraph({
    children: [new TextRun("My awesome text here for my university dissertation"), new TextRun("Foo Bar")],
});

Text objects have methods inside which changes the way the text is displayed.

Typographical Emphasis

More info here

Bold

const text = new TextRun({
    text: "Foo Bar",
    bold: true,
});

Italics

const text = new TextRun({
    text: "Foo Bar",
    italics: true,
});

Underline

Underline has a few options

Options

Property Type Notes Possible Values
type UnderlineType Optional SINGLE, WORD, DOUBLE, THICK, DOTTED, DOTTEDHEAV, DASH, DASHEDHEAV, DASHLONG, DASHLONGHEAV, DOTDASH, DASHDOTHEAVY, DOTDOTDAS, DASHDOTDOTHEAVY, WAVE, WAVYHEAVY, WAVYDOUBLE
color string Optional Color Hex values

Example:

const text = new TextRun({
    text: "and then underlined ",
    underline: {
        type: UnderlineType.DOUBLE,
        color: "990011",
    },
});

To do a simple vanilla underline:

const text = new TextRun({
    text: "and then underlined ",
    underline: {},
});

Emphasis Mark

const text = new TextRun({
    text: "and then emphasis mark",
    emphasisMark: {},
});

Strike through

text.strike();

Double strike through

text.doubleStrike();

Superscript

text.superScript();

Subscript

text.subScript();

All Capitals

text.allCaps();

Small Capitals

text.smallCaps();

Break

Sometimes you would want to put text underneath another line of text but inside the same paragraph.

text.break();

Chaining

What if you want to create a paragraph which is bold and italic?

paragraph.bold().italics();