PDF'yi JavaScript'te optimize edin

PDF dosyaları, belge paylaşımı için her yerde kullanılan bir formattır, ancak bazen hacimli olabilirler, bu da yükleme sürelerinin yavaşlamasına ve depolama gereksinimlerinin artmasına neden olabilir. PDF dosyalarını optimize etmek, özellikle web uygulamalarında kusursuz bir kullanıcı deneyimi sağlamak için çok önemlidir. Bu nedenle, bu blog yazısında PDF dosyalarını JavaScript kullanarak nasıl optimize edebileceğimizi inceleyeceğiz.

PDF’yi Optimize Etmek için JavaScript Kitaplığı

Bir JavaScript uygulamasında PDF optimizasyonu için [Aspose.PDF for JavaScript] kullanacağız1. Geliştiricilerin JavaScript kullanarak PDF dosyalarını işlemesine, değiştirmesine ve optimize etmesine olanak tanıyan güçlü bir kitaplıktır. O halde önce kütüphaneyi yükleyerek başlayalım.

Kitaplığı İndirin ve burada verilen kurulum talimatlarını izleyin: Aspose.PDF for JavaScript nasıl kurulur.

PDF’yi JavaScript’te optimize etme

PDF optimizasyon sürecine dalmadan önce, PDF dosyalarını optimize etmenin neden bu kadar önemli olduğunu anlayalım:

  • Daha Hızlı Yükleme Süreleri: Optimize edilmiş PDF’ler daha hızlı yüklenir ve bekleme sürelerini azaltarak kullanıcı deneyimini geliştirir.
  • Bant Genişliği Verimliliği: Daha küçük dosya boyutları, bant genişliği tüketiminin azalmasına neden olarak PDF’lerin paylaşılmasını ve indirilmesini kolaylaştırır.
  • Depolama Alanı: Optimize edilmiş PDF’ler daha az depolama alanı kaplar; bu, özellikle çok sayıda belgeyle uğraşırken önemlidir.

Şimdi aşağıdaki adımları izleyerek bir PDF dosyasını optimize etmek için komut dosyasını yazalım.

  • Öncelikle optimize etmeniz gereken PDF dosyasını seçin.
  • Daha sonra dosyayı okumak için bir FileReader nesnesi oluşturun.
  • Bundan sonra PDF’yi optimize etmek için AsposePdfOptimize fonksiyonunu çağırın. Bu işlevin parametreleri, sonuçta ortaya çıkan PDF dosyasının adını içerir.
  • AsposePdfOptimize işlevi bir JSON nesnesi döndürür ve json.errorCode’u kullanarak PDF dosyasının başarıyla optimize edilip edilmediğini kontrol edebilirsiniz. Hata kodu 0 ise PDF herhangi bir sorun olmadan optimize edilmiştir. Aksi taktirde json.errorText’ten okuyabileceğiniz bir hata oluşmuştur.
  • Son olarak, optimize edilmiş PDF dosyasına bir bağlantı oluşturmak için DownloadFile işlevini çağırın.

Aşağıdaki kod parçacığı, bir PDF dosyasının JavaScript’te nasıl optimize edileceğini gösterir.

var ffileOptimize = function (e) {
  const file_reader = new FileReader();
  file_reader.onload = (event) => {
    
    /*optimize a PDF-file and save the "ResultOptimize.pdf"*/
    const json = AsposePdfOptimize(event.target.result, e.target.files[0].name, "ResultOptimize.pdf");
    if (json.errorCode == 0) document.getElementById('output').textContent = json.fileNameResult;
    else document.getElementById('output').textContent = json.errorText;
    
    /*make a link to download the result file*/
    DownloadFile(json.fileNameResult, "application/pdf");
  };
  file_reader.readAsArrayBuffer(e.target.files[0]);
};

PDF Optimizasyonunda Web Worker’ı Kullanma

