ViewerConfig

Tùy chọn widget xem trên client

ViewerConfig (namespace Doconut) mô tả giao diện và hành vi của trình xem trong trình duyệt. Nó không ảnh hưởng đến chất lượng hiển thị tài liệu; hãy sử dụng cấu hình định dạng cho mục đích đó. Lớp C# và widget JavaScript lâu đời có các giá trị mặc định khác nhau, vì vậy hãy ánh xạ các giá trị một cách rõ ràng.

Thuộc tính C#

KiểuThuộc tínhMặc địnhMô tả
boolShowThumbstrueHiển thị bảng điều khiển hình thu nhỏ.
boolAutoLoadfalseTự động tải sau khi khởi tạo. Luồng token thông thường gọi View(token) một cách rõ ràng.
boolAutoFocustrueDi chuyển tiêu điểm/cuộn của trình duyệt tới trình xem trong quá trình khởi tạo.
boolAutoPageFocustrueGiữ hình thu nhỏ hiện tại hiển thị khi các trang thay đổi.
intPageZoom100Phần trăm thu phóng ban đầu.
intZoomStep10Phần trăm được cộng hoặc trừ bởi các lệnh thu phóng.
intMaxZoom300Phần trăm thu phóng tối đa.
boolShowToolTiptrueHiển thị tooltip vị trí trang khi cuộn.
stringToolTipPageText"Page "Tiền tố được sử dụng trong tooltip trang.
boolCacheEnabledfalseGiữ một cửa sổ di động của các hình ảnh trang trong bộ nhớ trình duyệt. Nó không sử dụng localStorage.
boolLargeDocfalseThêm các phần tử trang theo lô thời gian cho tài liệu lớn.
boolShowHyperlinksfalseHiển thị lớp phủ hyperlink khi cấu hình máy chủ đã trích xuất chúng.
boolFixedZoomtrueSử dụng phần trăm thu phóng cố định thay vì tính toán đáp ứng.
intFixedZoomPercent100Thu phóng cố định trên máy tính để bàn.
intFixedZoomPercentMobile75Thu phóng cố định trên thiết bị di động.
stringBasePath"/"Nhánh nơi máy chủ ánh xạ UseDoconut().
stringResPath"doconut-res"Cơ sở tài nguyên được widget sử dụng. Trong cấu hình bình thường, chỉ tới <ResourcesPath>/images.
stringFitType"width""width", "height" hoặc để trống nếu không tự động vừa. "page" không được widget hiện tại chấp nhận.
boolRetryOn409falseBật việc thăm dò khi sản xuất trang bất đồng bộ/phân tán trả về 202 Accepted; 409 cũng được chấp nhận để tương thích với máy chủ cũ. Không cần thiết cho trình xem đồng bộ thông thường.
csharp
var config = new ViewerConfig
{
    ShowThumbs = true,
    AutoLoad = false,
    PageZoom = 100,
    MaxZoom = 300,
    FitType = "width",
    BasePath = "/doconut",
    ResPath = "/doconut-res/images",
    ShowHyperlinks = true
};

Ánh xạ C# sang JavaScript

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

Mặc định JavaScript

Tùy chọnMặc địnhGhi chú
leftMinWidth / leftMaxWidth220 / 800Giới hạn độ rộng của bảng điều khiển hình thu nhỏ.
showThumbstrueHiển thị hình thu nhỏ ban đầu.
autoFocus / autoPageFocustrue / falseautoPageFocus khác với mặc định C#.
thumbWidth / thumbHeight / thumbPadding150 / 200 / 10Hình học hình thu nhỏ tính bằng pixel.
pageZoom / zoomStep / maxZoom100 / 10 / 200maxZoom của JavaScript khác với C# (300).
showToolTip / toolTipPageTexttrue / "Page "Tooltip vị trí trang.
format / doc / AccessToken"" / 0 / ""Giá trị khởi tạo nội bộ; thường được View(token) điền.
debugModefalseChẩn đoán bổ sung cho client.
FitType""Không tự động vừa trừ khi được cung cấp.
BasePath"DocImage.axd"Mặc định lịch sử của client được giữ lại để tương thích. Các máy chủ ASP.NET Core hiện tại phải đặt rõ ràng tới nhánh middleware đã ánh xạ.
ResPath""Đặt rõ ràng tới đường dẫn hình ảnh nhúng.
cacheEnabled / cacheCount / cacheDelayfalse / 3 / 3Cửa sổ và độ trễ tải trước trang trong bộ nhớ.
autoLoadfalseKhuyến nghị sử dụng luồng token rõ ràng.
largeDoctrueKhác với mặc định C#.
fixedZoomfalseKhác với mặc định C#.
fixedZoomPercent / fixedZoomPercentMobile100 / 50Giá trị di động khác với C# (75).
showHyperlinkstrueYêu cầu trích xuất phía máy chủ để tạo lớp phủ.
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: '/doconut',
    ResPath: '/doconut-res/images',
    onViewerReady: function () {},
    onError: function (message) { console.error('DocViewer:', message); }
});
</script>

