Comparar apresentações do PowerPoint em Node.js

Comparar arquivos PPTX em Node.js

Podemos comparar dois ou mais arquivos de apresentação do PowerPoint e destacar as diferenças programaticamente na nuvem. Ajuda a identificar as alterações em diferentes versões da apresentação de forma programática. Neste artigo, aprenderemos como comparar duas ou mais apresentações do PowerPoint usando uma API REST no Node.js.

Os seguintes tópicos devem ser abordados neste artigo de comparação de arquivos powerpoint:

API REST e SDK Node.js para comparar arquivos PPTX

Para comparar dois ou mais arquivos PPTX, usaremos a API Node.js SDK of GroupDocs.Comparison Cloud. Ele permite comparar 2 arquivos powerpoint de os formatos suportados e encontrar as diferenças em um arquivo resultante. Instale-o usando o seguinte comando no console:

npm install groupdocs-comparison-cloud

Por favor, obtenha seu ID e Segredo do cliente no painel antes de seguir as etapas mencionadas. Depois de ter seu ID e segredo, adicione o código conforme mostrado abaixo:

// Este exemplo de código demonstra como adicionar o ID do cliente e o segredo no código.
global.ClientId = "659fe7da-715b-4744-a0f7-cf469a392b73";
global.ClientSecret = "b377c36cfa28fa69960ebac6b6e36421";
global.myStorage = "";

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

A seguir, vamos aprender como comparar arquivos ppt e comparar dois arquivos ppt quanto às diferenças.

Compare duas apresentações do PowerPoint usando uma API REST em Node.js

Podemos comparar dois arquivos do PowerPoint na nuvem seguindo as etapas simples abaixo:

  1. Carregar os arquivos PPTX para a nuvem.
  2. Comparar arquivos PPTX enviados.
  3. Baixe o arquivo resultante.

Carregar os arquivos do PowerPoint

Em primeiro lugar, faremos o upload dos arquivos PPTX de origem e destino para a nuvem usando o seguinte exemplo de código:

// Este exemplo de código demonstra como carregar vários arquivos para a nuvem.
// Construir FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);
let resourcesFolder = 'C:\\Files\\comparison\\upload\\';

fs.readdir(resourcesFolder, (err, files) => {
  files.forEach(file => {
    // Ler arquivo
    fs.readFile(resourcesFolder + file, (err, fileStream) => {
      // Solicitação de upload de arquivo
      let request = new groupdocs_comparison_cloud.UploadFileRequest(file, fileStream, myStorage);
      // Subir arquivo
      fileApi.uploadFile(request);
    });
  });
});

Como resultado, os arquivos do PowerPoint carregados estarão disponíveis na seção de arquivos do painel para comparar documentos do powerpoint na nuvem.

Comparar arquivos do PowerPoint em Node.js

Agora, vamos comparar ppt os arquivos do PowerPoint carregados programaticamente, seguindo as etapas abaixo:

  • Em primeiro lugar, crie uma instância do CompareApi.
  • Em seguida, defina a fonte de entrada e os caminhos de arquivo PPTX de destino.
  • Em seguida, inicialize o objeto ComparisonOptions e atribua os arquivos de origem e destino.
  • Em seguida, defina o caminho do arquivo de saída.
  • Depois disso, crie o ComparisonsRequest com ComparisonOptions como argumento.
  • Por fim, compare os slides do powerpoint e obtenha os resultados usando o método comparisons().

O exemplo de código a seguir mostra como comparar dois arquivos do PowerPoint usando uma API REST em Node.js.

// Este exemplo de código demonstra como comparar dois arquivos PPTX
// Inicializar API
let compareApi = groupdocs_comparison_cloud.CompararApi.fromKeys(clientId, clientSecret);

// Arquivo fonte
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pptx";

// Arquivo de destino
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pptx";

// Definir configurações de comparação
let settings = new groupdocs_comparison_cloud.Settings();

// Comparar sensibilidade
settings.sensitivityOfComparison = 100;

// Definir opções de comparação
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "result.pptx";
options.settings = settings;

// Criar solicitação de comparação
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// Comparar
let response = await compareApi.comparisons(request);
console.log("Output file link: " + response.href);
Arquivos de apresentações do PowerPoint de origem e destino | Modelo de PowerPoint para comparação

Arquivos de apresentações do PowerPoint de origem e destino.

Comparar arquivos do PowerPoint em Node.js | Comparação em powerpoint

Comparar arquivos do PowerPoint em Node.js

O arquivo PPTX resultante também contém um slide de resumo ao final do documento, conforme abaixo:

Compare a apresentação em powerpoint e o resumo de comparação das alterações.

Baixe o arquivo resultante

Como resultado, o exemplo de código acima salvará um arquivo do PowerPoint recém-criado com alterações na nuvem. Ele pode ser baixado usando o seguinte exemplo de código:

// Este exemplo de código demonstra como baixar o arquivo PPTX da nuvem.
// Construir FileApi
let fileApi = groupdocs_comparison_cloud.FileApi.fromConfig(config);