Önceki bölümde, bir PDF’yi yükledik, optimize ettik ve ortaya çıkan PDF’yi indirdik. Şimdi optimizasyon sürecini daha sorunsuz hale getirmek ve UI iş parçacığının engellenmesini önlemek için bir web çalışanı kullanalım. Aşağıdaki script, önceki bölümde yazdığımız PDF optimizasyon fonksiyonunu kullanan bir web çalışanının nasıl yazılacağını gösterir.

/*Create Web Worker*/
const AsposePDFWebWorker = new Worker("AsposePDFforJS.js");
AsposePDFWebWorker.onerror = evt => console.log(`Error from Web Worker: ${evt.message}`);
AsposePDFWebWorker.onmessage = evt => document.getElementById('output').textContent = 
  (evt.data == 'ready') ? 'loaded!' :
    (evt.data.json.errorCode == 0) ?
      `Result:\n${DownloadFile(evt.data.json.fileNameResult, "application/pdf", evt.data.params[0])}` :
      `Error: ${evt.data.json.errorText}`;

/*Event handler*/
const ffileOptimize = e => {
  const file_reader = new FileReader();
  file_reader.onload = event => {
    
    /*Optimize a PDF-file and save the "ResultOptimize.pdf" - Ask Web Worker*/
    AsposePDFWebWorker.postMessage(
      { "operation": 'AsposePdfOptimize', "params": [event.target.result, e.target.files[0].name, "ResultOptimize.pdf"] },
      [event.target.result]
    );
  };
  file_reader.readAsArrayBuffer(e.target.files[0]);
};

/*Make a link to download the result file*/
const DownloadFile = (filename, mime, content) => {
    mime = mime || "application/octet-stream";
    var link = document.createElement("a"); 
    link.href = URL.createObjectURL(new Blob([content], {type: mime}));
    link.download = filename;
    link.innerHTML = "Click here to download the file " + filename;
    document.body.appendChild(link); 
    document.body.appendChild(document.createElement("br"));
    return filename;
  }

JavaScript’te PDF Kaynaklarını Optimize Etme

PDF dosyalarını optimize etmenin başka bir yöntemi de kullanılmayan kaynakları kaldırmak ve ortak kaynakları tek bir nesnede birleştirmektir. Aspose.PDF, PDF kaynaklarını optimize etmek için AsposePdfOptimizeResource işlevini sağlar. Aşağıdaki kod parçacığı, JavaScript’te PDF kaynaklarının nasıl optimize edileceğini gösterir.

var ffilePdfOptimizeResource = function (e) {
  const file_reader = new FileReader();
  file_reader.onload = (event) => {
    
    /*Optimize resources a PDF-file and save the "ResultPdfOptimizeResource.pdf"*/
    const json = AsposePdfOptimizeResource(event.target.result, e.target.files[0].name, "ResultPdfOptimizeResource.pdf");
    if (json.errorCode == 0) document.getElementById('output').textContent = json.fileNameResult;
    else document.getElementById('output').textContent = json.errorText;
    
    /*Make a link to download the result file*/
    DownloadFile(json.fileNameResult, "application/pdf");
  };
  file_reader.readAsArrayBuffer(e.target.files[0]);
};

Ücretsiz JavaScript PDF Kitaplığı Alın

Ücretsiz bir geçici lisans alın ve JavaScript PDF optimizasyon kitaplığımızı hiçbir sınırlama olmadan kullanın.

Çözüm

Web uygulamalarında optimum performansı ve kullanıcı deneyimini sağlamak için PDF dosyalarını optimize etmek çok önemlidir. Aspose.PDF for JavaScript, PDF belgelerini verimli bir şekilde optimize etmek için güçlü bir araç seti sağlar. Bu blog yazısında size PDF dosyalarını JavaScript kullanarak optimize etmenin kolay uygulanabilen bir yöntemini sunduk. Bu PDF optimizasyon yöntemini kullanarak web uygulamalarınızdaki genel belge yönetimini önemli ölçüde iyileştirebilirsiniz.

Belgeler’te JavaScript PDF kitaplığımız hakkında daha fazla bilgi edinin. Sorularınız varsa lütfen forum aracılığıyla bizimle paylaşın.

Ayrıca bakınız