Altbilgi içeriğine atla
PDF ARAçLARı

2022 Yılında En İyi PDF Görüntüleyici Seçenekleri

PDF belgelerini PNG, JPG, GIF gibi görüntü formatlarına dönüştürmek, belge yönetim sistemleri ve görüntü işleme yazılımlarından çeşitli uygulamalarda değerli bir özellik olabilir. Bu makalede, Node.js kullanarak PDF'lerin nasıl görüntü dosyalarına dönüştürüleceğini öğreneceğiz. Bu görevi başarmak için pdf-poppler adlı popüler bir npm (Node Package Manager) paketinin gücünden yararlanacağız.

Gereksinimler

Öncelikle, bilgisayarınızda Node.js ve npm (Node Package Manager) kurulu olduğundan emin olun. Node kurulumlarını, komut isteminizde (cmd) aşağıdaki komutları çalıştırarak kontrol edebilirsiniz:

node --version
npm --version
node --version
npm --version
SHELL

Kurulu değilse, Node.js web sitesinden indirmeniz gerekecektir.

Node.js'de PDF'i Görüntüye Dönüştürme: Şekil 1 - Node.js modülü

Proje Ayarlama

Başlamak için projeniz için yeni bir dizin oluşturun. Bu öğreticide, bu dizini Node.js_PDFtoImage olarak adlandıralım. Ardından, komut istemcisinde oraya gidin ve aşağıdaki kodu çalıştırarak yeni bir Node.js projesi başlatın:

npm init -y
npm init -y
SHELL

Yukarıdaki komutu çalıştırmak, proje için gereken bağımlılıkları yüklememizi sağlayacak bir package.json dosyası üretecektir.

Bağımlılıkları Yükleme

Kullanacağımız bağımlılık, PDF'leri görüntülere dönüştürmek için kullanımı kolay bir API sağlayan pdf-poppler paketidir.

Windows PowerShell veya Komut İstemcisi'nde aşağıdaki komutu çalıştırarak yükleyin:

npm install pdf-poppler
npm install pdf-poppler
SHELL

Hepsi tamam! PDF'yi görüntülere dönüştürme mantığını yazalım.

PDF'yi Görüntü Dosyasına Dönüştürme

Yükleme tamamlandıktan sonra, projemizin kök dizininde yeni bir dosya oluşturun ve adını pdfToImage.js olarak ayarlayın. Tercih ettiğiniz metin düzenleyicide dosyayı açın ve gerekli modülleri ekleyin:

const pdfPoppler = require('pdf-poppler');

Aşağıda 28 sayfalık örnek bir PDF dosyası gösterilmiştir.

Node.js'de PDF'i Görüntüye Dönüştürme: Şekil 2 - Girdi Dosyası

Sonra, PDF dosyasının yolunu (pdfPath) ve çıktı dizini yolunu (outputPath) alan convertPdfToImage adlı bir fonksiyon tanımlayın. Bu fonksiyon, örnek PDF belgemizi görüntülere dönüştürecektir.

async function convertPdfToImage(pdfPath, outputPath) {
  const options = {
    format: 'jpeg',  // You can choose other formats like png or tiff
    out_dir: outputPath,
    out_prefix: 'page',
    page: null  // Specify the page number here to convert a specific page, otherwise null to convert all pages
  };

  try {
    await pdfPoppler.convert(pdfPath, options);
    console.log('PDF converted to image successfully!');
  } catch (error) {
    console.error('Error converting PDF to image:', error);
  }
}

Fonksiyon, PDF'i JPEG görüntü formatına dönüştürmek için pdf-poppler paketini kullanır. Bu durumda format seçeneğini 'jpeg' olarak ayarladık, ancak 'png' veya 'tiff' gibi diğer formatları da seçebilirsiniz. out_dir seçeneği, çıktı görüntülerinin kaydedileceği dizini belirtir ve out_prefix, çıktı görüntü dosyaları için bir ön ek ayarlar. page seçeneği, belirli bir sayfayı dönüştürmenizi sağlar veya tüm sayfaları dönüştürmek için boş bırakabilirsiniz.

Bir PDF dosyasını görüntülere dönüştürmek için, uygun dosya yollarıyla convertPdfToImage fonksiyonunu çağırabilirsiniz. Örneğin:

const pdfPath = '/path/to/input.pdf';
const outputPath = '/path/to/output/folder';

convertPdfToImage(pdfPath, outputPath);

Not: pdfPath değerini "/path/to/input.pdf" ile girdi PDF dosyasının gerçek yolu ve "/path/to/output/folder" ile istenilen çıktı dizini yoluyla değiştirin.

Tam kod aşağıdaki gibidir:

const pdfPoppler = require('pdf-poppler');

const pdfPath = 'C:\\Users\\hp\\Desktop\\Node.js_PDFtoImage\\pdf_files\\input.pdf';
const outputDir = 'C:\\Users\\hp\\Desktop\\Node.js_PDFtoImage\\pdf_images';