Các hàm callback

CallbackĐối sốMục đích
onPageLoadingpageNumMột yêu cầu trang đang bắt đầu.
onPageLoadedpageNumHình ảnh trang đã tải xong.
onThumbnailClickedpageNumNgười dùng đã chọn hình thu nhỏ.
onPageClickedpageNumNgười dùng đã chọn một trang.
onDoubleClicknoneTrình xem nhận được double-click.
onViewerBusynoneTrình xem chuyển sang trạng thái bận.
onViewerReadynoneKhởi tạo hoàn tất.
onViewerErrornoneTrình xem chuyển sang trạng thái lỗi.
onErrormessageMột thao tác trả về thông báo lỗi.
onCopydataDữ liệu sao chép văn bản có sẵn.
onAutoLoadStatuspageNumTự động tải tiến tới một trang.
onThumbsShownnoneBảng điều khiển hình thu nhỏ đã hiển thị.
onAnnLoadednoneDữ liệu chú thích đã tải.
onAnnSavednoneDữ liệu chú thích đã lưu.
onAnnSaveErrornoneLưu chú thích thất bại.
onAnnClosednoneGiao diện chú thích đã đóng.

Giữ các callback ngắn gọn; gửi telemetry bất đồng bộ và không chặn việc render trang.

Các nhóm phương thức công khai

NhómPhương thức chung
Vòng đờiView(token, accessToken?), Close(server?), Token(), Init(), IsLoaded()
Điều hướngGotoPage(page), ShowPage(page, focus?), Next(next), CurrentPage(), TotalPages()
Thu phóng và vừaZoom(zoomIn), CurrentZoom(), FitType(value), Refit()
Định hướngRotate(page, angle), Flip(page, flipType)
Hình thu nhỏHideThumbs(hide), ThumbSize(size), ReloadThumbs(width), ScrollToThumb(thumb)
Tìm kiếmCanSearch(), Search(...), SearchMatchCount(), SearchSummary(...), GotoSearchMatch(...)
Chú thíchSaveAnnotations(), GetAnnotations(), PushAnnotations(...), CloseAnnotations(...), ShowAnnotations(...)
Sao chépCopy(...), CopyPage(pageNumber), CopyMode(enabled)

Tệp JavaScript còn chứa các hàm trợ giúp nội bộ. Chỉ coi các phương thức được tham chiếu trong UI tài liệu và các hướng dẫn tính năng là các điểm tích hợp ổn định.

Thử lại khi một trang phân tán vẫn đang được render

retryOn409 giữ nguyên tên lịch sử. Nó dùng cho việc sản xuất trang bất đồng bộ và sẽ thử lại phản hồi sẵn sàng 202 Accepted cũng như tín hiệu cũ 409 Conflict. Khi bật, widget sẽ thăm dò với các mặc định JavaScript sau:

Tùy chọnMặc định
retryInitialDelayMs250
retryBackoffFactor1.6
retryMaxDelayMs2500
retryMaxAttempts60
retryMaxTotalMs120000

Để nó tắt cho trình xem bình thường. Bật tính năng này không thể biến một render đồng bộ không được hỗ trợ thành bất đồng bộ.

Danh sách kiểm tra đường dẫn

  • DoconutOptions.MiddlewarePath phải mô tả nhánh bạn thực sự ánh xạ.
  • BasePath phải trỏ tới nhánh đó.
  • DoconutOptions.ResourcesPath là đường dẫn tài nguyên nhúng.
  • ResPath thường trỏ tới thư mục con /images.
  • ExtractHyperlinks phải được bật trong cấu hình định dạng máy chủ trước khi showHyperlinks có thể hiển thị bất cứ thứ gì.

Trang này có hữu ích không?