ViewerConfig

Klientvisningswidgetalternativ

ViewerConfig (namespace Doconut) beskriver webbläsarens visningsutseende och beteende. Det påverkar inte dokumentrenderingskvaliteten; använd en formatkonfiguration för det. C#-klassen och den äldre JavaScript‑pluginen har olika standardvärden, så mappa värden explicit.

C#-egenskaper

TypEgenskapStandardBeskrivning
boolShowThumbstrueVisa miniatyrpanelen.
boolAutoLoadfalseLaddas automatiskt efter initiering. Det normala tokenflödet anropar View(token) explicit.
boolAutoFocustrueFlytta webbläsarens fokus/rullning till visaren under initiering.
boolAutoPageFocustrueBehåll den aktuella miniatyren synlig medan sidorna ändras.
intPageZoom100Initial zoomprocent.
intZoomStep10Procent som läggs till eller tas bort av zoomkommandon.
intMaxZoom300Maximal zoomprocent.
boolShowToolTiptrueVisa verktygstips för sidposition vid rullning.
stringToolTipPageText"Page "Prefix som används i sidverktygstipset.
boolCacheEnabledfalseBehåll ett rörligt fönster av sidbilder i webbläsarens minne. Det använder inte localStorage.
boolLargeDocfalseLägg till sidelement i tidsbestämda satser för stora dokument.
boolShowHyperlinksfalseRendera hyperlänköverlappningar när serverkonfigurationen extraherade dem.
boolFixedZoomtrueAnvänd en fast zoomprocent istället för responsiv omräkning.
intFixedZoomPercent100Fast skrivbordzoom.
intFixedZoomPercentMobile75Fast mobilzoom.
stringBasePath"/"Var visaren skickar sidförfrågningar. "/" är DocImage.axd-hanteraren vid webbplatsens rot. För en applikation i en virtuell katalog, använd katalognamnet utan en inledande / ("myapp" betyder /myapp/DocImage.axd).
stringResPath"doconut-res/images"Mapp som widgeten laddar sina egna bilder från: images-mappen under ResourcesPath, utan en inledande /.
stringFitType"width""width", "height", eller tom för ingen automatisk anpassning. "page" accepteras inte av den aktuella widgeten.
boolRetryOn409falseFörsöker igen med sidförfrågningar som svarar "fortfarande renderar". DocImage.axd renderar synkront och skickar aldrig den signalen; låt den false.
csharp
var config = new ViewerConfig
{
    ShowThumbs = true,
    AutoLoad = false,
    PageZoom = 100,
    MaxZoom = 300,
    FitType = "width",
    BasePath = "/",                 // "/" = DocImage.axd‑hanteraren på webbplatsens rot (Web.config)
    ResPath = "doconut-res/images", // bildmappen under ResourcesPath, utan inledande '/'
    ShowHyperlinks = true
};
// Generera den med viewer.RenderViewer("viewerEl", token, config) - se Viewer‑referensen.

Skapa en ViewerConfig med RenderViewer

Viewer.RenderViewer(elementId, token, config) omvandlar en ViewerConfig till widgetens initieringsskript. Den skriver sex av egenskaperna ovan — BasePath, ResPath, ShowThumbs, AutoLoad, PageZoom och FitType — och anropar sedan View(token). De andra egenskaperna skrivs inte: för MaxZoom, ShowHyperlinks, zoominställningarna eller någon återuppringning, initiera widgeten själv med JavaScript-alternativen nedan. Se Viewer för RenderViewer.

C# till JavaScript-mappning

Skicka inte ett direkt serialiserat ViewerConfig till docViewer(...). De flesta widgetnycklar är camelCase, medan tre etablerade sökväg/fit-nycklar är PascalCase.

C#JavaScript
ShowThumbsshowThumbs
AutoLoadautoLoad
AutoFocusautoFocus
AutoPageFocusautoPageFocus
PageZoompageZoom
ZoomStepzoomStep
MaxZoommaxZoom
ShowToolTipshowToolTip
ToolTipPageTexttoolTipPageText
CacheEnabledcacheEnabled
LargeDoclargeDoc
ShowHyperlinksshowHyperlinks
FixedZoomfixedZoom
FixedZoomPercentfixedZoomPercent
FixedZoomPercentMobilefixedZoomPercentMobile
BasePathBasePath
ResPathResPath
FitTypeFitType
RetryOn409retryOn409

JavaScript-standardvärden

Widgeten har äldre standardvärden som skiljer sig från C#‑klassen. Följande värden kommer från den aktuella docViewer.js‑implementeringen.

