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#

TypVlastnostVýchozíPopis
boolShowThumbstrueZobrazí panel miniatur.
boolAutoLoadfalseAutomaticky načte po inicializaci. Normální tok tokenu volá View(token) explicitně.
boolAutoFocustruePřesune fokus/posun prohlížeče do prohlížeče během inicializace.
boolAutoPageFocustrueUdrží aktuální miniaturu viditelnou při změně stránek.
intPageZoom100Počáteční procento přiblížení.
intZoomStep10Procento přidávané nebo odebírané příkazy zoomu.
intMaxZoom300Maximální procento přiblížení.
boolShowToolTiptrueZobrazí tooltip s pozicí stránky při posouvání.
stringToolTipPageText"Page "Předpona používaná v tooltipu stránky.
boolCacheEnabledfalseUchovává pohyblivé okno obrázků stránek v paměti prohlížeče. Nepoužívá localStorage.
boolLargeDocfalsePřidává prvky stránek ve časovaných dávkách pro velké dokumenty.
boolShowHyperlinksfalseVykresluje překryvy hyperodkazů, pokud je serverová konfigurace extrahovala.
boolFixedZoomtruePoužije pevné procento přiblížení místo responzivního přepočtu.
intFixedZoomPercent100Pevné přiblížení pro desktop.
intFixedZoomPercentMobile75Pevné přiblížení pro mobil.
stringBasePath"/"Větev, kde host mapuje UseDoconut().
stringResPath"doconut-res"Základní cesta zdrojů používaná widgetem. V normálním nastavení ji nasměrujte na <ResourcesPath>/images.
stringFitType"width""width", "height" nebo prázdné pro žádné automatické přizpůsobení. "page" není aktuálním widgetem podporováno.
boolRetryOn409falsePovolit 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č.
csharp
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
ShowThumbsshowThumbs
AutoLoadautoLoad
AutoFocusautoFocus
AutoPageFocusautoPageFocus
PageZoompageZoom
ZoomStepzoomStep
MaxZoommaxZoom
ShowToolTipshowToolTip
ToolTipPageTexttoolTipPageText
CacheEnabledcacheEnabled
LargeDoclargeDoc
ShowHyperlinksshowHyperlinks
FixedZoomfixedZoom
FixedZoomPercentfixedZoomPercent
FixedZoomPercentMobilefixedZoomPercentMobile
BasePathBasePath
ResPathResPath
FitTypeFitType
RetryOn409retryOn409

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žnostVýchozíPoznámky
leftMinWidth / leftMaxWidth220 / 800Mezní šířky panelu miniatur.
showThumbstruePočáteční viditelnost miniatur.
autoFocus / autoPageFocustrue / falseautoPageFocus se liší od výchozí hodnoty C#.
thumbWidth / thumbHeight / thumbPadding150 / 200 / 10Geometrie miniatur v pixelech.
pageZoom / zoomStep / maxZoom100 / 10 / 200JavaScript maxZoom se liší od C# (300).
showToolTip / toolTipPageTexttrue / "Page "Tooltip s pozicí stránky.
format / doc / AccessToken"" / 0 / ""Interní inicializační hodnoty; normálně naplněny View(token).
debugModefalseDalší 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 / cacheDelayfalse / 3 / 3Okno přednačítání stránek v paměti a zpoždění.
autoLoadfalseDoporučuje se explicitní tok tokenu.
largeDoctrueLiší se od výchozí hodnoty C#.
fixedZoomfalseLiší se od výchozí hodnoty C#.
fixedZoomPercent / fixedZoomPercentMobile100 / 50Mobilní hodnota se liší od C# (75).
showHyperlinkstrueVyž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í:

html
<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
onPageLoadingpageNumZahajuje se požadavek na stránku.
onPageLoadedpageNumObrázek stránky byl načten.
onThumbnailClickedpageNumUživatel vybral miniaturu.
onPageClickedpageNumUživatel vybral stránku.
onDoubleClicknoneProhlížeč obdržel dvojklik.
onViewerBusynoneProhlížeč vstoupil do stavu zaneprázdněnosti.
onViewerReadynoneInicializace dokončena.
onViewerErrornoneProhlížeč vstoupil do chybového stavu.
onErrormessageOperace vrátila chybovou zprávu.
onCopydataData pro kopírování textu jsou k dispozici.
onAutoLoadStatuspageNumAutomatické načítání postupovalo na stránku.
onThumbsShownnonePanel miniatur se stal viditelným.
onAnnLoadednoneData anotací načtena.
onAnnSavednoneData anotací uložena.
onAnnSaveErrornoneUložení anotací selhalo.
onAnnClosednoneUI anotací uzavřeno.

Udržujte zpětná volání rychlá; odesílejte telemetrii asynchronně a neblokujte vykreslování stránek.

Veřejné skupiny metod

SkupinaBěžné metody
Životní cyklusView(token, accessToken?), Close(server?), Token(), Init(), IsLoaded()
NavigaceGotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages()
Zoom a přizpůsobeníZoom(zoomIn), CurrentZoom(), FitType(value), Refit()
OrientaceRotate(page, angle), Flip(page, flipType)
MiniaturyHideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb)
VyhledáváníCanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...)
AnotaceSaveAnnotations(), 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žnostVýchozí
retryInitialDelayMs250
retryBackoffFactor1.6
retryMaxDelayMs2500
retryMaxAttempts60
retryMaxTotalMs120000

Nechte to vypnuté pro normální prohlížeč. Povolení nemůže učinit nepodporovaný synchronní render asynchronním.

Kontrolní seznam cest

  • DoconutOptions.MiddlewarePath musí popisovat větev, kterou skutečně mapujete.
  • BasePath musí cílit na tuto větev.
  • DoconutOptions.ResourcesPath je cesta k vloženým zdrojům.
  • ResPath normálně cílí na jeho podadresář /images.
  • ExtractHyperlinks musí být povoleno v serverové konfiguračním souboru formátu, než showHyperlinks může něco zobrazit.

Byla tato stránka užitečná?