←Select platform

CompareDocumentPage Method

Summary

Compares a list of DocumentPageText objects and maps the results to a DocumentDifference

Syntax
C#
C++/CLI
Python
public DocumentDifference CompareDocumentPage( 
   IList<DocumentPageText> pages, 
   int pageNumber 
) 
public:  
   DocumentDifference^ CompareDocumentPage( 
      IList<DocumentPageText^>^ pages, 
      Int32 pageNumber 
   ) 
def CompareDocumentPage(self,pages,pageNumber): 

Parameters

pages

List of DocumentPageText objects to compare.

pageNumber

The page number that the DocumentPageText object corresponds to.

Return Value

A DocumentDifference object.

Remarks

Exactly two DocumentPageText objects must be provided.

This method compares the DocumentPageText objects and builds positional information about the differences. If you are just interested in comparing the text, use the CompareText(IList<DocumentPageText>) method instead.

Example
C#
Java
using Leadtools.Document; 
using Leadtools.Document.Compare; 
using Leadtools; 
 
 
public void CompareDocumentPageExample() 
{ 
   var doc1 = DocumentFactory.LoadFromFile(pathToDocument1, new LoadDocumentOptions()); 
   var doc2 = DocumentFactory.LoadFromFile(pathToDocument2, new LoadDocumentOptions()); 
 
   var textList = new List<DocumentPageText>() 
   { 
      doc1.Pages.First().GetText(), 
      doc2.Pages.First().GetText() 
   }; 
 
   var comparer = new DocumentComparer(); 
   var diffs = comparer.CompareDocumentPage(textList, 1); 
         
   foreach (PageCharactersDifference diff in diffs.Differences) 
   { 
      Console.WriteLine($"Operations: {diff.Operation}"); 
      Console.WriteLine($"Text: {diff.Text}"); 
      foreach(PageCharacter pageChar in diff.Characters) 
      { 
         Console.WriteLine($"    Character: {pageChar.Character}"); 
         Console.WriteLine($"    Character Index: {pageChar.CharacterIndex}"); 
         Console.WriteLine($"    Page Number: {pageChar.PageNumber}"); 
         Console.WriteLine($"    Wordmap Index: {pageChar.WordMapIndex}"); 
      } 
      Console.WriteLine("--------"); 
   } 
} 
 
import static org.junit.Assert.assertTrue; 
 
import java.io.ByteArrayOutputStream; 
import java.io.File; 
import java.io.IOException; 
import java.io.RandomAccessFile; 
 
import java.util.ArrayList; 
import java.util.List; 
 
import org.junit.*; 
import org.junit.runner.JUnitCore; 
import org.junit.runner.Result; 
import org.junit.runner.notification.Failure; 
 
import leadtools.document.DocumentFactory; 
import leadtools.document.DocumentPageText; 
import leadtools.document.LEADDocument; 
import leadtools.document.LoadDocumentOptions; 
import leadtools.document.compare.*; 
 
 
public void compareDocumentPageExample() { 
   final String LEAD_VARS_IMAGES_DIR = "C:\\LEADTOOLS23\\Resources\\Images"; 
 
   String pathToDocument2 = combine(LEAD_VARS_IMAGES_DIR, "LEADTOOLSEditor.docx"); 
   String pathToDocument1 = combine(LEAD_VARS_IMAGES_DIR, "LEADTOOLSEditor.docx"); 
   LEADDocument doc1 = DocumentFactory.loadFromFile(pathToDocument1, new LoadDocumentOptions()); 
   LEADDocument doc2 = DocumentFactory.loadFromFile(pathToDocument2, new LoadDocumentOptions()); 
 
   List<DocumentPageText> textList = new ArrayList<DocumentPageText>(); 
   textList.add(doc1.getPages().get(0).getText()); 
   textList.add(doc2.getPages().get(0).getText()); 
 
   DocumentComparer comparer = new DocumentComparer(); 
   DocumentDifference diffs = comparer.compareDocumentPage(textList, 0); 
 
   for (PageCharactersDifference diff : diffs.getDifferences()) { 
      System.out.println("Operations: " + diff.getOperation()); 
      System.out.println("Text: " + diff.getText()); 
 
      assertTrue(diff.getOperation() == DifferenceOperation.equal); 
 
      for (PageCharacter pageChar : diff.getCharacters()) { 
         System.out.println("    Character: " + pageChar.getCharacter()); 
         System.out.println(" "); 
         System.out.println("    Character Index: " + pageChar.getCharacterIndex()); 
         System.out.println("    Page Number: " + pageChar.getPageNumber()); 
         System.out.println("    Wordmap Index: " + pageChar.getWordmapIndex()); 
      } 
      System.out.println("--------"); 
   } 
} 
Requirements

Target Platforms

Help Version 23.0.2024.2.29
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2024 LEAD Technologies, Inc. All Rights Reserved.

Leadtools.Document.Compare Assembly
Products | Support | Contact Us | Intellectual Property Notices
© 1991-2023 LEAD Technologies, Inc. All Rights Reserved.