1. Məhsullar
  2.   Söz emalı
  3.   Node.js
  4.   Docxtemplater

Docxtemplater

 
 

Şablonlardan Word DOCX yaratmaq və idarə etmək üçün pulsuz Node.js kitabxanası

Öncəlikli açıq mənbəli Node.js kitabxanası, sadə şablon əsaslı yanaşma və JavaScript API vasitəsilə Word DOCX, XLSX sənədlərini dinamik şəkildə yaratmaq, redaktə etmək və idarə etməyə imkan verir.

Docxtemplater nədir?

Bu gün sürətlə dəyişən rəqəmsal dünyada səmərəlilik ən vacibdir, xüsusilə sənəd idarəçiliyində. İstifadəçilərin müqavilələr hazırlaması, hesabatlar yaratması və ya fərdi məktublar yazması lazım olduğunda, sənəd yaradılmasını avtomatlaşdıran etibarlı bir alət onlara dəyərli vaxt və resurs qənaəti təmin edir. Docxtemplater, şablonlardan Word sənədləri yaratma prosesini sadələşdirən güclü bir kitabxanadır. Kitabxana şablon əsaslı sənəd yaratma imkanı verir, burada Word sənədi şablonundakı yer tutucular real məlumatlarla əvəz olunaraq yekun çıxış sənədi yaradılır.

Əsasən, Docxtemplater güclü açıq mənbəli JavaScript kitabxanasıdır və proqramçılara əvvəlcədən təyin olunmuş şablonla məlumatları birləşdirərək dinamik Word, Excel və PowerPoint sənədləri yaratmaq və idarə etmək imkanı verir. OpenXML formatından istifadə edərək, kitabxana istifadəçilərin sənədlərinin strukturu və məzmunu üzərində incə təfərrüatlı nəzarət təmin edir, belə ki, yer tutucular əlavə edilə və iş vaxtı real məlumatlarla dəyişdirilə bilər.

Docxtemplater çoxistiqamətli bir kitabxanadır və proqramçılara sənəd yaradılmasını asanlıqla avtomatlaşdırmaq gücünü verir. Şablonların və məlumat birləşməsinin qüvvətindən istifadə edərək, sənəd iş axınını sadələşdirə və məhsuldarlığı əhəmiyyətli dərəcədə artıra bilərsiniz. Kitabxananı düzgün istifadə edərək, proqramçılar öz xüsusi ehtiyaclarına uyğun dinamik sənədləri asanlıqla yarada bilərlər. İstər sənəd yaratma tapşırıqlarını avtomatlaşdırırsınız, istərsə də hesabatları fərdiləşdirirsiniz, Docxtemplater sizin arsenalınızdakı dəyərli bir alətdir.

Previous Next

Docxtemplater necə quraşdırılır?

Docxtempler‑i quraşdırmaq üçün JavaScript paket meneceri npm‑dən istifadə edə bilərsiniz. Uğurlu quraşdırma üçün aşağıdakı əmrləri istifadə edin.

Docxtemplater‑i npm vasitəsilə quraşdırın

 npm install --save docxtemplater pizzip

Node.js-də şablon vasitəsilə Word sənədlərinin yaradılması

Açıq mənbəli Docxtemplater kitabxanası proqramçılara şablondan istifadə edərək Microsoft Word DOCX sənədləri yaratmağı asanlaşdırır. Proqramçılar şablona dinamik məlumatları obyekt vasitəsilə, açar‑dəyər cütləri daxil edərək, yer tutucuları real məlumatlarla əvəz edərək yekun çıxış sənədini yarada bilərlər. Aşağıdakı nümunə proqramçıların mövcud bir şablonu yükləyib Node.js mühitində Word sənədi yaratmağı necə göstərir.

Node.js daxilində şablondan Word sənədi necə yaratmaq olar?

const fs = require('fs');
const Docxtemplater = require('docxtemplater');

// Load the template
const content = fs.readFileSync('template.docx', 'binary');
const doc = new Docxtemplater(content);

// Set data to fill placeholders
const data = {
  firstName: 'John',
  lastName: 'Doe'
};

// Replace placeholders with actual data
doc.setData(data);

// Render the document
doc.render();

// Save the generated document
const output = fs.writeFileSync('output.docx', doc.getZip().generate({type: 'nodebuffer'}));

console.log('Document generated successfully!');

Node.js tətbiqlərində özəl funksiyalar və filtrlər əlavə etmək

