Node.js'te PDF Dosyaları Nasıl Oluşturulur
Node.js içinde programlı olarak PDF dosyaları oluşturmak, HTML'yi doğru bir şekilde işleyebilen, modern CSS'yi destekleyen ve Node'un asenkron kalıpları ile temiz bir şekilde entegre olabilen bir kütüphane gerektirir. IronPDF, HTML içeriğini, tam CSS desteği, iç içe JavaScript ve kutudan çıkar çıkmaz duyarlı düzenlerle Chrome'un baskı çıktısına uyacak şekilde PDF'lere dönüştürmek için Chromium tabanlı bir renderleme motoru kullanır.
Bu rehber, kurulumdan, HTML dizgilerinden, HTML dosyalarından ve URL'lerden PDF üretimine, çıktı seçeneklerini yapılandırmaya, başlık, alt bilgi, dijital imza ve şifreleme gibi kurumsal özellikleri uygulamaya kadar olan tüm iş akışını kapsar.
Hızlı Başlangıç: Node.js'de PDF Oluşturma
- IronPDF'i npm üzerinden yükleyin:
npm install @ironsoftware/ironpdf PdfDocumentöğesini@ironsoftware/ironpdf'dan içe aktarın- HTML içeriğinizle
PdfDocument.fromHtml()öğesini çağırın - PDF dosyasını diske yazmak için
.saveAs()öğesini çağırın
:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/quickstart.jsÜretim ortamında çalıştırmadan önce, platformunuz için IronPdfEngine öğesini yapılandırın. Windows, Linux, macOS ve Docker talimatları için IronPdfEngine kurulum kılavuzuna bakın.
Asgari İş Akışı (5 adım)
- IronPDF'yi kurun:
npm install @ironsoftware/ironpdf PdfDocument'i@ironsoftware/ironpdf'den içe aktarınPdfDocument.fromHtml(),PdfDocument.fromFile()veyaPdfDocument.fromUrl()kullanarak bir PDF oluşturun- Opsiyonel ayarları uygulayın: kağıt boyutu, kenar boşlukları, başlıklar, dipnotlar
pdf.saveAs("output.pdf")ile çıktıyı kaydedin
Node.js için IronPDF'yi Nasıl Yüklerim?
npm kullanarak @ironsoftware/ironpdf paketini yükleyin. Paket, Node.js 12.0 veya daha yüksek sürümlerle çalışır ve hem ESM hem de CommonJS modül formatlarını destekler.
//:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/install.sh
npm install @ironsoftware/ironpdf//:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/install.sh
npm install @ironsoftware/ironpdfIronPDF for Node.js, altında yatan Chromium tabanlı renderlemeyi gerçekleştiren IronPDF Engine ikili dosyasına bağlıdır. Motor ilk çalıştırmada otomatik olarak indirilir, ancak çalışma zamanı indirmelerini önlemek için platforma özgü paketi önceden yükleyebilirsiniz. Bu, sınırlı ağ ortamlarında veya Docker tabanlı CI boru hatlarında kullanışlıdır:
| Platform | Paket |
|---|---|
| Windows x64 | @ironsoftware/IronPDF-engine-Windows-x64 |
| Linux x64 | @ironsoftware/IronPDF-engine-linux-x64 |
| macOS x64 | @ironsoftware/IronPDF-engine-macos-x64 |
| macOS ARM | @ironsoftware/IronPDF-engine-macos-arm64 |
PdfDocument çağrınızdan önce IronPdfGlobalConfig.setConfig({ licenseKey: "YOUR-KEY" }) ayarlayarak uygulayın. Tam lisans anahtarı kurulumu talimatları'nı izleyin.IronPDF için Sistem Gereksinimleri Nelerdir?
IronPDF for Node.js, Windows, Linux, macOS ve Docker ortamlarında Node.js 12.0 veya daha yüksek sürümlerinde çalışır. Kütüphane hem x64 hem de ARM64 mimarilerini destekler, bu da onu yerel geliştirme ve konteyner tabanlı dağıtımlar için uygun hale getirir. Bulut ortamları için, IronPDF, motoru yerel olarak çalıştırmak yerine uzak bir IronPDF Motoru'na bağlanmayı da destekler.
Node.js'de HTML'den PDF Nasıl Oluştururum?
Bir HTML stringinden PDF oluşturmak için PdfDocument.fromHtml() kullanın. Yöntem, CDN aracılığıyla yüklenen harici yazı tipleri ve CSS Grid veya Flexbox gibi düzen sistemleri dahil olmak üzere geçerli her türlü HTML'yi kabul eder. Chromium renderer, PDF oluşturmadan önce tüm kaynakları çözümler.
:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/html-string-to-pdf.jsPdfDocument.fromHtml(), PdfDocument örneğini döndürür. Dosyayı yazmak için istediğiniz çıkış yolunu saveAs() üzerinden belirtin. Yöntem asenkron olduğu için await kullanın veya bir .then() işleyici zincirleyin. Chromium motoru, çıktı alımından önce yazı tipi yükleme, harici stil sayfaları ve varlık çözümlemesiyle ilgilenir. Daha fazla desen için, HTML string'den PDF örneği'ni inceleyin.
Bir HTML Dosyasından PDF Nasıl Oluştururum?
Diğer bir .html dosyasını diske kullanarak PdfDocument.fromFile() yükleyin. Bu yaklaşım, HTML'nin uygulama mantığından ayrı olarak korunduğu şablon belgeleri için iyi çalışır.
:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/html-file-to-pdf.jsRenderer, HTML dosyasının dizininden göreli varlık yollarını çözer, bu nedenle yerel CSS ve resim referansları ekstra yapılandırma yapmadan çalışır. Varlık çözümlemesi için temel URL'yi geçersiz kılmak dahil, ek seçenekler için HTML dosyasından PDF'ye örnek'yi inceleyin.
Bir URL'den PDF Nasıl Üretirim?
Canlı bir web sayfasını PDF olarak işlemek için PdfDocument.fromUrl() kullanın. Renderer, çıktı almadan önce JavaScript'i çalıştırarak, CSS uygulayarak ve dinamik içeriği bekleyerek, sayfayı tam bir tarayıcı oturumu olarak yükler.
:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/url-to-pdf.jsJavaScript ile asenkron olarak içerik yükleyen sayfalar için, yakalamadan önce ek süre tanımak amacıyla bir renderDelay seçeneği (milisaniye cinsinden) ile eşleştirin. URL'den PDF'ye örnek, gecikme yapılandırmasını ve kimlik doğrulama başlıklarını gösterir.
IronSuite, operasyonlarımızda kritik bir rol oynar. Bunlar, iş süreçlerinde verimliliği artıran, kat planları oluşturmak ve envanter yönetimini geliştirmek gibi araçlardır.
PDF Çıkış Ayarlarını Nasıl Yapılandırırım?
PdfDocument.fromHtml(), PdfDocument.fromFile() veya PdfDocument.fromUrl() için ikinci argüman olarak bir yapılandırma nesnesi geçirin. Yapılandırma nesnesi, kağıt boyutu, kenar boşlukları, yönlendirme ve render seçeneklerini kabul eder.
:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/pdf-settings.jsAna yapılandırma seçenekleri şunları içerir:
paperSize:PdfPaperSizeenum değerlerini kabul eder (A4, Letter, Legal ve özel boyutlar)landscape: sayfa yönlendirmesi içintrueayarlayınprintBackground: CSS arka plan renkleri ve resimleri dahil edinmarginTop/Bottom/Left/Right: milimetre cinsinden sayfa kenar boşluklarırenderDelay: JavaScript ağırlıklı sayfalar için yakalamadan önce beklemek için gereken milisaniyeler
Bir PDF'ye Başlıklar ve Altbilgiler Nasıl Eklerim?
Yapılandırma nesnesinde htmlHeader ve htmlFooter özellikleri sağlayarak başlıklar ve altbilgiler ekleyin. Her ikisi de tam HTML dizilerini kabul eder ve sayfa numaraları, tarihler ve dinamik metin ile stilize edilmiş içerik sağlar.
:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/headers-footers.jsAltbilgi HTML'sinde {page} ve {total-pages} eklemelerini kullanın; IronPDF, render zamanı geldiğinde doğru değerleri ikame eder. Daha fazla başlık ve altbilgi deseni için, HTML başlıkları ve altbilgileri ve ileri başlık teknikleri dahil, bağlantılı örneklere bakın.
Bir PDF'ye Güvenlik ve Meta Veriler Nasıl Eklerim?
PdfDocument güvenlik yöntemlerini kullanarak oluşturulan bir PDF'ye şifre koruması ve şifreleme uygulayın. Kütüphane, yazdırma, kopyalama ve düzenleme için ayrıntılı izin kontrolleri ile hem sahip hem de kullanıcı şifrelerini destekler.
:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/security.jsŞifreleme ve şifre çözme, şifreler uygulandığında varsayılan olarak AES 256-bit şifreleme kullanır. Doküman kimlik doğrulama iş akışları için, IronPDF ayrıca X.509 sertifikalarını kullanarak dijital imzaları destekler.
(Uzun vadeli arşiv uyumluluğu gerektiren belgeler için PdfDocument.fromHtml() kullanın ve ardından PDF/A dönüştürme yöntemini uygulayın. IronPDF, PDF/A uyumluluğu ile PDF/UA erişilebilirlik standartlarını destekler.)}]
Mevcut PDF'leri Nasıl Birleştirir ve Düzenlerim?
PdfDocument, mevcut PDF dosyalarını birleştirme, bölme ve değiştirme yöntemleri sunar. PdfDocument.fromFile() ile mevcut bir PDF yükleyin ve sayfalar eklemek veya kaldırmak, içerik damgalamak ya da metin değiştirmek için manipülasyon yöntemlerini kullanın.
:path=/static-assets/pdf/content-code-examples/tutorials/nodejs-create-pdf/merge-pdfs.jsPdfDocument.mergePdf(), PdfDocument örneklerinin bir dizisini kabul eder ve tek bir birleşik belge döndürür. Sayfa sırası dizi sırasını takip eder, bu nedenle çıkış dosyası giriş dosyalarının sırasını korur.
Diğer yaygın manipülasyon işlemleri:
- Bir PDF'den sayfa kaldır için
removePages()kullanın - Mevcut bir belgeye HTML içerik damgalayın
- Tüm sayfalar boyunca metni bulun ve değiştirin
- İndeksleme veya işleme için bir PDF'den metin çıkarın
Yüksek hacimli senaryolar için, çoklu iş parçacıklı PDF üretimi birden çok belgeyi paralel olarak işleme imkan verir. PDF sıkıştırma, saklama ve iletim için dosya boyutlarını azaltır.
Grafikler ve Angular Sayfalar Gibi Karmaşık İçerikler için PDF Nasıl Üretirim?
IronPDF, tam bir Chromium tarayıcı oturumu kullanarak sayfaları işler; bu, grafik, grafikler veya veri görselleştirmesi üreten JavaScript kitaplıklarının doğru bir şekilde işlenmesini sağlar. Buna JavaScript grafik kütüphaneleri da dahildir. Angular gibi çerçevelerle oluşturulmuş tek sayfa uygulamaları da Angular'dan PDF'ye örnek ile temiz şekilde dönüştürülür.
Unicode ağırlıklı belgeler veya çoklu dil çıktıları için, IronPDF Unicode ve uluslararası karakter setlerini ek yapılandırma gerektirmeden işler. Google Fonts entegrasyonu örneği, çıktı PDF'sinde tutarlı tipografi için render edilen HTML'de web yazı tiplerinin nasıl yükleneceğini gösterir.
renderDelay milisaniye olarak ayarlayın.)Node.js'de PDF Oluşturmak İçin Bir Sonraki Adım Nedir?
Bu kılavuz, IronPDF'ün temel iş akışını kapsadı: kütüphaneyi yüklemek, HTML dizilerinden, dosyalardan ve URL'lerden PDF'ler üretmek, çıkış ayarlarını yapılandırmak, başlık ve altbilgi eklemek, güvenlik uygulamak ve mevcut PDF'leri düzenlemek.
Devam etmek için, işleme seçeneklerinin daha derin bir tanıtımı için tamamlanmış HTML to PDF eğitimini deneyin veya tam liste için API Referansını tarayın. PdfDocument yöntemleri ve yapılandırma özellikleri.
Ücretsiz denemenize başlayın ve filigran olmadan PDF oluşturun veya üretim uygulamaları için lisanslama seçeneklerini görüntüleyin.
Sıkça Sorulan Sorular
Node.js'de PDF dosyaları oluşturmanın en kolay yolu nedir?
IronPDF'i npm install @ironsoftware/ironpdf ile yükleyin, ardından HTML stringiniz ile birlikte PdfDocument.fromHtml() çağrısı yapın ve sonucu saveAs() kullanarak kaydedin. Kütüphane, tüm render işlemlerini otomatik olarak yönetir.
Node.js için IronPDF nasıl yüklenir?
Proje dizininde npm install @ironsoftware/ironpdf komutunu çalıştırın. IronPDF Engine ikili dosyası, ilk kullanımda otomatik olarak indirilir. Çevrimdışı veya CI ortamları için, @ironsoftware/ironpdf-engine-linux-x64 gibi platforma özgü motor paketini ayrı olarak yükleyin.
HTML'yi CSS stillerini ve biçimlendirmeyi koruyarak PDF'ye dönüştürebilir miyim?
Evet. IronPDF, HTML'yi PDF'ye dönüştürürken tüm CSS stillerini, harici yazı tiplerini ve JavaScript çalıştırmasını koruyan Chromium tabanlı bir işleme motoru kullanır. Çıktı, Chrome'un yazdırma önizleme davranışı ile eşleşir.
Temel HTML dönüştürmenin ötesinde hangi PDF özellikleri mevcuttur?
IronPDF, dijital imzaları, AES 256-bit şifrelemeyi, ayrıntılı izinlerle parola korumasını, özel başlık ve altbilgi ayarlarını sayfa numarası belirteçleriyle, PDF birleştirmeyi, sayfa kaldırmayı, HTML damgalamayı, metin çıkarmayı, PDF/A uyumluluğunu ve çoklu iş parçacıklı oluşturmayı destekler.
Diskteki bir HTML dosyasından nasıl PDF oluşturabilirim?
PdfDocument.fromFile('./path/to/template.html') kullanın. Renderer, bağıl varlık yollarını HTML dosyasının dizininden çözümler, böylece yerel CSS ve görüntü referansları ek bir yapılandırma olmadan çalışır.
IronPDF kullanarak mevcut PDF dosyalarından metin çıkarabilir miyim?
Evet. Var olan bir PDF'i PdfDocument.fromFile() ile yükleyin ve herhangi bir sayfadaki içeriği okumak için metin çıkarma yöntemlerini kullanın. IronPDF, hem yeni PDF'ler oluşturmayı hem de mevcut belgeleri işlemeyi destekler.
IronPDF, HTML renderken JavaScript yürütmeyi destekliyor mu?
Evet. Chromium renderer, PDF'i yakalamadan önce JavaScript'i çalıştırır. İçeriği asenkron olarak yükleyen sayfalar için, yakalamadan önce sayfaya ek süre vermek amacıyla renderDelay seçeneğini milisaniye olarak ayarlayın.





