GroupDocs.Comparison for .NET 19.6 Release Notes

Major Features

Below is the list of most notable changes in release of GroupDocs.Comparison for .NET 19.6:

  • Fixed problem when sections moved to the new page
  • Fixed typos in API reference
  • Implemented sensitivity option
  • Implemented calculation coordinates of changes for Words documents
  • Fixed content overlapping in resultant PDF documents
  • Fixed problem when sections moved to the new page
  • Integrated credit based billing system using latest version of Metered

Full List of Issues Covering all Changes in this Release

KeySummaryIssue Type
COMPARISONNET-1846Calculate correct coordinates of changes for WordsImprovement
COMPARISONNET-1929Implement sensitivity optionImprovement
COMPARISONNET-1901Integrate latest version of Dynabic.Metered into productsImprovement
COMPARISONNET-1815Ignore comments (for code files mostly)Improvement
COMPARISONNET-1816Ignore White Space - All, Leading, Trailing, Changes in amountImprovement
COMPARISONNET-1813Ignore Case - Ignore character case differencesImprovement
COMPARISONNET-1927Merged Document and then document Comparison failedBug
COMPARISONNET-1891Text got overlapped with other text or imagesBug
COMPARISONNET-1930Duplicate Images in Result file in PDFBug
COMPARISONNET-1772PDF comparison has overlapping and mangled outputBug

Public API and Backward Incompatible Changes

  1. Setting Comparison Detail level

    1. If we set DetailLevel = Middle, we don’t  add comment in some document formats (Words, Slides, Cells) if element was added\deleted\modified
    2. If we set DetailLevel = Middle, we don’t make case insensitive comparison. i.e. M = m.
    3. Was added sensitivity property. This option defined limit in percents, when element is detected as deleted or inserted.

    Minimal value - 0, comparison process not occurs for any length of sequences of two compared objects.

    Value by default - 75 comparison occurs when the percentage of deleted or inserted elements in relation to all elements does not exceed 75%

    Maximum value - 100. Comparison occurs at any length of a common subsequence of two compared objects..

    For instance, we have two words

    1)oneSource
    
    2)twoTarget
    

    This two words have very small a common subsequence.Therefore, when comparing them at 70% accuracy, it is not taken into account and we get a completely removed and inserted word:

    (twoTarget)[oneSource]
    

    But at 100% accuracy, we take into account this subsequence, despite the fact that it consists of two letters

    (tw)o[n](Targ)e[Source](t)
    

    Code snippet:

    string source = "source.txt";
    string target = "target.txt";
    ComparisonSettings settings = new ComparisonSettings();
    settings.SensitivityOfComparison = 100;
    Comparer compare = new Comparer();
    ICompareResult result = compare.Compare(source, target, settings);