Node.js İle PDF Dosyalarının Oluşturulması

Node.js İle PDF Dosyalarının Oluşturulması

Bu yazı tipi, PDF dosyalarında kullanılabilecek farklı yazı tipleri ve stilleri hakkında bilgi sağlamak amacıyla oluşturulmuştur Pdfmake kütüphanesi, Nodejs kullanıcıları için oldukça kullanışlı bir araçtır ve PDF dosyalarının oluşturulmasını kolaylaştırır Tablo ve listeler, Pdfmake kullanarak PDF dosyalarına kolayca eklenebilir

Node.js İle PDF Dosyalarının Oluşturulması

PDF dosyaları, belgelerin etkili bir şekilde paylaşılmasına izin veren yaygın bir belge formatıdır. Bu nedenle, PDF oluşturma işlemi günümüzün dijital çağında oldukça önemli hale gelmiştir.

Node.js, JavaScript tabanlı bir arka uç platformudur. Bu platform kullanarak PDF dosyaları oluşturmak oldukça kolaydır. Bu nedenle, web uygulamaları geliştirme işlemlerinde popüler bir seçenek olarak kullanılır. Bu makalede, Node.js platformunu kullanarak PDF dosyalarının nasıl oluşturulabileceğine dair bir giriş yapacağız.


Gereklilikler

Node.js kullanarak PDF dosyaları oluşturma işlemine başlamadan önce, gereken araçları yüklemek gerekir. Bunlar arasında Node.js, npm, pdfmake ve Puppeteer kütüphaneleri bulunur.

Node.js kurulumu için resmi websitesinde yer alan indirme linkini kullanabilirsiniz. npm, Node.js ile birlikte kurulur, dolayısıyla ayrı bir yükleme işlemi gerektirmez. Pdfmake kütüphanesini yüklemek için npm yükleme yöntemi kullanılabilir. Aşağıdaki komutu komut istemcisinde çalıştırarak pdfmake kütüphanesini yükleyebilirsiniz:

npm install pdfmake

Puppeteer kütüphanesi, web sayfalarından PDF dosyaları oluşturmak ve düzenlemek için kullanılır. Puppeteer yüklemek için de npm yükleme yöntemi kullanılabilir. Aşağıdaki komutu komut istemcisinde çalıştırarak Puppeteer'ı yükleyebilirsiniz:

npm install puppeteer

Gereklilikleri tamamladıktan sonra, PDF dosyaları oluşturma işlemlerine başlayabilirsiniz.


Pdfmake Kullanımı

Pdfmake, Node.js için bir PDF oluşturma kütüphanesidir. Bu kütüphane sayesinde Node.js ile PDF dosyaları oluşturmak oldukça kolay hale gelmektedir. İlk olarak Pdfmake kütüphanesinin yüklenmesi gerekiyor. Bu, npm üzerinden kolayca gerçekleştirilebilir. Kurulum tamamlandıktan sonra, aşağıdaki adımları takip ederek PDF dosyaları oluşturabilirsiniz:

  • Pdfmake kütüphanesinin Node.js projesine dahil edilmesi
  • Bir PDF belgesi için temel özelliklerin belirlenmesi
  • PDF belgesinin içeriğinin tanımlanması ve düzenlenmesi
  • Belgenin oluşturulması ve kaydedilmesi

Pdfmake kullanarak oluşturulan PDF dosyaları, stil özelliklerine ve yazı tiplerine sahip olabilir. Bu özellikler sayesinde, farklı tarzlarda belgeler oluşturmak mümkündür. Ayrıca, Pdfmake kütüphanesi tablo ve listelerin oluşturulması için de oldukça kullanışlıdır. Bu özellikler ile PDF dosyalarınızı daha okunaklı hale getirebilirsiniz.

Bir PDF dosyası oluşturmak için temel olarak, Pdfmake'de JavaScript objeleri kullanmanız gerekiyor. Bu objeler, PDF belgesinin stil özellikleri, yazı tipleri ve içeriği hakkında bilgi içerir. Bu objeleri oluşturarak, oluşturmak istediğiniz belgenin tüm özelliklerini belirleyebilirsiniz. Daha sonra, bu objeleri birleştirerek PDF belgenizi oluşturabilirsiniz.

Pdfmake kütüphanesi ile PDF dosyalarının oluşturulması oldukça kolaydır. Öğrenmesi ve kullanması kolay olması, Node.js kullanıcıları arasında popüler bir seçenek haline gelmesini sağlamaktadır.


