docxtemplater
Sukurkite Word DOCX iš šablonų naudodami „JavaScript“.
„JavaScript“ biblioteka, skirta „Microsoft® Word“ DOCX failams kurti, keisti ir konvertuoti.
Kas yra docxtemplater?
docxtemplater yra atvirojo kodo „JavaScript“ biblioteka, kuri padeda kurti ir redaguoti Word DOCX failus iš šablono. „Word JavaScript“ biblioteka leidžia vartotojams tinkinti sukurtus dokumentus naudojant patį „Word“. Biblioteka yra lengvai valdoma ir nereikalauja jokių techninių įgūdžių norint redaguoti Word šabloną. Bibliotekoje taip pat yra keletas specifinių funkcijų modulių.
docxtemplater biblioteka palaiko keletą funkcijų, susijusių su DOCX failų kūrimu ir tvarkymu, pvz., vaizdų pridėjimą, formatuoto teksto įterpimą į Word dokumentą, antraščių/poraštių įterpimą, vaizdo pakeitimą bet kokiomis esamomis savybėmis, lentelių kūrimą, vandens ženklų teksto pridėjimą, puslapio paraščių atnaujinimą, įterpimą. dokumento išnašos ir daug daugiau.
Kaip įdiegti docxtemplater?
Rekomenduojamas ir lengviausias būdas įdiegti docxtemplater yra per npm. Norėdami sklandžiai įdiegti, naudokite šią komandą.
Įdiekite docxtemplater per npm
npm install docxtemplater pizzip
Sukurkite Word DOCX naudodami „JavaScript“.
docxtemplater biblioteka padeda lengvai kurti DOCX dokumentus Node.js programoje ir naršyklėje. Tai taip pat leidžia modifikuoti esamus DOCX dokumentus, kad būtų galima įterpti lenteles, paveikslėlius, tekstą, pastraipas ir kt.
Atnaujinkite Word DOCX naudodami „JavaScript“.
const PizZip = require("pizzip");
const Docxtemplater = require("docxtemplater");
const fs = require("fs");
const path = require("path");
// Load the docx file as binary content
const content = fs.readFileSync(
path.resolve(__dirname, "input.docx"),
"binary"
);
const zip = new PizZip(content);
const doc = new Docxtemplater(zip, {
paragraphLoop: true,
linebreaks: true,
});
// Render the document (Replace {first_name} by John, {last_name} by Doe, ...)
doc.render({
first_name: "John",
last_name: "Doe",
phone: "0652455478",
});
const buf = doc.getZip().generate({
type: "nodebuffer",
compression: "DEFLATE",
});
// buf is a nodejs Buffer, you can either write it to a
// file or res.send it with express for example.
fs.writeFileSync(path.resolve(__dirname, "output.docx"), buf);
Įterpti ir tvarkyti lenteles „Word“ dokumentuose
docxtemplater biblioteka leidžia programinės įrangos kūrėjams sukurti lentelę, kurioje yra tik kelios JavaScript kodo eilutės. Bibliotekoje yra keli dokumento lentelių kūrimo ir valdymo metodai, pvz., lentelių kūrimas nuo nulio, vertikalios kilpos lentelės kūrimas arba langelių kopijavimas, lentelės langelių sujungimas, eilučių ir stulpelių įterpimas, eilučių pločio ir stulpelio nustatymas. ir taip toliau.
Pridėti išnašą prie „Word“ dokumentų
Nemokama docxtemplater biblioteka apima išnašų įtraukimo į DOCX Word dokumentą palaikymą. Biblioteka suteikia visišką išnašų pritaikymo kontrolę. Galite pridėti skaičius viršutiniame indekse ir lengvai pritaikyti skirtingus išnašos turiniui skirtus stilius.
Pridėkite išnašą prie dokumentų naudodami „JavaScript“.
const imageOpts = {
getProps: function (img, tagValue, tagName) {
/*
* If you don't want to change the props
* for a given tagValue, you should write :
*
* return null;
*/
return {
rotation: 90,
// flipVertical: true,
// flipHorizontal: true,
};
},
getImage: function (tagValue, tagName) {
return fs.readFileSync(tagValue);
},
getSize: function (img, tagValue, tagName) {
return [150, 150];
},
};
const doc = new Docxtemplater(zip, {
modules: [new ImageModule(imageOpts)],
});
Pridėti ir modifikuoti vaizdus DOCX
Atvirojo kodo docxtemplater biblioteka suteikia programuotojams galią įterpti vaizdus į Word dokumentą. Biblioteka leidžia nustatyti vaizdo plotį ir aukštį, lygiuoti vaizdus, pridėti vaizdų antraštes, naudoti kampines išraiškas vaizdo dydžiams nustatyti ir pan. Taip pat galite gauti vaizdo duomenis iš bet kurio duomenų šaltinio, pvz., „base64“ duomenų, failų sistemos, URL ir „Amazon S3“ saugomo vaizdo. Viena puiki bibliotekos savybė yra ta, kad galite išvengti nuotraukų, didesnių nei jų talpykla.
Pasukite ir apverskite vaizdus naudodami „JavaScript“.
const imageOpts = {
getProps: function (img, tagValue, tagName) {
/*
* If you don't want to change the props
* for a given tagValue, you should write :
*
* return null;
*/
return {
rotation: 90,
// flipVertical: true,
// flipHorizontal: true,
};
},
getImage: function (tagValue, tagName) {
return fs.readFileSync(tagValue);
},
getSize: function (img, tagValue, tagName) {
return [150, 150];
},
};
const doc = new Docxtemplater(zip, {
modules: [new ImageModule(imageOpts)],
});