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
| Typ | Egenskap | Standard | Beskrivning |
|---|---|---|---|
bool | ShowThumbs | true | Visa miniatyrpanelen. |
bool | AutoLoad | false | Laddas automatiskt efter initiering. Det normala tokenflödet anropar View(token) explicit. |
bool | AutoFocus | true | Flytta webbläsarens fokus/rullning till visaren under initiering. |
bool | AutoPageFocus | true | Behåll den aktuella miniatyren synlig medan sidorna ändras. |
int | PageZoom | 100 | Initial zoomprocent. |
int | ZoomStep | 10 | Procent som läggs till eller tas bort av zoomkommandon. |
int | MaxZoom | 300 | Maximal zoomprocent. |
bool | ShowToolTip | true | Visa verktygstips för sidposition vid rullning. |
string | ToolTipPageText | "Page " | Prefix som används i sidverktygstipset. |
bool | CacheEnabled | false | Behåll ett rörligt fönster av sidbilder i webbläsarens minne. Det använder inte localStorage. |
bool | LargeDoc | false | Lägg till sidelement i tidsbestämda satser för stora dokument. |
bool | ShowHyperlinks | false | Rendera hyperlänköverlappningar när serverkonfigurationen extraherade dem. |
bool | FixedZoom | true | Använd en fast zoomprocent istället för responsiv omräkning. |
int | FixedZoomPercent | 100 | Fast skrivbordzoom. |
int | FixedZoomPercentMobile | 75 | Fast mobilzoom. |
string | BasePath | "/" | 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). |
string | ResPath | "doconut-res/images" | Mapp som widgeten laddar sina egna bilder från: images-mappen under ResourcesPath, utan en inledande /. |
string | FitType | "width" | "width", "height", eller tom för ingen automatisk anpassning. "page" accepteras inte av den aktuella widgeten. |
bool | RetryOn409 | false | Försöker igen med sidförfrågningar som svarar "fortfarande renderar". DocImage.axd renderar synkront och skickar aldrig den signalen; låt den false. |
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 |
|---|---|
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-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.
| Alternativ | Standard | Anteckningar |
|---|---|---|
leftMinWidth / leftMaxWidth | 220 / 800 | Gränser för miniatyrpanelens bredd. |
showThumbs | true | Initial miniatyrsynlighet. |
autoFocus / autoPageFocus | true / false | autoPageFocus skiljer sig från C#‑standardvärdet. |
thumbWidth / thumbHeight / thumbPadding | 150 / 200 / 10 | Miniatyrgeometri i pixlar. |
pageZoom / zoomStep / maxZoom | 100 / 10 / 200 | JavaScript maxZoom skiljer sig från C# (300). |
showToolTip / toolTipPageText | true / "Page " | Verktygstips för sidposition. |
format / doc / AccessToken | "" / 0 / "" | Interna initieringsvärden; normalt fylls i av View(token). |
debugMode | false | Ytterligare 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 / cacheDelay | false / 3 / 3 | Fönster och fördröjning för förladdning av sidor i minnet. |
autoLoad | false | Explicit tokenflöde rekommenderas. |
largeDoc | true | Skiljer sig från C#‑standardvärdet. |
fixedZoom | false | Skiljer sig från C#‑standardvärdet. |
fixedZoomPercent / fixedZoomPercentMobile | 100 / 50 | Mobilt värde skiljer sig från C# (75). |
showHyperlinks | true | Krä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:
<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
| Återanrop | Argument | Syfte |
|---|---|---|
onPageLoading | pageNum | En sidbegäran startar. |
onPageLoaded | pageNum | En sidbild har laddats färdigt. |
onThumbnailClicked | pageNum | Användaren valde en miniatyr. |
onPageClicked | pageNum | Användaren valde en sida. |
onDoubleClick | none | Visaren mottog ett dubbelklick. |
onViewerBusy | none | Visaren gick in i ett upptaget tillstånd. |
onViewerReady | none | Initieringen är klar. |
onViewerError | none | Visaren gick in i feltilstånd. |
onError | message | En operation returnerade ett felmeddelande. |
onCopy | data | Textkopieringsdata är tillgängliga. |
onAutoLoadStatus | pageNum | Autoladdning fortskred till en sida. |
onThumbsShown | none | Miniatyrpanelen blev synlig. |
onAnnLoaded | none | Annotationsdata har laddats. |
onAnnSaved | none | Annotationsdata har sparats. |
onAnnSaveError | none | Sparning av annotation misslyckades. |
onAnnClosed | none | Annotations‑UI stängdes. |
Håll återanrop snabba; skicka telemetri asynkront och blockera inte sidrenderingen.
Publika metodgrupper
| Grupp | Vanliga metoder |
|---|---|
| Livscykel | View(token, accessToken?), Close(server?), Token(), Init(), IsLoaded() |
| Navigation | GotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages() |
| Zoom och anpassning | Zoom(zoomIn), CurrentZoom(), FitType(value), Refit() |
| Orientering | Rotate(page, angle), Flip(page, flipType) |
| Miniatyrer | HideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb) |
| Sökning | CanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...) |
| Annotation | SaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...) |
| Kopiering | Copy(...), 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ärDocImage.axd‑hanteraren är på webbplatsens rot —path‑attributet för hanteraren iWeb.configbestä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-ressom standard).ResPathpekar på sinimages‑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öljaResourcesPathom du ändrar den. ExtractHyperlinksmåste vara aktiverad i serverns formatkonfiguration innanshowHyperlinkskan visa någonting.
Var den här sidan hjälpsam?