ViewerConfig
Параметри віджету переглядача клієнта
ViewerConfig (namespace Doconut) описує зовнішній вигляд та поведінку переглядача в браузері. Це не впливає на якість рендерингу документа; для цього використовуйте конфігурацію формату. Клас C# та застарілий JavaScript‑плагін мають різні значення за замовчуванням, тому значення слід явно зіставляти.
Властивості C#
| Тип | Властивість | За замовчуванням | Опис |
|---|---|---|---|
bool | ShowThumbs | true | Показувати панель мініатюр. |
bool | AutoLoad | false | Автоматично завантажувати після ініціалізації. Звичайний потік токенів явно викликає View(token). |
bool | AutoFocus | true | Переміщати фокус/прокрутку браузера до переглядача під час ініціалізації. |
bool | AutoPageFocus | true | Зберігати поточну мініатюру видимою під час зміни сторінок. |
int | PageZoom | 100 | Початковий відсоток масштабування. |
int | ZoomStep | 10 | Відсоток, який додається або віднімається командами масштабування. |
int | MaxZoom | 300 | Максимальний відсоток масштабування. |
bool | ShowToolTip | true | Показувати підказку позиції сторінки під час прокрутки. |
string | ToolTipPageText | "Page " | Префікс, що використовується у підказці сторінки. |
bool | CacheEnabled | false | Зберігати рухоме вікно зображень сторінок у пам'яті браузера. Не використовує localStorage. |
bool | LargeDoc | false | Додавати елементи сторінок пакетами у часі для великих документів. |
bool | ShowHyperlinks | false | Відображати накладки гіперпосилань, коли серверна конфігурація їх витягнула. |
bool | FixedZoom | true | Використовувати фіксований відсоток масштабування замість адаптивного перерахунку. |
int | FixedZoomPercent | 100 | Фіксоване масштабування для настільних пристроїв. |
int | FixedZoomPercentMobile | 75 | Фіксоване масштабування для мобільних пристроїв. |
string | BasePath | "/" | Куди переглядач надсилає запити сторінок. "/" — це DocImage.axd у корені сайту; інакше — гілка, де хост мапить UseDoconut(), без початкового / ("doconut" означає /doconut/DocImage.axd). |
string | ResPath | "doconut-res/images" (26.9.0; "doconut-res" before) | Тека, з якої віджет завантажує власні зображення: тека images у ResourcesPath, без початкового /. |
string | FitType | "width" | "width", "height" або порожньо для відсутності автоматичного підгонки. "page" не підтримується поточним віджетом. |
bool | RetryOn409 | false | Увімкнути опитування, коли асинхронний/розподілений запит сторінки відповідає 409. Не потрібно для звичайного синхронного переглядача. |
var config = new ViewerConfig
{
ShowThumbs = true,
AutoLoad = false,
PageZoom = 100,
MaxZoom = 300,
FitType = "width",
BasePath = "doconut", // без початкового '/': переглядач додає його ("/doconut" стало б //doconut, інший хост)
ResPath = "doconut-res/images",
ShowHyperlinks = true
};Відображення C# у JavaScript
Не передавайте безпосередньо серіалізований ViewerConfig у docViewer(...). Більшість ключів віджету записані у camelCase, тоді як три встановлених ключі шляху/підгонки — у 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
Віджет має старіші значення за замовчуванням, які відрізняються від класу C#. Наступні значення взяті з поточної реалізації docViewer.js.
| Опція | За замовчуванням | Примітки |
|---|---|---|
leftMinWidth / leftMaxWidth | 220 / 800 | Межі ширини панелі мініатюр. |
showThumbs | true | Початкова видимість мініатюр. |
autoFocus / autoPageFocus | true / false | autoPageFocus відрізняється від значення за замовчуванням у C#. |
thumbWidth / thumbHeight / thumbPadding | 150 / 200 / 10 | Геометрія мініатюр у пікселях. |
pageZoom / zoomStep / maxZoom | 100 / 10 / 200 | maxZoom у JavaScript відрізняється від C# (300). |
showToolTip / toolTipPageText | true / "Page " | Підказка позиції сторінки. |
format / doc / AccessToken | "" / 0 / "" | Внутрішні значення ініціалізації; зазвичай заповнюються View(token). |
debugMode | false | Додаткова діагностика на боці клієнта. |
FitType | "" | Автоматична підгонка не застосовується, якщо не вказана. |
BasePath | "DocImage.axd" | Типове значення застарілого обробника. Встановіть явно для ASP.NET Core. |
ResPath | "" | Встановіть явно шлях до вбудованих зображень. |
cacheEnabled / cacheCount / cacheDelay | false / 3 / 3 | Вікно попереднього завантаження сторінок у пам'яті та затримка. |
autoLoad | false | Рекомендується явний потік токену. |
largeDoc | true | Відрізняється від значення за замовчуванням у C#. |
fixedZoom | false | Відрізняється від значення за замовчуванням у C#. |
fixedZoomPercent / fixedZoomPercentMobile | 100 / 50 | Мобільне значення відрізняється від C# (75). |
showHyperlinks | true | Потребує серверного вилучення для створення накладок. |
Встановлюйте всі важливі поведінкові значення явно, а не покладайтеся на будь‑які набори за замовчуванням:
<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>Зворотні виклики
| Зворотний виклик | Аргументи | Призначення |
|---|---|---|
onPageLoading | pageNum | Запит на сторінку розпочинається. |
onPageLoaded | pageNum | Зображення сторінки завершило завантаження. |
onThumbnailClicked | pageNum | Користувач вибрав мініатюру. |
onPageClicked | pageNum | Користувач вибрав сторінку. |
onDoubleClick | none | Переглядач отримав подвійне клацання. |
onViewerBusy | none | Переглядач перейшов у зайнятий стан. |
onViewerReady | none | Ініціалізація завершена. |
onViewerError | none | Переглядач перейшов у стан помилки. |
onError | message | Операція повернула повідомлення про помилку. |
onCopy | data | Доступні дані копіювання тексту. |
onAutoLoadStatus | pageNum | Автозавантаження перейшло до сторінки. |
onThumbsShown | none | Панель мініатюр стала видимою. |
onAnnLoaded | none | Дані анотацій завантажено. |
onAnnSaved | none | Дані анотацій збережено. |
onAnnSaveError | none | Не вдалося зберегти анотації. |
onAnnClosed | none | Інтерфейс анотацій закрито. |
Тримайте зворотні виклики швидкими; надсилайте телеметрію асинхронно і не блокуйте рендеринг сторінки.
Публічні групи методів
| Група | Загальні методи |
|---|---|
| Життєвий цикл | View(token, accessToken?), Close(server?), Token(), Init(), IsLoaded() |
| Навігація | GotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages() |
| Масштаб і підгонка | Zoom(zoomIn), CurrentZoom(), FitType(value), Refit() |
| Орієнтація | Rotate(page, angle), Flip(page, flipType) |
| Мініатюри | HideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb) |
| Пошук | CanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...) |
| Анотація | SaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...) |
| Копіювання | Copy(...), CopyPage(pageNumber), CopyMode(enabled) |
Файл JavaScript також містить внутрішні допоміжні функції. Розглядайте лише методи, які використовуються референтним інтерфейсом і задокументовані тут або у посібниках з функціоналу, як стабільні точки інтеграції.
Повторна спроба після HTTP 409
retryOn409 призначений для асинхронного створення сторінок. Коли ввімкнено, віджет опитує з цими типовими значеннями JavaScript:
| Опція | За замовчуванням |
|---|---|
retryInitialDelayMs | 250 |
retryBackoffFactor | 1.6 |
retryMaxDelayMs | 2500 |
retryMaxAttempts | 60 |
retryMaxTotalMs | 120000 |
Залиште його вимкненим для звичайного переглядача. Увімкнення не може зробити непідтримуваний синхронний рендер асинхронним.
Перевірка шляху
DoconutOptions.MiddlewarePathмає описувати гілку, яку ви фактично мапите.BasePathмає вказувати на цю гілку, записуючись без початкового/('doconut', а не'/doconut': переглядач додає слеш, і//doconut/...є запитом до іншого хоста).DoconutOptions.ResourcesPath— це маршрут вбудованих ресурсів.ResPathзазвичай вказує на його підпапкуimages, також без початкового/('doconut-res/images').ExtractHyperlinksмає бути ввімкнено у конфігурації формату сервера, перш ніжshowHyperlinksзможе щось відображати.
Чи була ця сторінка корисною?