Skip to main content

InlineImages.CreateAsync(Int32, DocumentImageSource, CancellationToken) Method

Inserts an inline image from a specified image source at a specific position in a sub-document.

Namespace: DevExpress.Blazor.RichEdit

Assembly: DevExpress.Blazor.RichEdit.v23.2.dll

NuGet Package: DevExpress.Blazor.RichEdit

Declaration

public ValueTask<InlineImage> CreateAsync(
    int position,
    DocumentImageSource imageSource,
    CancellationToken cancellationToken = default(CancellationToken)
)

Parameters

Name Type Description
position Int32

The insert position.

imageSource DocumentImageSource

An image source.

Optional Parameters

Name Type Default Description
cancellationToken CancellationToken null

An object that propagates a cancellation notification.

Returns

Type Description
ValueTask<InlineImage>

A structure that stores an awaitable result of an asynchronous operation. The awaitable result is an inline image object.

Remarks

The example below shows how to load a 1000 by 1000 twips image from a stream and insert this image at the beginning of the main sub-document:

@using System.IO
@* ... *@
<DxRichEdit @ref="richEdit" />

@code {
    DxRichEdit richEdit;
    Document documentAPI;
    @* ... *@
    /* Surround the code that contains an asynchronous operation with a try-catch block to handle
    the OperationCanceledException. This exception is thrown when an asynchronous operation is canceled. */
        try {
            documentAPI = richEdit.DocumentAPI;
            @* ... *@
            FileStream sourceStream = File.Open("file-path-to-your-image", FileMode.Open);
            DocumentImageSource imgSource = DocumentImageSource.LoadFromStream(sourceStream, 1000, 1000);
            InlineImage newInlineImage = await documentAPI.InlineImages.CreateAsync(0, imgSource);
            @* ... *@
        }
        catch (OperationCanceledException e) {
            Console.WriteLine($"{nameof(OperationCanceledException)} thrown with message: {e.Message}");
        }
}
See Also