Stillerin ve Fontların Kullanımı

Pdfmake kütüphanesi, PDF dosyalarının oluşturulmasında kullanılan bir araçtır. Bu kütüphane ile PDF dosyalarını farklı yazı tipleri ve stilleri ile özelleştirmek oldukça kolaydır. Pdfmake'de kullanılabilecek yazı tipleri ve stilleri aşağıdaki gibidir.

Font Adı Açıklama
Roboto Standart Roboto yazı tipi
Arial Standart Arial yazı tipi
Times New Roman Standart Times New Roman yazı tipi
  • Bold: Kalın yazı stili
  • Italic: İtalik yazı stili
  • Underline: Altı çizgili yazı stili
  • Strike: Üstü çizgili yazı stili

Fontlar ve stiller Pdfmake'in stil özellikleri ile birleştirilerek kullanılabilir. Örneğin, bir metin 'Arial' yazı tipi ve kalın ('bold') stil ile yazdırılabilir. Bu şekilde, Pdfmake kütüphanesi kullanılarak oluşturulan PDF dosyaları farklı stiller ve fontlar kullanarak daha estetik hale getirilebilir.


Tablo ve Listenin Eklenmesi

Pdfmake kütüphanesi, tablo ve listeleri PDF dosyalarına eklemek için oldukça kullanışlı bir araçtır. Tablo oluşturmak için, öncelikle bir tablo nesnesi oluşturmanız gerekmektedir. Bu nesne, tablo sütun ve satır bilgilerini içermektedir.

Tablo oluşturmak için şu adımları takip edebilirsiniz:

  • Tablo sütunları için bir dizi oluşturun:
    var tableColumns = ['Sütun 1', 'Sütun 2', 'Sütun 3'];
  • Tablo satırları için bir dizi oluşturun:
    var tableRows = [['1. Satır, Sütun 1', '1. Satır, Sütun 2', '1. Satır, Sütun 3'], ['2. Satır, Sütun 1', '2. Satır, Sütun 2', '2. Satır, Sütun 3']];
  • Tablo nesnesini oluşturun:
    var table = { headers: tableColumns, rows: tableRows };
  • PDF dosyasına tabloyu eklemek için tablo nesnesini pdfMake.docDefinition.content dizisi içerisine ekleyin:
    pdfMake.createPdf({content: [table]}).download('myPDF.pdf');

Ayrıca, listeler de pdfMake kullanılarak kolayca eklenebilir. Sıralı veya sırasız listeler oluşturabilirsiniz. Örnek olarak şu kodu kullanabilirsiniz:

  • Sırasız liste için:
    var listUnordered = { ul: ['Sırasız liste öğesi 1', 'Sırasız liste öğesi 2', 'Sırasız liste öğesi 3'] };
  • Sıralı liste için:
    var listOrdered = { ol: ['Sıralı liste öğesi 1', 'Sıralı liste öğesi 2', 'Sıralı liste öğesi 3'] };
  • PDF dosyasına listeleri eklemek için, ilgili listeleri pdfMake.docDefinition.content dizisi içerisine ekleyin:
    pdfMake.createPdf({content: [listUnordered, listOrdered]}).download('myPDF.pdf');
Sıra No Tablo Başlığı Tablo Açıklaması
1 Başlık 1 Açıklama 1
2 Başlık 2 Açıklama 2
3 Başlık 3 Açıklama 3

PDF'nin İmzalanması

PDF dosyalarının imzalanması ve koruma altına alınması oldukça önemli bir konudur. Pdfmake kütüphanesi bu işlemi oldukça kolay bir şekilde yapabileceğimiz çözümler sunmaktadır.

İlk olarak, PDF dosyasını imzalamak için Pdfmake kullanarak pdfmake.createPdf(docDefinition).getBuffer(async (buffer) => {}) yöntemini kullanabilirsiniz. Bu yöntem, PDF dosyasına imza eklemek için kullandığımız digitalSignature özelliği ile birlikte kullanılabilir. Bunun yanı sıra, PDF dosyasını koruma altına almak istiyorsanız, permission özelliğini kullanabilirsiniz. Bu özellik sayesinde, PDF dosyasına açılma parolası, düzenleme parolası gibi koruma yöntemleri uygulayabilirsiniz.

