NodeJ'lerde REST API kullanarak PDF Dosyalarını Karşılaştırın

Bulut üzerinde programlı olarak iki veya daha fazla PDF belgesini karşılaştırabilirsiniz. Karşılaştırma, belgelerdeki benzerlikleri ve farklılıkları belirlemenizi sağlar. Bu makalede, Node.js’de bir REST API kullanarak PDF dosyalarını nasıl karşılaştıracağınızı öğreneceksiniz.

Bu yazıda aşağıdaki konular ele alınacaktır:

Belge Karşılaştırma REST API ve Node.js SDK

PDF belgelerini karşılaştırmak için GroupDocs.Comparison Cloud’un Node.js SDK’sı API’sini kullanacağım. İki veya daha fazla belgeyi karşılaştırmanıza ve farklılıkları bulmanıza olanak tanır. Sonuç olarak, farklılıkları içeren bir sonuç dosyası oluşturur. Ayrıca, alınan değişiklikleri kabul etmenizi veya reddetmenizi sağlar. Belgeleri, elektronik tabloları, sunumları, Visio diyagramlarını, e-postaları ve diğer pek çok formattaki dosyaları karşılaştırmak için onu mevcut Node.js uygulamalarınıza kolayca entegre edebilirsiniz. Ayrıca Cloud API için belge karşılaştırma aile üyeleri olarak .NET, Java, PHP, Python ve Ruby SDK’ları sağlar.

Konsolda aşağıdaki komutu kullanarak GroupDocs.Comparison Cloud’u Node.js uygulamanıza yükleyebilirsiniz:

npm install groupdocs-comparison-cloud --save

Lütfen belirtilen adımları izlemeden önce Müşteri Kimliğinizi ve Sırrınızı kontrol panelinden alın. Kimliğinizi ve sırrınızı aldıktan sonra, kodu aşağıda gösterildiği gibi ekleyin:

global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";

const config = new groupdocs_comparison_cloud.Configuration(clientId, clientSecret);
config.apiBaseUrl = "https://api.groupdocs.cloud";

Node.js’de bir REST API kullanarak PDF Dosyalarını karşılaştırın

Aşağıda verilen basit adımları izleyerek PDF belgelerinizi programlı olarak karşılaştırabilirsiniz:

  1. PDF dosyalarını Buluta Yükle
  2. Node.js Kullanarak PDF Dosyalarını Karşılaştırın
  3. Ortaya çıkan PDF dosyasını İndir

PDF Dosyalarını Yükleyin

İlk olarak, aşağıdaki kod örneğini kullanarak kaynak ve hedef PDF dosyalarını Bulut’a yükleyin:

// FileApi'yi inşa et
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
let resourcesFolder = 'C:\\Files\\';

fs.readdir(resourcesFolder, (err, files) => {
  files.forEach(file => {
    // dosyaları tek tek oku
    fs.readFile(resourcesFolder + file, (err, fileStream) => {
      // dosya yükleme isteği oluştur
      let request = new groupdocs_comparison_cloud.UploadFileRequest(file, fileStream, myStorage);
      // dosya yükleme
      fileApi.uploadFile(request)
        .then(function (response) {
          console.log(file + " uploaded: " + response.uploaded.length);
        })
        .catch(function (error) {
          console.log("Error: " + error.message);
        });
    });
  });
});

Sonuç olarak, yüklenen PDF dosyaları, bulut üzerindeki kontrol panelinizin dosyalar bölümünde mevcut olacaktır.

Node.js kullanarak PDF Dosyalarını Karşılaştırın

Aşağıda belirtilen adımları izleyerek iki PDF belgesini programlı olarak karşılaştırabilirsiniz:

  • Bir CompareApi örneği oluşturun
  • Kaynak .pdf dosyasını ayarlayın
  • Hedef .pdf dosyasını ayarlayın
  • Karşılaştırma Seçeneklerini Tanımla
  • Kaynak ve hedef dosyaları atama
  • Çıktı dosyası yolunu ayarla
  • Karşılaştırma Talebi Oluştur
  • CompareApi.comparisons() yöntemini çağırarak sonuçları alın

Aşağıdaki kod örneği, Node.js’de bir REST API kullanarak iki PDF dosyasının nasıl karşılaştırılacağını gösterir.

// api'yi başlat
let karşılaştırmakApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// Kaynak dosyası
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// Hedef dosya
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

// karşılaştırma seçeneklerini tanımlayın
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "karşılaştırmakd/result.pdf";

