PdfViewerA PDF viewer for Blazor WebAssembly: pages are rasterized in tiles by the managed software rasterizer on the browser's thread, in slices that leave every animation frame to the browser, and drawn into a canvas; a remote Source is read through HTTP range requests, so page 1 of a linearized file shows before the rest downloads. Pointer, wheel and keyboard input drive the viewer core's InputModel; mouse drags over text select it (copy with the browser's copy command); links and form fields work through the AnnotationLayer; and each loaded page's logical structure is mirrored into an invisible DOM tree in reading order, so screen readers and the keyboard reach page text.
RenderWorkerRenders the viewer's content tiles in a Web Worker (#357): a second .NET runtime, booted from the app's own framework files, holds its own copy of each document, builds its display lists and rasterizes its tiles, and hands each tile back as a transferable ImageBitmap. The page's thread then only plans frames, presents finished tiles and draws the annotation and form-field overlays (so edits never wait for the worker and never reach its copy). It needs no cross-origin isolation, so it works on any static host; where Web Workers are missing, or the app does not serve the worker, the viewer draws every tile itself.
WebGLTileBackendThe WebGL 2 tile backend for the browser viewer: tiles are drawn on the GPU (WebGLRenderer) and copied from its canvas into the viewer's tile canvases without reading the pixels back; a surface that reads pixels (a thumbnail, a PNG) gets them read back (AcceptsDevicePixels, #380). Select it with new ViewerOptions().UseBackend(WebGLTileBackend.Create) after awaiting InitializeAsync(); the software rasterizer (SoftwareTileBackend) stays the default. Pages or regions the GPU path does not draw fall back to the software rasterizer per tile, with a diagnostic (Diagnostics).
Structs (1)
PdfViewerStateWhat a toolbar shows about a PdfViewer: the current page, the page count, the zoom and whether a document is loading.