How a DocumentSession opens its document, where it works and which backend draws its tiles.
public sealed class ViewerOptions
Spec #33 story 54. Mutable and fluent like the other options objects: Use* selects an implementation, With* sets a
value. A session copies what it needs when it opens, so changing the options afterwards does not affect it.
kind:method, kind:property, kind:ctor. Press Esc to clear.DefaultSliceBudgetThe default SliceBudget: 8 ms, half a 60 Hz frame.BackendFactoryGets or sets the factory of tile backends, the backend choice (SoftwareTileBackend by default).CredentialsGets or sets the credentials for an encrypted document (ISO 32000-2 §7.6), or null. Not used by remote documents.DocumentOptionsGets or sets the document options an engine is built from when Engine is not set; null means defaults.EngineGets or sets the engine that opens the document; null (the default) builds one from DocumentOptions.ImageSamplesPerPixelGets or sets the fewest decoded samples per device pixel a reduced image keeps: DefaultImageSamplesPerPixel (2) by default; 1 is faster and coarser.MaxConcurrencyGets or sets how many tiles render at once (by default one less than the processor count, at least one, so the UI thread keeps a core); further renders wait their turn.RemoteRendererGets or sets the renderer that draws the tiles it accepts outside the viewer's thread (a browser Web Worker), or null (the default) to draw every tile with BackendFactory's backends. The session that opens with these options owns it and disposes it when it closes, so set it on options used for one session.ScaledImageDecodeGets or sets a value indicating whether the default backend decodes images at the resolution they are drawn at rather than their own; true by default, since a viewer's tiles are for display only.SliceBudgetGets or sets the length of one drawing slice in Cooperative mode (DefaultSliceBudget by default).YieldGets or sets how a Cooperative session yields between slices; null (the default) awaits . A browser shell can yield to its event loop instead, for example with a zero delay.UseRemoteRenderer(IRemoteTileRenderer)Selects the renderer that draws tiles outside the viewer's thread (see RemoteRenderer).