Search Results for

    Changelog

    All notable changes to Dangl.TextConverter are documented here.

    v2.0.0:

    • RTF texts now support images. They can be read from RTF and also exported. Conversion between RTF and Html will also preserve images. For some operations, images can only be preserved if they are converted to another format, e.g. importing DIB (Device Independent Bitmaps) from RTF requires you to supply an IImageConverter, similar when exporting a GIF image to RTF which also requires a conversion. To extract RTF texts from images, you must use the RtfToText.ConvertRtfToSegmentedText method
    • A new package Dangl.TextConverter.RtfImageConversion has been published, which contains converters for both GIF and DIB formats
    • HtmlAgilityPack was updated from 1.11.7 to 1.11.43, which now treats sequences like <br></br> as two instances of the br tag instead of a single one. This behavior is actually correct, but customers that rely on the old behavior can check the source code examples for how to configure it
    • Segmented RTF text now may also return a new type RtfImageSegment. Client code should be updated to expect this new type
    • The TextByClass type now also has a property ImageNode, which will be populated if Html text is split by class name and an image node is encountered. Please be aware that image nodes will always lead to a split node and not have any other properties set
    • Dropped tests for .NET Core 3.1 and added tests for .NET 6.0

    v1.3.9:

    • Fixed a bug where escape sequences terminated with a semicolon ; were not properly converted from RTF to plain text
    • Dropped tests for netcoreapp2.1 and added tests for net5.0

    v1.3.8:

    • Fixed a bug where HtmlToText.ConvertHtmlToPlaintextAndSplitByClassname removed empty segments at the beginning or the end, even if the segments were matching a class name

    v1.3.7:

    • Fixed a bug where the runtime complexity of the HtmlTableConverter was rising very fast for deeply nested tables

    v1.3.6:

    • Add net40 as target framework

    v1.3.5:

    • Deserializing RTF text now recognizes escape sequences in decimal format, e.g. \u252 is deserialized as ΓΌ

    v1.3.4:

    • The NuGet package now does specify the MIT license
    • Dropped tests for netcoreapp2.2 and added tests for netcoreapp3.1
    • The PackageIcon element is now used for the NuGet package instead of the deprecated PackageIconUrl

    v1.3.3:

    • Deserializing escaped unicode strings now ignores non printable characters

    v1.3.2:

    • Bugfix when deserializing incomplete RTF texts. When an incomplete RTF string was given, this could sometimes lead to a NullReferenceException

    v1.3.1:

    • Bugfix in HtmlToText.ConvertHtmlToPlaintextAndSplitByClassname which could throw an exception if the Html had no plain text representation, e.g. for image only Html

    v1.3.0:

    • The generated assemblies now have a strong name. This is a breaking change of the binary API and will require recompilation on all systems that consume this package. The strong name of the generated assembly allows compatibility with other, signed tools. Please note that this does not increase security or provide tamper-proof binaries, as the key is available in the source code per Microsoft guidelines

    v1.2.9:

    • The class Dangl.TextConverter.Html.HtmlTableConverter is now public
    • The InternalsVisibleToo attribute for the assembly was removed to prevent conflicts in applications that sign their binaries

    v1.2.8:

    • Bugfix where bookmark elements in Rtf texts with missing closing elements where throwing a System.InvalidOperationException
    • CI tests are now also run on Linux
    • Bugfix where line endings were sometimes not correctly trimmed when running on .NET Core on Linux

    v1.2.7:

    • Non-printable unicode escape sequences (0x00 - 0x08, 0x0b and 0x0e - 0x1f) are now ignored when converting RTF text to plain text

    v1.2.6:

    • Add the HtmlAgilityPackLegacyBehaviorHelper utility class and fix an issue where enabling the legacy behavior in HtmlAgilityPack was not thread safe and could fail when simultaneously accessed

    v1.2.5:

    • Update HtmlAgilityPack dependency. The previously referenced version 1.9.2 was pulled from NuGet due to an unintended, breaking API change. Please see https://github.com/zzzprojects/html-agility-pack/issues/125 for more information about the change
    • The HtmlToText class now sets the static property HtmlAgilityPack.HtmlDocument.DisableBehavaiorTagP = false in its static method calls to ensure compatible behavior. If your own code relies on different behavior, please ensure that this property is always set to its original value after invoking one of the methods on HtmlToText. See the README for further details

    v1.2.4:

    • Dependencies update

    v1.2.3.:

    • Small internal refactoring
    • Dependencies update

    v1.2.2:

    • Add bool keepWhitespaceAtLineEnds parameter to TextToHtml.TransformPlaintextToHtml() overload which defaults to false
    • Bugfix where Rtf text was sometimes incorrectly read and output when segments between groups started with whitespace

    v1.2.1:

    • Add StringLineStartNormalizationExtensions

    v1.2.0:

    • Update HtmlAgilityPack for huge (about 10x) performance improvements in netstandard targets, see https://github.com/zzzprojects/html-agility-pack/releases/tag/v1.8.11
    • When converting Html to plain text, it's now possible to have the result split by Html class names. Please see the README or https://docs.dangl-it.com/Projects/Dangl.TextConverter for further details
    • public static SegmentedRtf ConvertRtfToSegmentedText(string rtfInput) was added to RtfToText. This will return text segments that contain plain text representations of the texts as well as tags to indicate the opening and closing of bookmarks. This is used, for example, in the GAEB & AVA .Net Libraries by DanglIT to work with text additions in GAEB 2000 files. Please see the README or https://docs.dangl-it.com/Projects/Dangl.TextConverter for further details
    • Added TextToRtf.ConvertPlainTextToRtf(SegmentedRtf segmentedRtf) to convert back to Rtf from segmented texts while preserving bookmarks
    • Dropped tests for netcoreapp2.0, added tests for netcoreapp2.2

    v1.1.5:

    • Bugfix: Some empty tables caused a NullReferenceException when converting them to plaintext via the HtmlToText class
    • Update of HtmlAgilityPack and System.Text.Encoding.CodePages (the latter only for netstandard targets)

    v1.1.4:

    • Dependencies update

    v1.1.3:

    • Update of HtmlAgilityPack dependency to include latest bugfixes
    • Internal refactoring of the CI/CD pipeline

    v1.1.2:

    • Small performance improvements for parsing Rtf text

    v1.1.1:

    • Update HtmlAgilityPack to latest stable version 1.8.4

    v1.1.0:

    • Switch to HtmlAgilityPack. The HtmlAgilityPack.Core fork is no longer required since the original supports now netstandard

    v1.0.8

    • Add netstandard2.0 target
    • Switch build system to NUKE

    v1.0.7

    • Fix bug in RtfToText where Rtf annotations were read as plain text

    v1.0.6

    • Performance improvements for Rtf texts that contain pictures

    v1.0.5

    • Update Html encoding/decoding to preserve correctness in roundtrip scenarios

    v1.0.4

    • Downgrade to netstandard1.3 and net45 for broader compatibility

    v1.0.3

    • Performance improvements

    v1.0.2

    • Update ANTLR4 dependencies to latest stable version

    v1.0.1

    • Target NETStandard 1.3
    • Improve this Doc
    In This Article
    Back to top © Dangl IT GmbH