* #239 Embedded fonts * Add boilerplate for font table * Fix linting * Fix linting * Fix odttf naming * Correct writing of fonts to relationships and font table new uuid function * Add font to run * Add demo Fix tests * Add character set support * Add tests * Write tests
45 lines
1.2 KiB
TypeScript
45 lines
1.2 KiB
TypeScript
// Simple example to add text to a document
|
|
|
|
import * as fs from "fs";
|
|
import { Document, Packer, Paragraph, Tab, TextRun } from "docx";
|
|
|
|
const font = fs.readFileSync("./demo/assets/Pacifico.ttf");
|
|
|
|
const doc = new Document({
|
|
styles: {
|
|
default: {
|
|
document: {
|
|
run: {
|
|
font: "Pacifico",
|
|
},
|
|
},
|
|
},
|
|
},
|
|
sections: [
|
|
{
|
|
properties: {},
|
|
children: [
|
|
new Paragraph({
|
|
children: [
|
|
new TextRun("Hello World"),
|
|
new TextRun({
|
|
text: "Foo Bar",
|
|
bold: true,
|
|
size: 40,
|
|
}),
|
|
new TextRun({
|
|
children: [new Tab(), "Github is the best"],
|
|
bold: true,
|
|
}),
|
|
],
|
|
}),
|
|
],
|
|
},
|
|
],
|
|
fonts: [{ name: "Pacifico", data: font, characterSet: "00" }],
|
|
});
|
|
|
|
Packer.toBuffer(doc).then((buffer) => {
|
|
fs.writeFileSync("My Document.docx", buffer);
|
|
});
|