Pdfmake kütüphanesi sayesinde PDF dosyalarınızın imzalanması ve koruma altına alınması oldukça basit ve hızlı bir şekilde gerçekleştirilebilir. Ayrıca, PDF dosyalarınızda özelleştirmeler yapmak istediğiniz durumlarda da Pdfmake kütüphanesinde bulunan özelliklerden yararlanabilirsiniz.


Puppeteer Kullanımı

Puppeteer, bir başka popüler Node.js kütüphanesi ile PDF dosyası oluşturma işlemleri hızlı ve kolay hale gelir. Bu kütüphane, Chromium tarayıcısını yöneterek web sayfalarından PDF dosyaları oluşturma, düzenleme ve kaydetme işlemlerini yapabilir. Puppeteer kurulumu için, öncelikle npm kullanarak 'puppeteer' paketini yüklemeniz gerekir.

Puppeteer ile PDF dosyası oluşturmak çok kolaydır, sadece web sayfasının URL'sini belirleyin, sayfa yüklemesini bekleyin ve ardından sayfa içeriğini PDF olarak kaydedin. Bunun yanı sıra, sayfa özelliklerini (örneğin, boyut ve sayfa yönlendirmesi) de ayarlayabilirsiniz.

Puppeteer'in bir diğer avantajı da PDF dosyalarının güncellenmesi ve düzenlenmesine olanak tanımasıdır. Mevcut bir PDF dosyasını bir değişikliği uygulayarak güncelleyebilir ve üzerine notlar ve açıklamalar ekleyebilirsiniz. Bu özellik, özellikle iş yerlerinde PDF dosyalarının yönetimi ve düzenlenmesi için oldukça faydalıdır.

Aşağıdaki örnek kod, web sayfasından PDF dosyası oluşturma ve dosyayı kaydetme işlemini göstermektedir:

``` javascriptconst puppeteer = require('puppeteer');

(async () => { const browser = await puppeteer.launch(); const page = await browser.newPage(); await page.goto('https://www.example.com'); await page.pdf({ path: 'example.pdf', format: 'A4' });

await browser.close();})();```

Yukarıdaki kodda, Puppeteer önce bir Chromium tarayıcısı başlatır, ardından başka bir pencere açar ve belirtilen URL'yi yükler. `await page.pdf()` işlevi sayfa içeriğini PDF olarak kaydeder. `path` özelliği, PDF dosyasının kaydedileceği konum ve dosya adını belirtirken, `format` özelliği sayfa boyutunu belirler.

Puppeteer kullanarak PDF dosyaları oluşturma işlemleri oldukça basittir ve bu kütüphane sayesinde web sayfalarından kolayca PDF dosyaları oluşturabilir ve yönetebilirsiniz. Aynı zamanda, tamamen programatik bir şekilde dosya düzenleme ve güncelleme işlemleri için de kullanılabilir.


Web sayfasından PDF dosyaların oluşturulması

Puppeteer, web sayfalarından PDF dosyalarının oluşturulması için oldukça kullanışlı bir araçtır. Bu araç sayesinde, sayfaların içerikleri kolayca PDF olarak kaydedilebilir.

İlk adım olarak, öncelikle Puppeteer'ı yüklemeniz gerekecektir. Bunun için aşağıdaki komutu kullanabilirsiniz:

```npm install puppeteer```

Daha sonra, Puppeteer'ın sağladığı özellikleri kullanarak bir web sayfasını PDF olarak kaydedebilirsiniz. Bunun için öncelikle Puppeteer'ı kullanarak sayfayı açmanız gerekiyor. Aşağıdaki kod satırlarını kullanarak Google Ana Sayfasını açalım:

```const puppeteer = require('puppeteer');

(async () => { const browser = await puppeteer.launch(); const page = await browser.newPage(); await page.goto('https://www.google.com.tr'); await page.pdf({ path: 'google.pdf', format: 'A4' }); await browser.close();})();```

Yukarıdaki örnek kodda, Puppeteer.sayfası ile Google web sitesi sayfası açıldı ve sayfa PDF olarak kaydedildi. ```pdf``` fonksiyonunun içindeki ```path``` parametresi, PDF dosyasının nereye kaydedileceğini belirlerken, ```format``` parametresi ise kaydedilen dosyanın boyutunu belirler.

Böylece Puppeteer aracılığıyla, web sayfalarının içeriğini kolayca PDF dosyası olarak kaydedebilirsiniz.