AlternativStandardAnteckningar
leftMinWidth / leftMaxWidth220 / 800Gränser för miniatyrpanelens bredd.
showThumbstrueInitial miniatyrsynlighet.
autoFocus / autoPageFocustrue / falseautoPageFocus skiljer sig från C#‑standardvärdet.
thumbWidth / thumbHeight / thumbPadding150 / 200 / 10Miniatyrgeometri i pixlar.
pageZoom / zoomStep / maxZoom100 / 10 / 200JavaScript maxZoom skiljer sig från C# (300).
showToolTip / toolTipPageTexttrue / "Page "Verktygstips för sidposition.
format / doc / AccessToken"" / 0 / ""Interna initieringsvärden; normalt fylls i av View(token).
debugModefalseYtterligare klientdiagnostik.
FitType""Ingen automatisk anpassning om den inte tillhandahålls.
BasePath"DocImage.axd"Äldre standard. Ställ in den explicit: '/' för hanteraren vid webbplatsens rot.
ResPath""Ställ in explicit till den inbäddade bildsökvägen.
cacheEnabled / cacheCount / cacheDelayfalse / 3 / 3Fönster och fördröjning för förladdning av sidor i minnet.
autoLoadfalseExplicit tokenflöde rekommenderas.
largeDoctrueSkiljer sig från C#‑standardvärdet.
fixedZoomfalseSkiljer sig från C#‑standardvärdet.
fixedZoomPercent / fixedZoomPercentMobile100 / 50Mobilt värde skiljer sig från C# (75).
showHyperlinkstrueKräver server‑sidig extraktion för att skapa överlägg.

Ställ in alla beteendemässigt viktiga värden istället för att förlita dig på någon av standarduppsättningarna:

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: '/',
    ResPath: 'doconut-res/images',
    onViewerReady: function () {},
    onError: function (message) { console.error('DocViewer:', message); }
});
</script>

Återanrop

ÅteranropArgumentSyfte
onPageLoadingpageNumEn sidbegäran startar.
onPageLoadedpageNumEn sidbild har laddats färdigt.
onThumbnailClickedpageNumAnvändaren valde en miniatyr.
onPageClickedpageNumAnvändaren valde en sida.
onDoubleClicknoneVisaren mottog ett dubbelklick.
onViewerBusynoneVisaren gick in i ett upptaget tillstånd.
onViewerReadynoneInitieringen är klar.
onViewerErrornoneVisaren gick in i feltilstånd.
onErrormessageEn operation returnerade ett felmeddelande.
onCopydataTextkopieringsdata är tillgängliga.
onAutoLoadStatuspageNumAutoladdning fortskred till en sida.
onThumbsShownnoneMiniatyrpanelen blev synlig.
onAnnLoadednoneAnnotationsdata har laddats.
onAnnSavednoneAnnotationsdata har sparats.
onAnnSaveErrornoneSparning av annotation misslyckades.
onAnnClosednoneAnnotations‑UI stängdes.

Håll återanrop snabba; skicka telemetri asynkront och blockera inte sidrenderingen.

Publika metodgrupper

GruppVanliga metoder
LivscykelView(token, accessToken?), Close(server?), Token(), Init(), IsLoaded()
NavigationGotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages()
Zoom och anpassningZoom(zoomIn), CurrentZoom(), FitType(value), Refit()
OrienteringRotate(page, angle), Flip(page, flipType)
MiniatyrerHideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb)
SökningCanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...)
AnnotationSaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...)
KopieringCopy(...), CopyPage(pageNumber), CopyMode(enabled)

JavaScript‑filen innehåller också interna hjälpfunktioner. Betrakta endast metoder som används av referens‑UI‑t och som dokumenteras här eller i funktionsguiderna som stabila integrationspunkter.

Återförsöksalternativ

Widgeten accepterar också retryOn409 och dess backoff‑inställningar (retryInitialDelayMs, retryBackoffFactor, retryMaxDelayMs, retryMaxAttempts, retryMaxTotalMs). De används för distributioner vars sidor genereras i bakgrunden. DocImage.axd renderar varje sida under begäran, så håll retryOn409 av.

Kontrollista för sökväg

  • BasePath är '/' när DocImage.axd‑hanteraren är på webbplatsens rot — path‑attributet för hanteraren i Web.config bestämmer var den svarar. I en virtuell katalog, använd katalognamnet utan ett inledande / ('myapp', inte '/myapp': visaren lägger till snedstrecket, och //myapp/... är en begäran till en annan värd).
  • DoconutOptions.ResourcesPath är där resursmodulen levererar de inbäddade filerna (/doconut-res som standard).
  • ResPath pekar på sin images‑undermapp, också utan ett inledande / ('doconut-res/images'). Att peka den mot 'doconut-res' gör att varje ikon får 404 medan dokumentet fortfarande renderas.
  • I MVC måste routes.IgnoreRoute("doconut-res/{*pathInfo}") följa ResourcesPath om du ändrar den.
  • ExtractHyperlinks måste vara aktiverad i serverns formatkonfiguration innan showHyperlinks kan visa någonting.

Var den här sidan hjälpsam?