How to use the docx.TextRun function in docx

To help you get started, we’ve selected a few docx examples, based on popular ways it is used in public projects.

github andreafeccomandi / bibisco / bibisco / app / services / DocxExporterService.js View on Github external
ontext: function (text) {

          const NOT_SAFE_IN_XML_1_0 = /[^\x09\x0A\x0D\x20-\xFF\x85\xA0-\uD7FF\uE000-\uFDCF\uFDE0-\uFFFD]/gm;
          let sanitizedText = text.replace(NOT_SAFE_IN_XML_1_0, '');
          if (currentParagraph) {
            let currentText = new docx.TextRun(sanitizedText);
            currentText.size(fontSize);
            currentText.font(font);
 
            if (boldActive) {
              currentText.bold();
            }
            if(italicsActive) {
              currentText.italic();
            }
            if (underlineActive) {
              currentText.underline();
            }
            if (strikeActive) {
              currentText.strike();
            }
            currentParagraph.addRun(currentText);
github andreafeccomandi / bibisco / bibisco / app / services / DocxExporterService.js View on Github external
h1counter += 1;
            currentParagraph = new docx.Paragraph();
            currentParagraph.pageBreak();
            boldActive = true;
            let currentText = new docx.TextRun(h1counter + ' ');
            currentText.size(fontSize);
            currentText.font(font);
            currentText.bold();
            currentParagraph.addRun(currentText);
            currentParagraph.spacing(h1marginspacing);

          } else if (name === 'h2') {
            h2counter += 1;
            currentParagraph = new docx.Paragraph();
            italicsActive = true;
            let currentText = new docx.TextRun(h1counter + '.' + h2counter + ' ');
            currentText.size(fontSize);
            currentText.font(font);
            currentText.italic();
            currentParagraph.addRun(currentText);
            currentParagraph.spacing(h2counter ===1 ? h2marginspacing1st : h2marginspacing);

          } else if (name === 'h3') {
            h3counter += 1;
            currentParagraph = new docx.Paragraph();
            let currentText = new docx.TextRun(h1counter + '.' + h2counter + '.' + h3counter + ' ');
            currentText.size(fontSize);
            currentText.font(font);
            currentParagraph.addRun(currentText);
            currentParagraph.spacing(h3counter === 1 ? h3marginspacing1st : h3marginspacing);

          } else if (name === 'question') {
github andreafeccomandi / bibisco / bibisco / app / services / DocxExporterService.js View on Github external
currentParagraph = new docx.Paragraph();
            currentParagraph.center();
            currentParagraph.spacing(exportitlespacing);
            boldActive = true;

          } else if (name === 'exportsubtitle') {
            currentParagraph = new docx.Paragraph();
            currentParagraph.center();
            boldActive = true;

          } else if (name === 'h1') {
            h1counter += 1;
            currentParagraph = new docx.Paragraph();
            currentParagraph.pageBreak();
            boldActive = true;
            let currentText = new docx.TextRun(h1counter + ' ');
            currentText.size(fontSize);
            currentText.font(font);
            currentText.bold();
            currentParagraph.addRun(currentText);
            currentParagraph.spacing(h1marginspacing);

          } else if (name === 'h2') {
            h2counter += 1;
            currentParagraph = new docx.Paragraph();
            italicsActive = true;
            let currentText = new docx.TextRun(h1counter + '.' + h2counter + ' ');
            currentText.size(fontSize);
            currentText.font(font);
            currentText.italic();
            currentParagraph.addRun(currentText);
            currentParagraph.spacing(h2counter ===1 ? h2marginspacing1st : h2marginspacing);
github andreafeccomandi / bibisco / bibisco / app / services / DocxExporterService.js View on Github external
} else if (name === 'h2') {
            h2counter += 1;
            currentParagraph = new docx.Paragraph();
            italicsActive = true;
            let currentText = new docx.TextRun(h1counter + '.' + h2counter + ' ');
            currentText.size(fontSize);
            currentText.font(font);
            currentText.italic();
            currentParagraph.addRun(currentText);
            currentParagraph.spacing(h2counter ===1 ? h2marginspacing1st : h2marginspacing);

          } else if (name === 'h3') {
            h3counter += 1;
            currentParagraph = new docx.Paragraph();
            let currentText = new docx.TextRun(h1counter + '.' + h2counter + '.' + h3counter + ' ');
            currentText.size(fontSize);
            currentText.font(font);
            currentParagraph.addRun(currentText);
            currentParagraph.spacing(h3counter === 1 ? h3marginspacing1st : h3marginspacing);

          } else if (name === 'question') {
            currentParagraph = new docx.Paragraph();
            currentParagraph.spacing(paragraphspacing);
            boldActive = true;
            italicsActive = true;
        
          } else if (name === 'ul') {
            unorderedListActive = true;
          } else if (name === 'ol') {
            orderedListActive = true;
          } else if (name === 'p' || name === 'li') {

docx

Easily generate .docx files with JS/TS with a nice declarative API. Works for Node and on the Browser.

MIT
Latest version published 9 days ago

Package Health Score

83 / 100
Full package analysis