// Criar solicitação de arquivo de download
let request = new groupdocs_comparison_cloud.DownloadFileRequest("result.pptx", myStorage);

// ⇬ Fazer download do arquivo
let response = await fileApi.downloadFile(request);

// Salvar no diretório de trabalho
fs.writeFile("C:\\Files\\comparison\\result.pptx", response, "binary", function (err) { });

Comparar vários arquivos do PowerPoint usando Node.js

Também podemos comparar vários documentos do PowerPoint seguindo as etapas abaixo:

  • Em primeiro lugar, crie uma instância do CompareApi.
  • Em seguida, defina o caminho do arquivo PPTX de origem de entrada.
  • Em seguida, defina vários caminhos de arquivo PPTX de destino.
  • Em seguida, inicialize o objeto ComparisonOptions e atribua os arquivos de origem e destino.
  • Em seguida, defina o caminho do arquivo de saída.
  • Depois disso, crie o ComparisonsRequest com ComparisonOptions como argumento.
  • Por fim, compare os arquivos e obtenha os resultados usando o método comparisons().

O exemplo de código a seguir mostra como comparar vários arquivos do PowerPoint usando uma API REST em Node.js.

// Este exemplo de código demonstra como comparar vários arquivos PPTX
// Inicializar API
let compareApi = groupdocs_comparison_cloud.CompararApi.fromKeys(clientId, clientSecret);

// Arquivo fonte
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pptx";

// Arquivo de destino 1
let target1 = new groupdocs_comparison_cloud.FileInfo();
target1.filePath = "target.pptx";

// Arquivo de destino 2
let target2 = new groupdocs_comparison_cloud.FileInfo();
target2.filePath = "target2.pptx";

// Definir opções de comparação
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target1, target2];
options.outputPath = "result_Multiple.pptx";

// Criar solicitação de comparação
let request = new groupdocs_comparison_cloud.ComparisonsRequest(options);

// Comparar
let response = await compareApi.comparisons(request);
console.log("Output file link: " + response.href);

Obtenha a lista de alterações usando a API REST no Node.js

Podemos obter uma lista de todas as alterações encontradas durante a comparação dos arquivos do PowerPoint seguindo as etapas abaixo:

  • Em primeiro lugar, crie uma instância do CompareApi.
  • Em seguida, defina o caminho do arquivo PPTX de origem de entrada.
  • Em seguida, defina o caminho do arquivo PPTX de destino.
  • Em seguida, inicialize o objeto ComparisonOptions.
  • Em seguida, atribua arquivos de origem/destino e defina o caminho do arquivo de saída.
  • Depois disso, crie o PostChangesRequest com o objeto ComparisonOptions como argumento.
  • Por fim, obtenha os resultados chamando o método postChanges().

O exemplo de código a seguir mostra como obter uma lista de alterações usando uma API REST em Node.js.

// Este exemplo de código demonstra como obter uma lista de todas as alterações.
// Inicializar API
let compareApi = groupdocs_comparison_cloud.CompareApi.fromKeys(clientId, clientSecret);

// Arquivo fonte
let source = new groupdocs_comparison_cloud.FileInfo();
source.filePath = "source.pptx";

// Arquivo de destino
let target = new groupdocs_comparison_cloud.FileInfo();
target.filePath = "target.pptx";

// Definir opções de comparação
let options = new groupdocs_comparison_cloud.ComparisonOptions();
options.sourceFile = source;
options.targetFiles = [target];
options.outputPath = "result.pptx";

// Criar solicitação de comparação
let request = new groupdocs_comparison_cloud.PostChangesRequest(options);
let changes = await compareApi.postChanges(request);

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

changes.forEach(change => {
  console.log(change.id + 1 +"- Target Text: " + change.targetText + ", Text: " + change.text + ", Type: " + change.type);
});
Changes count: 4
1- Target Text: Document Comparison, Text: Shape, Type: Inserted
2- Target Text: undefined, Text: Shape, Type: Deleted
3- Target Text: Document Comparison REST API & Node.js SDK, Text: Node.js , Type: Deleted
4- Target Text: Document Comparison REST API & Node.js SDK, Text: Node.js , Type: Inserted

Experimente on-line

Como comparar dois arquivos ppt online grátis? Experimente a seguinte ferramenta de comparação PPTX on-line gratuita para comparação de apresentações em powerpoint. Este software gratuito de modelo powerpoint de comparação para comparar ppt online é desenvolvido usando a API acima. https://products.groupdocs.app/comparison/pptx

Conclusão

Neste artigo, aprendemos como:

  • comparar dois ou mais arquivos PowerPoint em Node.js;
  • obter uma lista de itens inseridos e excluídos;
  • carregar programaticamente mais de um arquivo PPTX para a nuvem;
  • baixe o arquivo PPTX da nuvem.

Além disso, você pode aprender mais sobre GroupDocs.Comparison Cloud API usando a documentação. Também fornecemos uma seção Referência de API que permite visualizar e interagir com nossas APIs diretamente pelo navegador. Em caso de ambiguidade, sinta-se à vontade para nos contatar no fórum.

Veja também