1. Ürün:% s
  2.   Kelime İşleme
  3.   Node.js
  4.   Docxtemplater

Docxtemplater

 
 

Şablonlardan Word DOCX Oluşturmak ve Yönetmek için Ücretsiz Node.js Kütüphanesi

Basit bir şablon temelli yaklaşım ve JavaScript API'si kullanarak Word DOCX ve XLSX Belgelerini Dinamik Olarak Oluşturma, Düzenleme ve Manipüle Etmeye İzin Veren Önde Gelen Açık Kaynak Node.js Kütüphanesi.

Docxtemplater Nedir?

Bugünün hızlı tempolu dijital dünyasında verimlilik hayati öneme sahiptir, özellikle belge yönetiminde. Kullanıcıların sözleşme taslağı hazırlaması, rapor oluşturması veya kişiselleştirilmiş mektuplar yazması gerektiğinde, belge oluşturmayı otomatikleştiren güvenilir bir araç zaman ve kaynak tasarrufu sağlar. İşte Docxtemplater, şablonlardan Word belgeleri üretme sürecini basitleştiren güçlü bir kütüphane. Kütüphane, bir Word şablonundaki yer tutucuları gerçek verilerle değiştirerek nihai çıktıyı oluşturur.

Docxtemplater, veri önceden tanımlanmış bir şablonla birleştirerek dinamik Word, Excel ve PowerPoint belgeleri oluşturup yönetmeye imkan veren güçlü bir açık kaynak JavaScript kütüphanesidir. OpenXML formatını kullanarak, kullanıcı belgelerinin yapısı ve içeriği üzerinde ayrıntılı kontrol sağlar; çalışma zamanında gerçek verilerle değiştirilecek yer tutucular ekleyebilir.

Docxtemplater, yazılım geliştirenlerin belge oluşturmayı kolayca otomatikleştirmesini sağlayan çok yönlü bir kütüphanedir. Şablonların ve veri birleştirmenin gücünden yararlanarak belge iş akışını sadeleştirir ve verimliliği önemli ölçüde artırır. Kütüphane doğru kullanıldığında, geliştiriciler ihtiyaçlarına uygun dinamik belgeler kolayca üretebilir. Belge oluşturma görevlerini otomatikleştiriyor veya raporları kişiselleştiriyor olun, Docxtemplater silah cephanenizde değerli bir araçtır.

Previous Next

Docxtemplater Nasıl Kurulur?

Docxtemplater'ı kurmak için npm, JavaScript paket yöneticisini kullanabilirsiniz. Başarılı bir kurulum için aşağıdaki komutları kullanın.

Docxtemplater'ı npm üzerinden kurun

 npm install --save docxtemplater pizzip

Node.js'te Şablon Kullanarak Word Belgeleri Oluşturma

Açık kaynak Docxtemplater kütüphanesi, şablon kullanarak Microsoft Word DOCX belgeleri oluşturmayı kolaylaştırır. Geliştiriciler, şablona anahtar-değer çiftleri içeren bir nesne geçirerek dinamik veri ekleyebilir, yer tutucuları gerçek verilerle değiştirerek nihai çıktıyı oluşturabilir. Aşağıdaki örnek, geliştiricilerin mevcut bir şablonu yükleyip Node.js ortamında Word belgesi üretmesini gösterir.

Şablon içinde Node.js kullanarak Word Belgesi Nasıl Oluşturulur?

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 Uygulamalarına Özel Fonksiyonlar ve Filtreler Ekleyin

Docxtemplater kütüphanesindeki Özel Fonksiyonlar ve Filtreler, şablonlarda veri manipülasyonu ve belirli işlemleri gerçekleştirme konusunda gelişmiş yetenekler sunar. Bu özellikler, temel yer tutucu değiştirme işlevinin ötesine geçerek dinamik içerik üretimi ve karmaşık veri işleme imkanı tanır. Şablonlarınıza özel fonksiyonlar ve filtreler tanımlayarak veri üzerinde değişiklik yapabilir veya belirli işlemleri gerçekleştirebilirsiniz. Aşağıdaki örnek, geliştiricilerin bir alışveriş sepetindeki ürünlerin toplam fiyatını hesaplamak için özel bir fonksiyon ve para birimi değerlerini formatlamak için bir filtre nasıl uygulayabileceğini gösterir.

Alışveriş Sepetindeki Ürün Fiyatlarını Özel Fonksiyonla Nasıl Hesaplar ve Para Birimini Formatlamak İçin Filtre Nasıl Kullanılır?

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!');

Zengin Biçimlendirme Desteği

Açık kaynak Docxtemplater, Word belgeleri oluşturma ve yönetme sürecini, sade bir şablon temelli yaklaşım sunarak basitleştirir. Word belgelerinde zengin biçimlendirme desteği, font stilleri, renkler, boyutlar, hizalamalar ve daha fazlasını çeşitli öğelere uygulama yeteneğini ifade eder. Bu, metin, tablolar, görseller, paragraf, bölüm biçimlendirme, listeler, madde işaretleri ve okunabilirliği ve görsel çekiciliği artıran diğer içerikleri formatlamayı içerir. Aşağıdaki basit örnek, bir belgenin içinde bir metin parçasına zengin biçimlendirme nasıl uygulanacağını gösterir.

Node.js uygulamasında Docxtemplater kullanarak metne zengin biçimlendirme nasıl uygulanır?

// 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!');

 Türkçe