Skip to main content

HtmlSerializer Class

Definition

Assembly:Avalonia.Controls.Documents.Serialization.Html
Package:Avalonia.Controls.Documents.Serialization.Html

Read-only HTML deserializer implementing Avalonia.Controls.Documents.Serialization.IDocumentSerializer. Supports a curated set of HTML tags commonly embedded in markdown.

public class HtmlSerializer

Inheritance: object -> HtmlSerializer

Implements: IDocumentSerializer

Remarks

Serialization (write) is not supported. Avalonia.Controls.Documents.Serialization.Html.HtmlSerializer.Serialize(Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot,System.IO.Stream,System.Threading.CancellationToken) throws NotSupportedException. Use RTF or DOCX serializers for export.

Custom tag handling is available via Avalonia.Controls.Documents.Serialization.Html.HtmlSerializerOptions.TagHandlers.

Constructors

NameDescription
HtmlSerializerInitializes a new instance of Avalonia.Controls.Documents.Serialization.Html.HtmlSerializer with optional HTML options.

HtmlSerializer Constructor

Initializes a new instance of Avalonia.Controls.Documents.Serialization.Html.HtmlSerializer with optional HTML options.

public HtmlSerializer(Avalonia.Controls.Documents.Serialization.Html.HtmlSerializerOptions options)

Parameters

options Avalonia.Controls.Documents.Serialization.Html.HtmlSerializerOptions

HTML reader options; Avalonia.Controls.Documents.Serialization.Html.HtmlSerializerOptions.Default is used when .

Methods

CanDeserialize Method

public bool CanDeserialize(System.IO.Stream stream)

Parameters

stream System.IO.Stream

Returns

bool

Deserialize overloads

Deserialize Method

Deserializes a document from an HTML stream.

public Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot Deserialize(System.IO.Stream stream, System.Threading.CancellationToken cancellationToken)
Parameters

stream System.IO.Stream

cancellationToken System.Threading.CancellationToken

Returns

Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot

Deserialize Method

Deserializes a document from an HTML string.

public Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot Deserialize(string html)
Parameters

html string

Returns

Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot

DeserializeAsync Method

Runs Avalonia.Controls.Documents.Serialization.Html.HtmlSerializer.Deserialize(System.IO.Stream,System.Threading.CancellationToken) on a pool thread.

public System.Threading.Tasks.Task<Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot> DeserializeAsync(System.IO.Stream stream, System.Threading.CancellationToken cancellationToken)

Parameters

stream System.IO.Stream

The stream to read from.

cancellationToken System.Threading.CancellationToken

Cancellation token.

Returns

System.Threading.Tasks.Task<Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot>

The deserialized snapshot.

Remarks

A thread-offload convenience, not asynchronous I/O: no format here reads asynchronously. Where you are already off the UI thread, call Avalonia.Controls.Documents.Serialization.Html.HtmlSerializer.Deserialize(System.IO.Stream,System.Threading.CancellationToken) and keep the thread you are on.

Serialize Method

public void Serialize(Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot snapshot, System.IO.Stream stream, System.Threading.CancellationToken cancellationToken)

Parameters

snapshot Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot

stream System.IO.Stream

cancellationToken System.Threading.CancellationToken

Exceptions

SerializeAsync Method

Runs Avalonia.Controls.Documents.Serialization.Html.HtmlSerializer.Serialize(Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot,System.IO.Stream,System.Threading.CancellationToken) on a pool thread.

public System.Threading.Tasks.Task SerializeAsync(Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot snapshot, System.IO.Stream stream, System.Threading.CancellationToken cancellationToken)

Parameters

snapshot Avalonia.Controls.Documents.Serialization.Snapshot.DocumentSnapshot

The snapshot to serialize.

stream System.IO.Stream

The stream to write to.

cancellationToken System.Threading.CancellationToken

Cancellation token.

Returns

System.Threading.Tasks.Task

Remarks

A thread-offload convenience, not asynchronous I/O. The snapshot is already detached from the document, so the work needs no UI thread either way.

Properties

NameDescription
CanReadNo summary available.
CanWriteNo summary available.
FileExtensionNo summary available.
FormatNameNo summary available.
MimeTypeNo summary available.

CanRead Property

public bool CanRead { get; set; }

CanWrite Property

public bool CanWrite { get; set; }

FileExtension Property

public string FileExtension { get; set; }

FormatName Property

public string FormatName { get; set; }

MimeType Property

public string MimeType { get; set; }