// karşılaştırma isteği oluştur
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// karşılaştırmak
let response = await karşılaştırmakApi.comparisons(request);
console.log("Output file link: " + response.href);
Node.js kullanarak PDF Dosyalarını Karşılaştırın

Node.js kullanarak PDF Dosyalarını Karşılaştırın

Ortaya çıkan dosya ayrıca aşağıda gösterildiği gibi belgenin sonunda bir özet sayfası içerir:

Node.js'de REST API kullanarak PDF Dosyalarını Karşılaştırın

Sonuç Dosyasını İndirin

Yukarıdaki kod örneği, bulutta yeni oluşturulan bir PDF dosyasındaki farklılıkları kaydedecektir. Aşağıdaki kod örneğini kullanarak indirebilirsiniz:

// FileApi'yi inşa et
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);

// indirme dosyası isteği oluştur
let request = new groupdocs_comparison_cloud.DownloadFileRequest("compared\\result.pdf", myStorage);

// dosyayı indir
let response = await fileApi.downloadFile(request);

// çalışma dizinine kaydet
fs.writeFile("C:\\Files\\result.pdf", response, "binary", function (err) { });

Node.js Kullanarak Birden Fazla PDF Dosyasını Karşılaştırın

Aşağıda belirtilen basit adımları izleyerek birden çok PDF belgesini programlı olarak karşılaştırabilirsiniz:

  • Bir CompareApi örneği oluşturun
  • Kaynak .pdf dosyasını ayarlayın
  • Birden fazla hedef .pdf dosyası ayarlayın
  • CompareionOptions örneği oluştur
  • Kaynak ve hedef dosyaları atama
  • Çıktı dosyası yolunu ayarla
  • Karşılaştırma Talebi Oluştur
  • CompareApi.comparisons() yöntemini çağırarak sonuçları alın

Aşağıdaki kod örneği, Node.js’de bir REST API kullanarak birden çok PDF dosyasının nasıl karşılaştırılacağını gösterir.

// api'yi başlat
let karşılaştırmakApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// Kaynak dosyası
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// hedef dosya 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target.pdf";

// hedef dosya 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.pdf";

// karşılaştırma seçeneklerini tanımlayın
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "karşılaştırmakd/result.pdf";

// karşılaştırma isteği oluştur
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// karşılaştırmak
let response = await karşılaştırmakApi.comparisons(request);

Node.js kullanarak Karşılaştırma Sonuçlarını Özelleştirin

Aşağıda belirtilen adımları izleyerek değişiklik stilini programlı olarak kolayca özelleştirebilirsiniz:

  • Bir CompareApi örneği oluşturun
  • Kaynak .pdf dosyasını ayarlayın
  • Hedef .pdf dosyasını ayarlayın
  • Ayarlar örneği oluştur
  • Karşılaştırma hassasiyetini ayarla
  • Öğe Stilini Özelleştir
  • CompareionOptions örneği oluştur
  • Kaynak ve hedef dosyaları atama
  • Çıktı dosyası yolunu ayarla
  • Ayarları ata
  • Karşılaştırma Talebi Oluştur
  • CompareApi.comparisons() yöntemini çağırarak sonuçları alın

Aşağıdaki kod örneği, Node.js’de bir REST API kullanarak karşılaştırma sonuçlarının nasıl özelleştirileceğini gösterir.

// api'yi başlat
let karşılaştırmakApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// Kaynak dosyası
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// Hedef dosya
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

// karşılaştırma ayarlarını tanımla
let settings = new groupdocs_comparison_cloud.Settings();

// duyarlılığı karşılaştır
settings.sensitivityOfComparison = 100;

// değişiklik stilini özelleştir
settings.insertedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.insertedItemsStyle.highlightColor = "14297642";
settings.insertedItemsStyle.fontColor = "16711680";
settings.insertedItemsStyle.underline = true;
settings.deletedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.deletedItemsStyle.fontColor = "14166746";
settings.deletedItemsStyle.bold = true;
settings.changedItemsStyle = new groupdocs_comparison_cloud.ItemsStyle();
settings.changedItemsStyle.fontColor = "14320170";
settings.changedItemsStyle.italic = true;

// karşılaştırma seçeneklerini tanımlayın
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "karşılaştırmakd/result_karşılaştırmakOptions.pdf";
options.settings = settings;

// karşılaştırma isteği oluştur
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// karşılaştırmak
let response = await karşılaştırmakApi.comparisons(request);

Node.js kullanarak Değişiklik Listesini Alın

