Comparar archivos PDF puede ser una tarea tediosa, especialmente cuando necesita identificar diferencias entre varios documentos. Afortunadamente, GroupDocs.Comparison for Java API le brinda el poder de comparar archivos PDF mediante programación. En este artículo, le mostraremos paso a paso cómo comparar dos archivos PDF usando código Java, incluido cómo manejar archivos PDF protegidos con contraseña. También demostraremos cómo comparar más de dos archivos PDF y cómo aceptar o rechazar cualquiera de los cambios identificados. Entonces, si está listo para optimizar su flujo de trabajo de comparación de PDF, ¡siga leyendo!

Compare documentos PDF para encontrar diferencias utilizando la API de Java

Aquí se tratan los siguientes temas:

Si está interesado en Comparar archivos PDF en línea, visite la Herramienta de comparación de PDF en línea que funciona con GroupDocs.

API de Java para comparar archivos PDF

En este artículo, utilizaré la API GroupDocs.Comparison for Java para comparar documentos PDF, ya que esta API permite la comparación entre varios documentos PDF. Además, permite la comparación de varios otros archivos del mismo formato de documento dentro de las aplicaciones Java.

Puede descargar el archivo JAR desde la sección de descargas o usar las últimas configuraciones de repositorio y dependencia de Maven dentro de sus aplicaciones Java.

<repository>
    <id>groupdocs-artifacts-repository</id>
    <name>GroupDocs Artifacts Repository</name>
    <url>https://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
    <groupId>com.groupdocs</groupId>
    <artifactId>groupdocs-comparison</artifactId>
    <version>23.3</version>
</dependency>

Compara documentos PDF usando Java

Para identificar diferencias (adiciones, eliminaciones) entre varias copias de un documento PDF, puede comparar estos archivos. Una vez que haya comparado el contenido del PDF, puede generar un nuevo documento que resalte todos los cambios identificados. Los siguientes pasos demuestran cómo usar Java para comparar dos documentos PDF y resaltar cualquier diferencia.

  • Cargue el primer documento PDF utilizando la clase Comparador.
  • Agregue el segundo archivo a Comparer usando el método de agregar.
  • Compare ambos archivos PDF y obtenga el resumen de cambios llamando al método de comparación.

El siguiente fragmento de código Java muestra cómo comparar documentos PDF y resaltar los cambios en el documento resultante.

// Compare dos documentos PDF y resalte los cambios usando Java

Comparer comparer = new Comparer("path/document-ver1.pdf");
comparer.add("path/document-ver2.pdf");

comparer.compare("path/comparison-result.pdf");

Acepte o rechace cambios identificados de archivos PDF usando Java

Muy similar a la funcionalidad de “seguimiento de cambios”, también es posible aceptar o rechazar cada cambio detectado en los documentos PDF a través de la programación. Los pasos a continuación demuestran cómo comparar y luego aceptar o rechazar los cambios que se identificaron en los documentos PDF.

  • Cargue los archivos PDF de origen y de destino utilizando la clase Comparador.
  • Compare los documentos cargados utilizando el método de comparación.
  • Obtenga los cambios identificados mediante el método getChanges.
  • Ahora recorra los cambios y configure la Acción de comparación apropiada.
    • Seleccione Aceptar para adoptar el cambio.
    • Seleccione Rechazar para denegar el cambio.
  • Llame al método applyChanges para obtener el documento resultante con los cambios aceptados.

El siguiente fragmento de código compara dos documentos PDF y luego acepta un cambio identificado y luego rechaza otro usando Java.

// Acepte y rechace los cambios identificados comparando documentos PDF usando Java

Comparer comparer = new Comparer("path/document-1.pdf");
comparer.add("path/document-2.pdf");

ChangeInfo[] changes = comparer.getChanges();

changes[0].setComparisonAction(ComparisonAction.REJECT);
changes[1].setComparisonAction(ComparisonAction.ACCEPT);

comparer.applyChanges("path/accept-reject-change.pdf", new ApplyChangeOptions(changes));

Compare documentos PDF protegidos con contraseña utilizando Java

Es posible comparar archivos protegidos con contraseña proporcionando sus contraseñas al cargar los documentos. Los siguientes pasos demuestran cómo comparar el contenido de documentos PDF protegidos con contraseña utilizando Java:

  • Prepare las opciones de carga para los documentos de origen y de destino, proporcionando las contraseñas necesarias.
  • Cargue el documento de origen utilizando la clase Comparador.
  • Agregue el documento de destino al Comparador, utilizando las opciones de carga preparadas.
  • Obtenga un resumen de las diferencias llamando al método de comparación.

El siguiente ejemplo de Java compara dos archivos PDF protegidos con contraseña y destaca las diferencias identificadas en un documento separado.

// Compare documentos PDF protegidos con contraseña utilizando Java
 
Comparer comparer = new Comparer("path/protected-document-ver1.pdf", new LoadOptions("SourceFilePassword"));
comparer.add("path/protected-document-ver2.pdf", new LoadOptions("TargetFilePassword"));

comparer.compare("path/protected-files-comparison-result.pdf");

Compara más de dos archivos PDF usando Java

De la misma manera, también es posible comparar más de dos documentos en busca de diferencias. Los siguientes pasos muestran cómo comparar varios documentos PDF y resaltar los cambios identificados:

  • Cargue el primer archivo PDF utilizando la clase Comparador.
  • Utilice el método de agregar para agregar cualquier documento adicional para compararlo con el Comparador.
  • Compare todos los archivos PDF posteriores utilizando el método de comparación y obtenga los cambios y el resumen de las diferencias.

El siguiente ejemplo muestra cómo comparar varios archivos PDF en Java y obtener los cambios en el documento resultante.

// Compara múltiples documentos PDF usando Java

Comparer comparer = new Comparer("path/document-1.pdf");
comparer.add("path/document-2.pdf");
comparer.add("path/document-3.pdf");
comparer.add("path/document-4.pdf");

comparer.compare("path/multiple-pdf-comparison-result.pdf");

Obtenga una licencia de API gratuita

Puede obtener una licencia temporal gratuita para usar la API sin las limitaciones de evaluación.

Conclusión

En resumen, cubrimos la comparación de dos o más archivos PDF usando Java, resaltando las diferencias y aceptando o rechazando mediante programación los cambios identificados. Además, exploramos cómo comparar documentos PDF protegidos con contraseña dentro de aplicaciones Java.

Muchas otras personalizaciones están bajo su control para administrar los resultados de la comparación. Puede ajustar la sensibilidad de comparación, optar por mostrar solo la página de resumen, ignorar las lagunas y más.

Cree su propia aplicación de comparación de PDF

Aquí hay algunos enlaces importantes que lo ayudarán a crear su propia aplicación de comparación de documentos.

Documentación | Referencia API | Formatos de archivo admitidos

Ejemplos de ejecución – GitHub | Foro de soporte gratuito | Notas de la versión

Ver también