ViewerConfig
Client viewer widget options
ViewerConfig (Namespace Doconut) beschreibt das Aussehen und Verhalten des Browser‑Viewers. Es beeinflusst nicht die Dokument‑Renderqualität; dafür verwenden Sie eine Format‑Konfiguration. Die C#‑Klasse und das langjährige JavaScript‑Widget haben unterschiedliche Vorgaben, daher Werte explizit zuordnen.
C#‑Eigenschaften
| Typ | Eigenschaft | Standard | Beschreibung |
|---|---|---|---|
bool | ShowThumbs | true | Zeigt das Miniatur‑Panel an. |
bool | AutoLoad | false | Lädt nach der Initialisierung automatisch. Der normale Token‑Ablauf ruft View(token) explizit auf. |
bool | AutoFocus | true | Verschiebt den Browser‑Fokus/Scroll zum Viewer während der Initialisierung. |
bool | AutoPageFocus | true | Hält die aktuelle Miniatur sichtbar, während Seiten wechseln. |
int | PageZoom | 100 | Anfänglicher Zoom‑Prozentsatz. |
int | ZoomStep | 10 | Prozentsatz, der durch Zoom‑Befehle hinzugefügt oder entfernt wird. |
int | MaxZoom | 300 | Maximaler Zoom‑Prozentsatz. |
bool | ShowToolTip | true | Zeigt das Seiten‑Positions‑Tooltip beim Scrollen an. |
string | ToolTipPageText | "Page " | Präfix, das im Seiten‑Tooltip verwendet wird. |
bool | CacheEnabled | false | Behält ein rollierendes Fenster von Seitenbildern im Browser‑Speicher. Es verwendet kein localStorage. |
bool | LargeDoc | false | Fügt Seitenelemente in zeitgesteuerten Stapeln für große Dokumente hinzu. |
bool | ShowHyperlinks | false | Rendert Hyperlink‑Overlays, wenn die Server‑Konfiguration sie extrahiert hat. |
bool | FixedZoom | true | Verwendet einen festen Zoom‑Prozentsatz anstelle einer responsiven Neuberechnung. |
int | FixedZoomPercent | 100 | Fester Desktop‑Zoom. |
int | FixedZoomPercentMobile | 75 | Fester mobiler Zoom. |
string | BasePath | "/" | Wo der Viewer Seitenanfragen sendet. "/" ist DocImage.axd an der Site‑Wurzel; andernfalls der Zweig, wo der Host UseDoconut() zuordnet, ohne führendes / ("doconut" bedeutet /doconut/DocImage.axd). |
string | ResPath | "doconut-res/images" (26.9.0; "doconut-res" vorher) | Ordner, aus dem das Widget seine eigenen Bilder lädt: der images‑Ordner unter ResourcesPath, ohne führendes /. |
string | FitType | "width" | "width", "height" oder leer für keine automatische Anpassung. "page" wird vom aktuellen Widget nicht akzeptiert. |
bool | RetryOn409 | false | Aktiviert das Polling, wenn asynchrone/verteilte Seitenerstellung 202 Accepted zurückgibt; 409 wird ebenfalls für die Kompatibilität mit älteren Servern akzeptiert. Nicht erforderlich für den normalen synchronen Viewer. |
var config = new ViewerConfig
{
ShowThumbs = true,
AutoLoad = false,
PageZoom = 100,
MaxZoom = 300,
FitType = "width",
BasePath = "doconut", // kein führendes '/': der Viewer fügt es hinzu ("/doconut" würde zu //doconut, ein anderer Host)
ResPath = "doconut-res/images",
ShowHyperlinks = true
};C# zu JavaScript‑Abbildung
Übergeben Sie kein direkt serialisiertes ViewerConfig an docViewer(...). Die meisten Widget‑Schlüssel sind camelCase, während drei etablierte Pfad‑/Fit‑Schlüssel PascalCase sind.
| C# | JavaScript |
|---|---|
ShowThumbs | showThumbs |
AutoLoad | autoLoad |
AutoFocus | autoFocus |
AutoPageFocus | autoPageFocus |
PageZoom | pageZoom |
ZoomStep | zoomStep |
MaxZoom | maxZoom |
ShowToolTip | showToolTip |
ToolTipPageText | toolTipPageText |
CacheEnabled | cacheEnabled |
LargeDoc | largeDoc |
ShowHyperlinks | showHyperlinks |
FixedZoom | fixedZoom |
FixedZoomPercent | fixedZoomPercent |
FixedZoomPercentMobile | fixedZoomPercentMobile |
BasePath | BasePath |
ResPath | ResPath |
FitType | FitType |
RetryOn409 | retryOn409 |
JavaScript-Standardwerte
Das Widget hat ältere Standardwerte, die von der C#‑Klasse abweichen. Die folgenden Werte stammen aus der aktuellen docViewer.js‑Implementierung.
| Option | Standard | Hinweise |
|---|---|---|
leftMinWidth / leftMaxWidth | 220 / 800 | Grenzwerte für die Breite des Miniaturbereichs. |
showThumbs | true | Anfängliche Sichtbarkeit der Miniaturansichten. |
autoFocus / autoPageFocus | true / false | autoPageFocus unterscheidet sich vom C#‑Standard. |
thumbWidth / thumbHeight / thumbPadding | 150 / 200 / 10 | Miniaturgeometrie in Pixeln. |
pageZoom / zoomStep / maxZoom | 100 / 10 / 200 | JavaScript maxZoom unterscheidet sich von C# (300). |
showToolTip / toolTipPageText | true / "Page " | Tooltip zur Seitenposition. |
format / doc / AccessToken | "" / 0 / "" | Interne Initialisierungswerte; normalerweise durch View(token) befüllt. |
debugMode | false | Zusätzliche Client‑Diagnosen. |
FitType | "" | Keine automatische Anpassung, sofern nicht angegeben. |
BasePath | "DocImage.axd" | Historischer Client‑Standard aus Kompatibilitätsgründen beibehalten. Aktuelle ASP.NET Core‑Hosts müssen ihn explizit auf den zugeordneten Middleware‑Zweig setzen. |
ResPath | "" | Explizit auf den Pfad der eingebetteten Bilder setzen. |
cacheEnabled / cacheCount / cacheDelay | false / 3 / 3 | In‑Memory‑Vorladungsfenster und -Verzögerung für Seiten. |
autoLoad | false | Ein expliziter Token‑Fluss wird empfohlen. |
largeDoc | true | Weicht vom C#‑Standard ab. |
fixedZoom | false | Weicht vom C#‑Standard ab. |
fixedZoomPercent / fixedZoomPercentMobile | 100 / 50 | Mobiler Wert unterscheidet sich von C# (75). |
showHyperlinks | true | Erfordert serverseitige Extraktion, um Overlays zu erzeugen. |
Setzen Sie alle verhaltensrelevanten Werte, anstatt sich auf einen der Standardwerte zu verlassen:
<div id="divDocViewer"><div id="div_ctlDoc"></div></div>
<script>
const objViewer = $('#div_ctlDoc').docViewer({
showThumbs: true,
autoLoad: false,
autoFocus: true,
autoPageFocus: true,
pageZoom: 100,
zoomStep: 10,
maxZoom: 300,
FitType: 'width',
cacheEnabled: false,
largeDoc: false,
showHyperlinks: true,
fixedZoom: true,
fixedZoomPercent: 100,
fixedZoomPercentMobile: 75,
BasePath: 'doconut',
ResPath: 'doconut-res/images',
onViewerReady: function () {},
onError: function (message) { console.error('DocViewer:', message); }
});
</script>Rückrufe
| Rückruf | Argumente | Zweck |
|---|---|---|
onPageLoading | pageNum | Ein Seitenaufruf wird gestartet. |
onPageLoaded | pageNum | Ein Seitenbild wurde geladen. |
onThumbnailClicked | pageNum | Der Benutzer hat eine Miniatur ausgewählt. |
onPageClicked | pageNum | Der Benutzer hat eine Seite ausgewählt. |
onDoubleClick | none | Der Viewer hat einen Doppelklick erhalten. |
onViewerBusy | none | Der Viewer ist in einen Besetzungszustand übergegangen. |
onViewerReady | none | Initialisierung abgeschlossen. |
onViewerError | none | Der Viewer ist in den Fehlermodus übergegangen. |
onError | message | Ein Vorgang hat eine Fehlermeldung zurückgegeben. |
onCopy | data | Textkopierdaten sind verfügbar. |
onAutoLoadStatus | pageNum | Auto‑Loading hat eine Seite erreicht. |
onThumbsShown | none | Das Miniatur‑Panel wurde sichtbar. |
onAnnLoaded | none | Annotierungsdaten wurden geladen. |
onAnnSaved | none | Annotierungsdaten wurden gespeichert. |
onAnnSaveError | none | Speichern der Annotation fehlgeschlagen. |
onAnnClosed | none | Annotierungs‑UI geschlossen. |
Halten Sie Rückrufe schnell; senden Sie Telemetrie asynchron und blockieren Sie das Rendern der Seite nicht.
Öffentliche Methodengruppen
| Gruppe | Gemeinsame Methoden |
|---|---|
| Lebenszyklus | View(token, accessToken?), Close(server?), Token(), Init(), IsLoaded() |
| Navigation | GotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages() |
| Zoom und Anpassen | Zoom(zoomIn), CurrentZoom(), FitType(value), Refit() |
| Ausrichtung | Rotate(page, angle), Flip(page, flipType) |
| Miniaturansichten | HideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb) |
| Suche | CanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...) |
| Annotation | SaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...) |
| Kopieren | Copy(...), CopyPage(pageNumber), CopyMode(enabled) |
Die JavaScript‑Datei enthält ebenfalls interne Hilfsfunktionen. Behandeln Sie nur Methoden, die von der Referenz‑UI verwendet und hier oder in den Feature‑Leitfäden dokumentiert sind, als stabile Integrationspunkte.
Erneut versuchen, während eine verteilte Seite noch gerendert wird
retryOn409 behält seinen historischen Namen. Es dient der asynchronen Seitenerstellung und wiederholt die aktuelle 202 Accepted‑Bereitschaftsantwort sowie das ältere 409 Conflict‑Signal. Wenn aktiviert, fragt das Widget mit diesen JavaScript‑Standardwerten ab:
| Option | Standard |
|---|---|
retryInitialDelayMs | 250 |
retryBackoffFactor | 1.6 |
retryMaxDelayMs | 2500 |
retryMaxAttempts | 60 |
retryMaxTotalMs | 120000 |
Lassen Sie es für den normalen Viewer deaktiviert. Das Aktivieren kann einen nicht unterstützten synchronen Render nicht asynchron machen.
Pfad‑Checkliste
DoconutOptions.MiddlewarePathmuss den Zweig beschreiben, den Sie tatsächlich zuordnen.BasePathmuss diesen Zweig anvisieren, geschrieben ohne führenden/('doconut', nicht'/doconut': Der Viewer fügt den Schrägstrich hinzu, und//doconut/...ist eine Anfrage an einen anderen Host).DoconutOptions.ResourcesPathist die eingebettete Ressourcen‑Route.ResPathzielt normalerweise auf den Unterordnerimages, ebenfalls ohne führenden/('doconut-res/images').ExtractHyperlinksmuss in der Server‑Format‑Konfiguration aktiviert sein, bevorshowHyperlinksirgendetwas anzeigen kann.
War diese Seite hilfreich?