PDF Dosyalarının Düzenlenmesi

PDF dosyalarının düzenlenmesi ve güncellenmesi işlemleri, Puppeteer kullananlar için oldukça kolaydır. Puppeteer, PDF dosyalarını düzenlemek için gerekli tüm özellikleri içermektedir.PDF dosyasında değişiklik yapmak için öncelikle Puppeteer ile belirlediğimiz PDF dosyasını açmamız gerekmektedir. Bu işlem için aşağıdaki kod kullanılabilir:

const browser = await puppeteer.launch();const page = await browser.newPage();await page.goto('file://path/to/pdf');const pdf = await page.pdf();await browser.close();

PDF dosyasının Puppeteer tarafından açılmasının ardından, PDF içerisinde değişiklik yapmak için öncelikle değişiklik yapılacak sayfanın seçimi yapılmalıdır. Bu işlem, Puppeteer içerisindeki page.evaluate fonksiyonu kullanılarak gerçekleştirilebilir. Örneğin, PDF sayfasındaki bir elementin içeriği Değiştirilebilir:

await page.evaluate(() => {    let element = document.querySelector('#elementID');    element.textContent = 'Yeni İçerik';});

PDF sayfasındaki diğer elementlerin de değiştirilebilmesi için benzer şekilde element seçimi yapılmalı ve üzerinde değişiklikler yapılmalıdır.PDF dosyasında yapılan değişikliklerin kaydedilmesi işlemi, 'page.pdf' fonksiyonunda yer alan 'path' parametresi ile gerçekleştirilebilir.

await page.pdf({path: 'path/to/new/pdf'});

Sonuç olarak, Puppeteer kullanarak PDF dosyalarını düzenlemek oldukça kolay ve hızlı bir işlemdir. PDF dosyalarında yapılacak düzenleme işlemleri için Puppeteer'ın gerekli tüm özellikleri içermesi, kullanıcıların işlerini hızlı ve kolay bir şekilde gerçekleştirmelerine yardımcı olur.

Örnek Uygulama

Node.js kullanarak PDF dosyaları oluşturma ve düzenleme işlemleri oldukça kolaydır. Ve bu işlem için örnek bir uygulama geliştirmek oldukça yararlı olacaktır. PDF dosyası oluşturmak için, Pdfmake kullanabilirsiniz. Bu kütüphane ücretsizdir ve belge oluşturma işlemini daha kolay ve hızlı hale getirir.

Örnek bir uygulamada, Pdfmake kullanarak bir belge şablonu oluşturabilirsiniz. Çeşitli stil ve yazı boyutları tanımlayabilirsiniz. Ayrıca, belgeye tablo ve listeler ekleyebilirsiniz. Belgenin başlığını, alt başlığını, gövdesini ve altbilgisini tanımlayabilirsiniz. Pdfmake kütüphanesi belge oluştururken stil ve yazı tipi özelliklerini kullanır.

  • Belge stil özellikleri:
    • Bold
    • Italic
    • Underline
    • Alignment
  • Yazı tipi özellikleri:
    • Sans-serif
    • Serif
    • Monospace

Bir örnek uygulama geliştirmek için, öncelikle Node.js kurulumu yapmanız gerekir. Node.js kurmak için VS Code veya GitHub kullanabilirsiniz. Daha sonra, Pdfmake kütüphanesini indirip projenize ekleyebilirsiniz. Kütüphaneyi indirip uygulamanıza eklemek için aşağıdaki komutu kullanabilirsiniz:

npm install pdfmake

Ardından, Pdfmake kütüphanesi ile bir belge şablonu oluşturabilirsiniz. Belge şablonunu özelleştirdikten sonra, belgedeki verileri veritabanından getirerek dinamik bir belge oluşturabilirsiniz. Bu işlemi gerçekleştirmek için, kullanıcı bilgileri, ürün bilgileri, işlem geçmişi ve daha fazlasını içeren bir veritabanına sahip olmanız gerekir.

Bununla birlikte, Puppeteer kütüphanesi ile de PDF dosyaları oluşturabilir ve düzenleyebilirsiniz. Örnek bir uygulama geliştirirken Pdfmake ve Puppeteer kütüphanelerini kullanabilirsiniz. Hem Pdfmake hem de Puppeteer kütüphaneleri, PDF'lerin oluşturulması ve düzenlenmesi için oldukça kullanışlıdır.