Docxtemplater kitabxanasındakı özəl funksiyalar və filtrlər şablonlarda məlumatları manipulyasiya etmək və xüsusi əməliyyatları yerinə yetirmək üçün inkişaf etmiş imkanlar təqdim edir. Onlar istifadəçilərə kitabxananın funksionallığını yalnız sadə yer tutucu əvəz etmədən genişləndirərək, dinamik məzmun yaratma və mürəkkəb məlumat emalı imkanı verir. Şablonlarınızda məlumatları manipulyasiya etmək və ya xüsusi əməliyyatları yerinə yetirmək üçün özəl funksiyalar və filtrlər təyin edə bilərsiniz. Aşağıdakı nümunə proqramçıların alış-veriş səbətindəki maddələrin ümumi qiymətini hesablamaq üçün özəl funksiya və valyuta dəyərlərini formatlamaq üçün filtr necə tətbiq edə biləcəyini göstərir.

Alış-veriş səbətindəki maddələrin qiymətlərini özəl funksiya ilə necə hesablamaq və valyuta dəyərlərini formatlamaq üçün filtrlərdən necə istifadə etmək?

const fs = require('fs');
const Docxtemplater = require('docxtemplater');

// Define custom function to calculate total price
function calculateTotal(items) {
  return items.reduce((total, item) => total + item.price * item.quantity, 0);
}

// Define custom filter to format currency
function formatCurrency(value) {
  return '$' + value.toFixed(2); // Format as dollars with 2 decimal places
}

// Load the template
const content = fs.readFileSync('template.docx', 'binary');
const doc = new Docxtemplater(content, {
  parser: {
    // Define custom tag for invoking functions
    getFunction: function(tag) {
      if (tag === 'calculateTotal') {
        return calculateTotal;
      }
    },
    // Define custom tag for applying filters
    getFilter: function(tag) {
      if (tag === 'currency') {
        return formatCurrency;
      }
    }
  }
});

// Set data with shopping cart items
const data = {
  items: [
    { name: 'Product 1', price: 10, quantity: 2 },
    { name: 'Product 2', price: 20, quantity: 1 },
    { name: 'Product 3', price: 15, quantity: 3 }
  ]
};

// Replace placeholders with actual data
doc.setData(data);

// Render the document
doc.render();

// Save the generated document
const output = fs.writeFileSync('output.docx', doc.getZip().generate({ type: 'nodebuffer' }));

console.log('Document generated successfully!');

Zəngin formatlaşdırma dəstəyi

Açıq mənbəli Docxtemplater, sadə şablon əsaslı yanaşma təqdim edərək Word sənədlərinin yaradılması və idarə edilməsini sadələşdirir. Word sənədlərində zəngin formatlaşdırma dəstəyi, mətn, cədvəllər, şəkillər, paraqraf, bölmə formatı, siyahılar, bənd işarələri və digər məzmun kimi müxtəlif elementlərə şrift üslubları, rənglər, ölçülər, hizalanmalar və s. kimi stil atributları tətbiq etmək qabiliyyətini ifadə edir. Bu, oxunaqlılığı və vizual cəlbediciliyi artırır. Aşağıdakı sadə nümunə sənəddə mətnin bir hissəsinə zəngin formatlaşdırmanın necə tətbiq olunacağını göstərir.

Node.js tətbiqində Docxtemplater istifadə edərək mətnə zəngin formatlaşdırma necə tətbiq etmək olar?

// Render the document with custom parser options for rich formatting
doc.render({
  parser: {
    // Custom tag for interpreting HTML-like tags for rich formatting
    tagToken: function(tag) {
      return {
        tagName: tag.substring(1),
        mode: 'open'
      };
    },
    // Apply rich formatting based on tag names
    commands: {
      b: function(scope, context, tag) {
        return {
          type: 'applyRichText',
          value: { b: true }
        };
      },
      i: function(scope, context, tag) {
        return {
          type: 'applyRichText',
          value: { i: true }
        };
      },
      u: function(scope, context, tag) {
        return {
          type: 'applyRichText',
          value: { u: true }
        };
      },
      strike: function(scope, context, tag) {
        return {
          type: 'applyRichText',
          value: { strike: true }
        };
      }
    }
  }
});

// Save the generated document
const output = fs.writeFileSync('output.docx', doc.getZip().generate({ type: 'nodebuffer' }));

console.log('Document generated successfully!');

 Azəri