async function convertPdfToImage(pdfPath, outputPath) {
  const opts = {
    format: 'jpeg',      // You can choose other formats like png or tiff
    out_dir: outputPath,
    out_prefix: 'page',
    page: null           // Specify the page number here to convert a specific page, otherwise null to convert all pages
  };

  try {
    await pdfPoppler.convert(pdfPath, opts);
    console.log('PDF converted to image successfully!');
  } catch (error) {
    console.error('Error converting PDF to image:', error);
  }
}

convertPdfToImage(pdfPath, outputDir);

Node.js Betiğini Çalıştırma

Aşağıdaki komutu çalıştırarak Node.js betiğini çalıştırın:

node pdfToImage.js
node pdfToImage.js
SHELL

Bu, Node.js betiğini çalıştıracak ve pdf-poppler kullanarak PDF'i görüntü dosyalarına dönüştürecektir.

Node.js'de PDF'i Görüntüye Dönüştürme: Şekil 3 - Node.js betiği

Çıktı Klasörü

Node.js'de PDF'i Görüntüye Dönüştürme: Şekil 4 - Çıktı

Rasterize PDF File to Image in C

C# .NET İçin IronPDF

IronPDF, C# geliştiricilerine PDF belgeleriyle anında çalışmaları için olanak tanıyan çok yönlü bir .NET kütüphanesidir. C# içinde PDF dosyaları oluşturmak, manipüle etmek ve dönüştürmek için kapsamlı özellikler sunar.

IronPDF, C# kullanarak PDF belgelerini görüntü dosyalarına dönüştürmenin kolay bir yolunu sunar. Bu özellik, görüntü çıkarmak veya programatik olarak PDF dosyalarından görüntü küçük resimleri üretmek gerektiğinde özellikle faydalıdır.

IronPDF kullanarak görüntülere dönüştürmek için aşağıdaki kod parçasındaki adımları takip edebilirsiniz:

using IronPdf;
using IronSoftware.Drawing;

var pdf = PdfDocument.FromFile("input.pdf");

// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");

// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);

// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
using IronPdf;
using IronSoftware.Drawing;

var pdf = PdfDocument.FromFile("input.pdf");

// Extract all pages to a folder as image files
pdf.RasterizeToImageFiles(@"C:\image\folder\*.png");

// Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles(@"C:\image\folder\example_pdf_image_*.jpg", 100, 80);

// Extract all pages as AnyBitmap objects
AnyBitmap [] pdfBitmaps = pdf.ToBitmap();
Imports IronPdf
Imports IronSoftware.Drawing

Private pdf = PdfDocument.FromFile("input.pdf")

' Extract all pages to a folder as image files
pdf.RasterizeToImageFiles("C:\image\folder\*.png")

' Dimensions and page ranges may be specified
pdf.RasterizeToImageFiles("C:\image\folder\example_pdf_image_*.jpg", 100, 80)

' Extract all pages as AnyBitmap objects
Dim pdfBitmaps() As AnyBitmap = pdf.ToBitmap()
$vbLabelText   $csharpLabel

Node.js'de PDF'i Görüntüye Dönüştürme: Şekil 5 - Node.js PDF'ten Görüntüye Çıktı

IronPDF kullanarak PDF'yi görüntü dosyasına dönüştürmenin ne kadar kolay olduğunu gösterir. PDF'yi görüntüye dönüştürme hakkında daha fazla bilgi için lütfen bu kod örnekleri sayfasını ziyaret edin.

Sonuç

Bu yazıda, pdf-poppler paketini kullanarak Node.js'de PDF dosyalarını görüntülere nasıl dönüştüreceğimizi inceledik. Ayrıntılı adımları izleyerek, PDF'den görüntüye dönüştürme yeteneklerini Node.js uygulamalarınıza entegre edebilir ve programatik olarak PDF belgelerini işlemek ve manipüle etmek için geniş bir imkan yelpazesi açabilir.

Diğer tarafta, IronPDF, PDF manipülasyonu ve dönüştürme işlerini kolaylaştıran güçlü bir C# kütüphanesidir. PDF'yi görüntülere dönüştürme yeteneği, PDF sayfalarının programlı olarak görüntü temsillerini çıkarmak veya oluşturmak için kullanışlı bir yol sunar. IronPDF'ün özelliklerinden yararlanarak, geliştiriciler PDF'den görüntüye dönüştürme işlevini C# uygulamalarına sorunsuz bir şekilde entegre edebilirler.

IronPDF geliştirme için ücretsizdir ve ticari kullanım için lisanslanabilir. Ayrıca, ticari modda ücretsiz bir deneme ile de kullanabilirsiniz.

Curtis Chau
Teknik Yazar

Curtis Chau, Bilgisayar Bilimleri alanında Lisans Derecesine (Carleton Üniversitesi) sahip ve Node.js, TypeScript, JavaScript ve React konularında uzmanlaşmış ön uç geliştirmeyle ilgileniyor. Sezgisel ve estetik açıdan hoş kullanıcı arayüzleri oluşturma tutkunu, Curtis modern çerçevelerle çalışmayı ve iyi yapı...

Daha Fazla Oku

Iron Destek Ekibi

Haftada 5 gün, 24 saat çevrimiçiyiz.
Sohbet
E-posta
Beni Ara