ViewerConfig
Možnosti widgetu klientského prohlížeče
ViewerConfig (namespace Doconut) popisuje vzhled a chování prohlížeče v prohlížeči. Nemá vliv na kvalitu vykreslování dokumentu; pro to použijte konfigurační soubor formátu. Třída C# a dlouholetý JavaScript widget mají odlišné výchozí hodnoty, takže hodnoty mapujte explicitně.
Vlastnosti C#
| Typ | Vlastnost | Výchozí | Popis |
|---|---|---|---|
bool | ShowThumbs | true | Zobrazí panel miniatur. |
bool | AutoLoad | false | Automaticky načte po inicializaci. Normální tok tokenu volá View(token) explicitně. |
bool | AutoFocus | true | Přesune fokus/posun prohlížeče do prohlížeče během inicializace. |
bool | AutoPageFocus | true | Udrží aktuální miniaturu viditelnou při změně stránek. |
int | PageZoom | 100 | Počáteční procento přiblížení. |
int | ZoomStep | 10 | Procento přidávané nebo odebírané příkazy zoomu. |
int | MaxZoom | 300 | Maximální procento přiblížení. |
bool | ShowToolTip | true | Zobrazí tooltip s pozicí stránky při posouvání. |
string | ToolTipPageText | "Page " | Předpona používaná v tooltipu stránky. |
bool | CacheEnabled | false | Uchovává pohyblivé okno obrázků stránek v paměti prohlížeče. Nepoužívá localStorage. |
bool | LargeDoc | false | Přidává prvky stránek ve časovaných dávkách pro velké dokumenty. |
bool | ShowHyperlinks | false | Vykresluje překryvy hyperodkazů, pokud je serverová konfigurace extrahovala. |
bool | FixedZoom | true | Použije pevné procento přiblížení místo responzivního přepočtu. |
int | FixedZoomPercent | 100 | Pevné přiblížení pro desktop. |
int | FixedZoomPercentMobile | 75 | Pevné přiblížení pro mobil. |
string | BasePath | "/" | Větev, kde host mapuje UseDoconut(). |
string | ResPath | "doconut-res" | Základní cesta zdrojů používaná widgetem. V normálním nastavení ji nasměrujte na <ResourcesPath>/images. |
string | FitType | "width" | "width", "height" nebo prázdné pro žádné automatické přizpůsobení. "page" není aktuálním widgetem podporováno. |
bool | RetryOn409 | false | Povolit dotazování, když asynchronní/rozdělená produkce stránek odpovídá 202 Accepted; 409 je také akceptováno pro kompatibilitu se staršími servery. Není potřeba pro normální synchronní prohlížeč. |
var config = new ViewerConfig
{
ShowThumbs = true,
AutoLoad = false,
PageZoom = 100,
MaxZoom = 300,
FitType = "width",
BasePath = "/doconut",
ResPath = "/doconut-res/images",
ShowHyperlinks = true
};Mapování C# na JavaScript
Nepředávejte přímo serializovaný ViewerConfig do docViewer(...). Většina klíčů widgetu je v camelCase, zatímco tři zavedené klíče cesty/přizpůsobení jsou v PascalCase.
| 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 |
Výchozí hodnoty JavaScriptu
Widget má starší výchozí hodnoty, které se liší od třídy C#. Následující hodnoty pocházejí z aktuální implementace docViewer.js.
| Možnost | Výchozí | Poznámky |
|---|---|---|
leftMinWidth / leftMaxWidth | 220 / 800 | Mezní šířky panelu miniatur. |
showThumbs | true | Počáteční viditelnost miniatur. |
autoFocus / autoPageFocus | true / false | autoPageFocus se liší od výchozí hodnoty C#. |
thumbWidth / thumbHeight / thumbPadding | 150 / 200 / 10 | Geometrie miniatur v pixelech. |
pageZoom / zoomStep / maxZoom | 100 / 10 / 200 | JavaScript maxZoom se liší od C# (300). |
showToolTip / toolTipPageText | true / "Page " | Tooltip s pozicí stránky. |
format / doc / AccessToken | "" / 0 / "" | Interní inicializační hodnoty; normálně naplněny View(token). |
debugMode | false | Další diagnostika na straně klienta. |
FitType | "" | Žádné automatické přizpůsobení, pokud není zadáno. |
BasePath | "DocImage.axd" | Historický výchozí klient zachován pro kompatibilitu. Současné ASP.NET Core hosty jej musí nastavit explicitně na mapovanou větev middleware. |
ResPath | "" | Nastavte explicitně na cestu k vloženým obrázkům. |
cacheEnabled / cacheCount / cacheDelay | false / 3 / 3 | Okno přednačítání stránek v paměti a zpoždění. |
autoLoad | false | Doporučuje se explicitní tok tokenu. |
largeDoc | true | Liší se od výchozí hodnoty C#. |
fixedZoom | false | Liší se od výchozí hodnoty C#. |
fixedZoomPercent / fixedZoomPercentMobile | 100 / 50 | Mobilní hodnota se liší od C# (75). |
showHyperlinks | true | Vyžaduje serverové extrahování pro vytvoření překryvů. |
Nastavte všechny důležité hodnoty místo spoléhaní se na výchozí nastavení:
<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>Zpětná volání (Callbacks)
| Zpětné volání | Argumenty | Účel |
|---|---|---|
onPageLoading | pageNum | Zahajuje se požadavek na stránku. |
onPageLoaded | pageNum | Obrázek stránky byl načten. |
onThumbnailClicked | pageNum | Uživatel vybral miniaturu. |
onPageClicked | pageNum | Uživatel vybral stránku. |
onDoubleClick | none | Prohlížeč obdržel dvojklik. |
onViewerBusy | none | Prohlížeč vstoupil do stavu zaneprázdněnosti. |
onViewerReady | none | Inicializace dokončena. |
onViewerError | none | Prohlížeč vstoupil do chybového stavu. |
onError | message | Operace vrátila chybovou zprávu. |
onCopy | data | Data pro kopírování textu jsou k dispozici. |
onAutoLoadStatus | pageNum | Automatické načítání postupovalo na stránku. |
onThumbsShown | none | Panel miniatur se stal viditelným. |
onAnnLoaded | none | Data anotací načtena. |
onAnnSaved | none | Data anotací uložena. |
onAnnSaveError | none | Uložení anotací selhalo. |
onAnnClosed | none | UI anotací uzavřeno. |
Udržujte zpětná volání rychlá; odesílejte telemetrii asynchronně a neblokujte vykreslování stránek.
Veřejné skupiny metod
| Skupina | Běžné metody |
|---|---|
| Životní cyklus | View(token, accessToken?), Close(server?), Token(), Init(), IsLoaded() |
| Navigace | GotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages() |
| Zoom a přizpůsobení | Zoom(zoomIn), CurrentZoom(), FitType(value), Refit() |
| Orientace | Rotate(page, angle), Flip(page, flipType) |
| Miniatury | HideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb) |
| Vyhledávání | CanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...) |
| Anotace | SaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...) |
| Kopírování | Copy(...), CopyPage(pageNumber), CopyMode(enabled) |
JavaScriptový soubor obsahuje také interní pomocníky. Považujte za stabilní integrační body pouze metody použité v referenčním UI a dokumentované zde nebo v průvodcích funkcemi.
Opakování, dokud je distribuovaná stránka stále vykreslována
retryOn409 si zachovává svůj historický název. Slouží pro asynchronní produkci stránek a opakuje aktuální odpověď 202 Accepted i starší signál 409 Conflict. Když je povoleno, widget dotazuje s těmito výchozími hodnotami JavaScriptu:
| Možnost | Výchozí |
|---|---|
retryInitialDelayMs | 250 |
retryBackoffFactor | 1.6 |
retryMaxDelayMs | 2500 |
retryMaxAttempts | 60 |
retryMaxTotalMs | 120000 |
Nechte to vypnuté pro normální prohlížeč. Povolení nemůže učinit nepodporovaný synchronní render asynchronním.
Kontrolní seznam cest
DoconutOptions.MiddlewarePathmusí popisovat větev, kterou skutečně mapujete.BasePathmusí cílit na tuto větev.DoconutOptions.ResourcesPathje cesta k vloženým zdrojům.ResPathnormálně cílí na jeho podadresář/images.ExtractHyperlinksmusí být povoleno v serverové konfiguračním souboru formátu, nežshowHyperlinksmůže něco zobrazit.
Byla tato stránka užitečná?