RichTextWeb.Blazor
0.4.2
dotnet add package RichTextWeb.Blazor --version 0.4.2
NuGet\Install-Package RichTextWeb.Blazor -Version 0.4.2
<PackageReference Include="RichTextWeb.Blazor" Version="0.4.2" />
<PackageVersion Include="RichTextWeb.Blazor" Version="0.4.2" />
<PackageReference Include="RichTextWeb.Blazor" />
paket add RichTextWeb.Blazor --version 0.4.2
#r "nuget: RichTextWeb.Blazor, 0.4.2"
#:package RichTextWeb.Blazor@0.4.2
#addin nuget:?package=RichTextWeb.Blazor&version=0.4.2
#tool nuget:?package=RichTextWeb.Blazor&version=0.4.2
RichTextWeb.Blazor
Install RichTextWeb.Blazor 0.4.2 for .NET 8/.NET 10. The package includes the actual native browser editor/format/PDF engine and local PDF worker/decoders/maps/profiles. Fonts are not distributed or implicitly downloaded.
Editing and binding
RichTextEditor owns the native WYSIWYG DOM and supports @bind-Value. ValueFormat accepts html, text, json, rtf, markdown and xaml. The full value is read through streaming when a revision notification arrives; bounded diagnostic event snapshots are never used as document contents. Revision acknowledgements prevent a stale Server round trip from overwriting newer browser edits. Increment ValueRevision to force an intentional replacement. Document can instead reference a caller-owned native FlowDocument.
Use RichTextPageEditor for measured editable pages, FlowDocumentReader/FlowDocumentScrollViewer/FlowDocumentPageViewer for read-only presentation. Theme, toolbar visibility/mode, read-only state, zoom, page/continuous mode, virtualization settings, placeholder and accessibility label are exposed. Advanced native options remain available through Options. Wait for Ready before selection, focus, command, undo/redo, pagination and format operations.
<EditForm Model="model" OnSubmit="Submit">
<DataAnnotationsValidator />
<RichTextInput @ref="input" @bind-Value="model.Body" ControlKind="pageEditor" />
<ValidationMessage For="@(() => model.Body)" />
<button type="submit">Save</button>
</EditForm>
RichTextInput derives from InputBase and integrates ValueExpression, EditContext field notifications, CSS state and validation. Its default debounce is zero; call await input.FlushAsync() before validation/save when using a nonzero debounce. Flush before navigation/unmount to commit pending edits. Required validation of HTML checks its serialized string, not semantic document emptiness; implement a content validator when that distinction matters.
Formats and PDF
ExportBytesAsync/ImportBytesAsync support the native formats, with DOCX/PDF binary and textual format encodings. An asynchronous import is rejected if the document changes before it completes. Native Document/Engine/Editor handles expose richer structure and collaboration APIs without discarding identity.
PdfEditor exposes source loading, saving, search, page operations, history, fit, native editor access through generic interop, reconstruction to flow and reflow export. SetViewModeAsync("flow") initializes reconstructed content before switching; SetViewModeAsync("pdf") restores the source view. The ViewMode parameter uses the same path. SourceRevision signals intentional byte-source updates. PDF source edits and reconstructed flow are separate representations; Save preserves source edits, ExportReflow emits the reconstructed document. A visual cover is not secure redaction. Original PDF-text editing is limited by the native engine's supported operators/fonts.
The sample checks real EditForm modifications, pagination, DOCX/PDF output, PDF search/save and both PDF view transitions. Read INTEGRATION.md for hosting, streaming, callbacks, ownership and release processes.
Lifecycle in 0.4.2
Editor/viewer controls expose IsReady and IsDisposed. Concurrent disposal awaits a shared native cleanup fence, releases handles after errors and retains failures. Callbacks queued before removal are suppressed. Shared Razor factories now have awaitable teardown, late-import/root-creation cleanup and coalesced updates. The package-restored samples exercise template movement, context updates and recreation in WebAssembly and Server. Existing revision-aware document binding and format/PDF behavior are preserved.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net10.0
- Microsoft.AspNetCore.Components.Web (>= 10.0.10)
-
net8.0
- Microsoft.AspNetCore.Components.Web (>= 8.0.28)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.