ViewerConfig
Opsi widget penampil klien
ViewerConfig (namespace Doconut) menjelaskan tampilan dan perilaku penampil browser. Ini tidak memengaruhi kualitas rendering dokumen; gunakan konfigurasi format untuk itu. Kelas C# dan widget JavaScript yang sudah lama memiliki default yang berbeda, jadi petakan nilai secara eksplisit.
Properti C#
| Tipe | Properti | Bawaan | Deskripsi |
|---|---|---|---|
bool | ShowThumbs | true | Tampilkan panel thumbnail. |
bool | AutoLoad | false | Muat secara otomatis setelah inisialisasi. Alur token normal memanggil View(token) secara eksplisit. |
bool | AutoFocus | true | Pindahkan fokus/scroll browser ke penampil selama inisialisasi. |
bool | AutoPageFocus | true | Pertahankan thumbnail saat ini tetap terlihat saat halaman berubah. |
int | PageZoom | 100 | Persentase zoom awal. |
int | ZoomStep | 10 | Persentase yang ditambahkan atau dikurangi oleh perintah zoom. |
int | MaxZoom | 300 | Persentase zoom maksimum. |
bool | ShowToolTip | true | Tampilkan tooltip posisi halaman saat menggulir. |
string | ToolTipPageText | "Page " | Prefiks yang digunakan dalam tooltip halaman. |
bool | CacheEnabled | false | Pertahankan jendela bergerak gambar halaman dalam memori browser. Tidak menggunakan localStorage. |
bool | LargeDoc | false | Tambahkan elemen halaman dalam batch berwaktu untuk dokumen besar. |
bool | ShowHyperlinks | false | Render overlay hyperlink ketika konfigurasi server mengekstraknya. |
bool | FixedZoom | true | Gunakan persentase zoom tetap alih-alih perhitungan responsif. |
int | FixedZoomPercent | 100 | Zoom desktop tetap. |
int | FixedZoomPercentMobile | 75 | Zoom seluler tetap. |
string | BasePath | "/" | Tempat penampil mengirim permintaan halaman. "/" adalah DocImage.axd di akar situs; selain itu cabang tempat host memetakan UseDoconut(), tanpa / di depan ("doconut" berarti /doconut/DocImage.axd). |
string | ResPath | "doconut-res/images" (26.9.0; "doconut-res" before) | Folder tempat widget memuat gambar sendiri: folder images di bawah ResourcesPath, tanpa / di depan. |
string | FitType | "width" | "width", "height", atau kosong untuk tidak ada penyesuaian otomatis. "page" tidak diterima oleh widget saat ini. |
bool | RetryOn409 | false | Aktifkan polling ketika produksi halaman asinkron/terdistribusi merespons 202 Accepted; 409 juga diterima untuk kompatibilitas dengan server lama. Tidak diperlukan oleh penampil sinkron normal. |
var config = new ViewerConfig
{
ShowThumbs = true,
AutoLoad = false,
PageZoom = 100,
MaxZoom = 300,
FitType = "width",
BasePath = "doconut", // tidak ada '/' di depan: penampil akan menambahkannya ("/doconut" akan menjadi //doconut, host lain)
ResPath = "doconut-res/images",
ShowHyperlinks = true
};Pemetaaan C# ke JavaScript
Jangan mengirimkan ViewerConfig yang diserialisasi secara langsung ke docViewer(...). Sebagian besar kunci widget menggunakan camelCase, sementara tiga kunci jalur/fit yang sudah ada menggunakan 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 Bawaan
Widget memiliki nilai bawaan lama yang berbeda dari kelas C#. Nilai berikut berasal dari implementasi docViewer.js saat ini.
| Opsi | Bawaan | Catatan |
|---|---|---|
leftMinWidth / leftMaxWidth | 220 / 800 | Batas lebar panel thumbnail. |
showThumbs | true | Visibilitas thumbnail awal. |
autoFocus / autoPageFocus | true / false | autoPageFocus berbeda dari default C#. |
thumbWidth / thumbHeight / thumbPadding | 150 / 200 / 10 | Geometri thumbnail dalam piksel. |
pageZoom / zoomStep / maxZoom | 100 / 10 / 200 | maxZoom JavaScript berbeda dari C# (300). |
showToolTip / toolTipPageText | true / "Page " | Tooltip posisi halaman. |
format / doc / AccessToken | "" / 0 / "" | Nilai inisialisasi internal; biasanya diisi oleh View(token). |
debugMode | false | Diagnostik klien tambahan. |
FitType | "" | Tidak ada penyesuaian otomatis kecuali disediakan. |
BasePath | "DocImage.axd" | Default klien historis dipertahankan untuk kompatibilitas. Host ASP.NET Core saat ini harus mengaturnya secara eksplisit ke cabang middleware yang dipetakan. |
ResPath | "" | Atur secara eksplisit ke jalur gambar tersemat. |
cacheEnabled / cacheCount / cacheDelay | false / 3 / 3 | Jendela dan penundaan preloading halaman dalam memori. |
autoLoad | false | Alur token eksplisit disarankan. |
largeDoc | true | Berbeda dari default C#. |
fixedZoom | false | Berbeda dari default C#. |
fixedZoomPercent / fixedZoomPercentMobile | 100 / 50 | Nilai mobile berbeda dari C# (75). |
showHyperlinks | true | Memerlukan ekstraksi sisi server untuk menghasilkan overlay. |
Atur semua nilai penting perilaku alih-alih bergantung pada salah satu set bawaan:
<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>Panggilan Balik
| Callback | Argumen | Tujuan |
|---|---|---|
onPageLoading | pageNum | Permintaan halaman sedang dimulai. |
onPageLoaded | pageNum | Gambar halaman selesai dimuat. |
onThumbnailClicked | pageNum | Pengguna memilih thumbnail. |
onPageClicked | pageNum | Pengguna memilih halaman. |
onDoubleClick | none | Viewer menerima double-click. |
onViewerBusy | none | Viewer masuk ke keadaan sibuk. |
onViewerReady | none | Inisialisasi selesai. |
onViewerError | none | Viewer masuk ke keadaan error. |
onError | message | Operasi mengembalikan pesan error. |
onCopy | data | Data salinan teks tersedia. |
onAutoLoadStatus | pageNum | Auto-loading melanjutkan ke halaman. |
onThumbsShown | none | Panel thumbnail menjadi terlihat. |
onAnnLoaded | none | Data anotasi dimuat. |
onAnnSaved | none | Data anotasi disimpan. |
onAnnSaveError | none | Penyimpanan anotasi gagal. |
onAnnClosed | none | UI anotasi ditutup. |
Jaga callback tetap cepat; kirim telemetry secara asynchronous dan jangan memblokir rendering halaman.
Grup Metode Publik
| Grup | Metode umum |
|---|---|
| Siklus Hidup | View(token, accessToken?), Close(server?), Token(), Init(), IsLoaded() |
| Navigasi | GotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages() |
| Zoom dan penyesuaian | Zoom(zoomIn), CurrentZoom(), FitType(value), Refit() |
| Orientasi | Rotate(page, angle), Flip(page, flipType) |
| Thumbnail | HideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb) |
| Pencarian | CanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...) |
| Anotasi | SaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...) |
| Salin | Copy(...), CopyPage(pageNumber), CopyMode(enabled) |
File JavaScript juga berisi pembantu internal. Perlakukan hanya metode yang digunakan oleh UI referensi dan didokumentasikan di sini atau dalam panduan fitur sebagai titik integrasi yang stabil.
Coba ulang saat halaman terdistribusi masih merender
retryOn409 mempertahankan nama historisnya. Ini untuk produksi halaman asinkron dan mencoba kembali respons kesiapan 202 Accepted saat ini serta sinyal 409 Conflict yang lebih lama. Ketika diaktifkan, widget melakukan polling dengan default JavaScript berikut:
| Opsi | Bawaan |
|---|---|
retryInitialDelayMs | 250 |
retryBackoffFactor | 1.6 |
retryMaxDelayMs | 2500 |
retryMaxAttempts | 60 |
retryMaxTotalMs | 120000 |
Biarkan dinonaktifkan untuk penampil normal. Mengaktifkannya tidak dapat membuat render sinkron yang tidak didukung menjadi asinkron.
Daftar periksa jalur
DoconutOptions.MiddlewarePathharus menggambarkan cabang yang sebenarnya Anda petakan.BasePathharus menargetkan cabang itu, ditulis tanpa awalan/('doconut', bukan'/doconut': penampil menambahkan garis miring, dan//doconut/...adalah permintaan ke host lain).DoconutOptions.ResourcesPathadalah rute sumber daya yang disematkan.ResPathbiasanya menargetkan subfolderimages-nya, juga tanpa awalan/('doconut-res/images').ExtractHyperlinksharus diaktifkan dalam konfigurasi format server sebelumshowHyperlinksdapat menampilkan apa pun.
Apakah halaman ini membantu?