ViewerConfig
İstemci görüntüleyici widget seçenekleri
ViewerConfig (namespace Doconut) tarayıcı görüntüleyicisinin görünüm ve davranışını tanımlar. Belge render kalitesini etkilemez; bunun için bir format yapılandırması kullanın. C# sınıfı ve eski JavaScript eklentisi farklı varsayılanlara sahiptir, bu yüzden değerleri açıkça eşleyin.
C# özellikleri
| Tür | Özellik | Varsayılan | Açıklama |
|---|---|---|---|
bool | ShowThumbs | true | Küçük resim panelini göster. |
bool | AutoLoad | false | Başlatmadan sonra otomatik olarak yükle. Normal token akışı View(token)'ı açıkça çağırır. |
bool | AutoFocus | true | Başlatma sırasında tarayıcı odak/scrollunu görüntüleyiciye taşı. |
bool | AutoPageFocus | true | Sayfalar değişirken mevcut küçük resmi görünür tut. |
int | PageZoom | 100 | İlk yakınlaştırma yüzdesi. |
int | ZoomStep | 10 | Yakınlaştırma komutlarıyla eklenen veya çıkarılan yüzde. |
int | MaxZoom | 300 | Maksimum yakınlaştırma yüzdesi. |
bool | ShowToolTip | true | Kaydırma sırasında sayfa konumu araç ipucunu göster. |
string | ToolTipPageText | "Page " | Sayfa araç ipucunda kullanılan önek. |
bool | CacheEnabled | false | Tarayıcı belleğinde sayfa görüntülerinin hareketli bir penceresini tut. localStorage kullanmaz. |
bool | LargeDoc | false | Büyük belgeler için sayfa öğelerini zamanlanmış toplu olarak ekle. |
bool | ShowHyperlinks | false | Sunucu yapılandırması onları çıkardığında hiperlink kaplamalarını render et. |
bool | FixedZoom | true | Duyarlı yeniden hesaplama yerine sabit bir yakınlaştırma yüzdesi kullan. |
int | FixedZoomPercent | 100 | Sabit masaüstü yakınlaştırması. |
int | FixedZoomPercentMobile | 75 | Sabit mobil yakınlaştırma. |
string | BasePath | "/" | Görüntüleyicinin sayfa isteklerini gönderdiği yer. "/", site kökünde DocImage.axd'dır; aksi takdirde hostun UseDoconut()'ı eşlediği dal, başında / olmadan ("doconut", /doconut/DocImage.axd anlamına gelir). |
string | ResPath | "doconut-res/images" (26.9.0; "doconut-res" before) | Widget'in kendi görüntülerini yüklediği klasör: ResourcesPath altındaki images klasörü, başında / olmadan. |
string | FitType | "width" | "width", "height", ya da otomatik sığdırma olmaması için boş. "page", mevcut widget tarafından kabul edilmez. |
bool | RetryOn409 | false | Asenkron/dağıtık bir sayfa isteği 409 yanıt verdiğinde yoklamayı etkinleştir. Normal senkron görüntüleyici için gerekli değildir. |
var config = new ViewerConfig
{
ShowThumbs = true,
AutoLoad = false,
PageZoom = 100,
MaxZoom = 300,
FitType = "width",
BasePath = "doconut", // başında '/' olmamalı: görüntüleyici bunu ekler ("/doconut" //doconut olur, başka bir ana bilgisayar)
ResPath = "doconut-res/images",
ShowHyperlinks = true
};C#'tan JavaScript'e eşleme
Doğrudan serileştirilmiş bir ViewerConfig'ı docViewer(...)'a geçirmeyin. Çoğu widget anahtarı camelCase iken, üç yerleşik yol/fit anahtarı PascalCase'dir.
| 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 varsayılanları
Widget'in C# sınıfından farklı eski varsayılanları vardır. Aşağıdaki değerler mevcut docViewer.js uygulamasından gelmektedir.
| Seçenek | Varsayılan | Notlar |
|---|---|---|
leftMinWidth / leftMaxWidth | 220 / 800 | Küçük resim bölmesi genişlik sınırları. |
showThumbs | true | İlk küçük resim görünürlüğü. |
autoFocus / autoPageFocus | true / false | autoPageFocus, C# varsayılanından farklıdır. |
thumbWidth / thumbHeight / thumbPadding | 150 / 200 / 10 | Piksel cinsinden küçük resim geometrisi. |
pageZoom / zoomStep / maxZoom | 100 / 10 / 200 | JavaScript maxZoom, C#'dan farklıdır (300). |
showToolTip / toolTipPageText | true / "Page " | Sayfa konumu araç ipucu. |
format / doc / AccessToken | "" / 0 / "" | Dahili başlatma değerleri; genellikle View(token) tarafından doldurulur. |
debugMode | false | Ek istemci teşhisleri. |
FitType | "" | Sağlanmadıkça otomatik sığdırma yok. |
BasePath | "DocImage.axd" | Eski işleyici varsayılanı. ASP.NET Core için açıkça ayarlayın. |
ResPath | "" | Gömülü görüntü yolu olarak açıkça ayarlayın. |
cacheEnabled / cacheCount / cacheDelay | false / 3 / 3 | Bellek içi sayfa ön yükleme penceresi ve gecikmesi. |
autoLoad | false | Açık token akışı önerilir. |
largeDoc | true | C# varsayılanından farklıdır. |
fixedZoom | false | C# varsayılanından farklıdır. |
fixedZoomPercent / fixedZoomPercentMobile | 100 / 50 | Mobil değer C#'dan farklıdır (75). |
showHyperlinks | true | Kaplamaları üretmek için sunucu tarafı çıkarma gerekir. |
Her iki varsayılan setine güvenmek yerine davranışsal olarak önemli tüm değerleri ayarlayın:
<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>Geri Çağrılar
| Geri Çağrı | Argümanlar | Amaç |
|---|---|---|
onPageLoading | pageNum | Bir sayfa isteği başlatılıyor. |
onPageLoaded | pageNum | Bir sayfa resmi yüklenmesi tamamlandı. |
onThumbnailClicked | pageNum | Kullanıcı bir küçük resim seçti. |
onPageClicked | pageNum | Kullanıcı bir sayfa seçti. |
onDoubleClick | none | Görüntüleyici çift tıklama aldı. |
onViewerBusy | none | Görüntüleyici meşgul duruma girdi. |
onViewerReady | none | Başlatma tamamlandı. |
onViewerError | none | Görüntüleyici hata durumuna girdi. |
onError | message | Bir işlem hata mesajı döndürdü. |
onCopy | data | Metin kopyalama verisi mevcut. |
onAutoLoadStatus | pageNum | Otomatik yükleme bir sayfaya ilerledi. |
onThumbsShown | none | Küçük resim paneli göründü. |
onAnnLoaded | none | Not ekleme verileri yüklendi. |
onAnnSaved | none | Not ekleme verileri kaydedildi. |
onAnnSaveError | none | Not ekleme kaydetme başarısız oldu. |
onAnnClosed | none | Not ekleme UI kapatıldı. |
Geri çağrıları hızlı tutun; telemetrileri asenkron olarak gönderin ve sayfa renderını engellemeyin.
Genel yöntem grupları
| Grup | Ortak yöntemler |
|---|---|
| Yaşam Döngüsü | View(token, accessToken?), Close(server?), Token(), Init(), IsLoaded() |
| Gezinme | GotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages() |
| Yakınlaştırma ve sığdırma | Zoom(zoomIn), CurrentZoom(), FitType(value), Refit() |
| Yönlendirme | Rotate(page, angle), Flip(page, flipType) |
| Küçük Resimler | HideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb) |
| Arama | CanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...) |
| Not Ekleme | SaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...) |
| Kopyala | Copy(...), CopyPage(pageNumber), CopyMode(enabled) |
JavaScript dosyası ayrıca dahili yardımcılar da içerir. Yalnızca referans UI tarafından kullanılan ve burada ya da özellik kılavuzlarında belgelenen yöntemleri, kararlı entegrasyon noktaları olarak değerlendirin.
HTTP 409'dan Sonra Tekrar Dene
retryOn409 asenkron sayfa üretimi içindir. Etkinleştirildiğinde, widget bu JavaScript varsayılanlarıyla periyodik istek yapar:
| Seçenek | Varsayılan |
|---|---|
retryInitialDelayMs | 250 |
retryBackoffFactor | 1.6 |
retryMaxDelayMs | 2500 |
retryMaxAttempts | 60 |
retryMaxTotalMs | 120000 |
Normal görüntüleyici için devre dışı bırakın. Etkinleştirmek, desteklenmeyen senkron bir renderı asenkron hâle getiremez.
Yol Kontrol Listesi
DoconutOptions.MiddlewarePath, gerçekte eşlediğiniz dalı tanımlamalıdır.BasePath, o dalı hedeflemeli, başında/olmadan yazılmalıdır ('doconut','/doconut'değil: görüntüleyici eğik çizgiyi ekler ve//doconut/...başka bir ana bilgisayara istek olur).DoconutOptions.ResourcesPath, gömülü kaynak yolu'dur.ResPathgenellikleimagesalt klasörünü hedefler, ayrıca başında/olmadan ('doconut-res/images').ExtractHyperlinks,showHyperlinks'ın bir şey görüntüleyebilmesi için sunucu format yapılandırmasında etkinleştirilmelidir.
Bu sayfa yardımcı oldu mu?