Aşağıda belirtilen basit adımları izleyerek PDF belgelerini programlı olarak karşılaştırdıktan sonra bulunan farklılıkların tam bir listesini alabilirsiniz:

  • Bir CompareApi örneği oluşturun
  • Kaynak .pdf dosyasını ayarlayın
  • Hedef .pdf dosyasını ayarlayın
  • Karşılaştırma Seçeneklerini Tanımla
  • Karşılaştırma Talebi Oluştur
  • CompareApi.comparisons() yöntemini çağırarak sonuçları alın
  • Tüm değişiklikleri tek tek göster

Aşağıdaki kod örneği, Node.js’de bir REST API kullanarak değişiklik listesinin nasıl alınacağını gösterir.

// api'yi başlat
let compareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// Kaynak dosyası
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// Hedef dosya
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

// karşılaştırma seçeneklerini tanımlayın
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "compared/result.pdf";

// karşılaştırma isteği oluştur
let request = new groupdocs_comparison_cloud.PostChangesRequest(options);
let changes = await compareApi.postChanges(request);

console.log("Changes count: " + changes.length);

changes.forEach(change => {
  console.log(change.id + 1 +"- Target Text: " + change.targetText + ", Text: " + change.text + ", Type: " + change.type);
});
Node.js kullanarak Değişiklik Listesini Alın

Node.js kullanarak Değişiklik Listesini Alın

Node.js kullanarak Parola ve Meta Verilerle Karşılaştırın ve Kaydedin {#Compare-and-Save-with-Password-&-Metadata-using-Nodejs}

Ortaya çıkan dosyayı parola ile korumak ve onu meta verilerle kaydetmek için lütfen aşağıda belirtilen adımları izleyin:

  • Bir CompareApi örneği oluşturun
  • Kaynak .pdf dosyasını ayarlayın
  • Hedef .pdf dosyasını ayarlayın
  • Ayarlar örneği oluştur
  • Meta Verileri ve Parolayı Ayarlayın
  • CompareionOptions örneği oluştur
  • Kaynak ve hedef dosyaları atama
  • Çıktı dosyası yolunu ayarla
  • Ayarları ata
  • Karşılaştırma Talebi Oluştur
  • CompareApi.comparisons() yöntemini çağırarak sonuçları alın

Aşağıdaki kod örneği, Node.js’de bir REST API kullanarak ortaya çıkan dosyanın parola ve meta verilerle nasıl kaydedileceğini gösterir.

// api'yi başlat
let karşılaştırmakApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// Kaynak dosyası
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pdf";

// Hedef dosya
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pdf";

let settings = new groupdocs_comparison_cloud.Settings();

// meta verileri ayarla
settings.metadata = new groupdocs_comparison_cloud.Metadata();
settings.metadata.author = "Author";
settings.metadata.company = "GroupDocs";
settings.metadata.lastSaveBy = "Last saved by";
settings.cloneMetadata = groupdocs_comparison_cloud.Settings.CloneMetadataEnum.FileAuthor;

// şifreyi belirle
settings.password = "password";
settings.passwordSaveOption = groupdocs_comparison_cloud.Settings.PasswordSaveOptionEnum.User;

// karşılaştırma seçeneklerini tanımlayın
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "karşılaştırmakd/result_Metadata.pdf";
options.settings = settings;

// karşılaştırma isteği oluştur
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// karşılaştırmak
let response = await karşılaştırmakApi.comparisons(request);

Çevrimiçi Deneyin

Lütfen yukarıdaki API kullanılarak geliştirilen aşağıdaki ücretsiz çevrimiçi PDF karşılaştırma aracını deneyin. https://products.groupdocs.app/comparison/pdf

Çözüm

Bu makalede, PDF belgelerini bulutta nasıl karşılaştıracağınızı öğrendiniz. Ayrıca birden çok PDF dosyasını karşılaştırmayı, değişiklik stilini özelleştirmeyi ve değişikliklerin bir listesini almayı da öğrendiniz. Ayrıca, birden çok PDF dosyasını programlı olarak buluta nasıl yükleyeceğinizi ve ardından ortaya çıkan dosyayı buluttan nasıl indireceğinizi öğrendiniz. Belgeleri kullanarak GroupDocs.Comparison Cloud API hakkında daha fazla bilgi edinebilirsiniz. Ayrıca, API’lerimizi doğrudan tarayıcı aracılığıyla görselleştirmenize ve bunlarla etkileşimde bulunmanıza olanak tanıyan bir API Referansı bölümü de sağlıyoruz. Herhangi bir belirsizlik durumunda, lütfen forumda bizimle iletişime geçmekten çekinmeyin.

Ayrıca bakınız