ViewerConfig

Các 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à plugin JavaScript cũ 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 thêm hoặc giảm 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 các lô thời gian cho tài liệu lớn.
boolShowHyperlinksfalseHiển thị lớp phủ siêu liên kết 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 lại đá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 mà 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 muốn tự động vừa. "page" không được widget hiện tại chấp nhận.
boolRetryOn409falseKích hoạt việc polling khi yêu cầu trang bất đồng bộ/phân tán trả về 409. 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

Không truyền một ViewerConfig được tuần tự hoá trực tiếp vào docViewer(...). Hầu hết các khóa widget sử dụng camelCase, trong khi ba khóa đường dẫn/fit đã được thiết lập sử dụng PascalCase.

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

Widget có các giá trị mặc định cũ hơn so với lớp C#. Các giá trị sau được lấy từ triển khai hiện tại của docViewer.js.

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 khách bổ sung.
FitType""Không tự động vừa trừ khi được cung cấp.
BasePath"DocImage.axd"Mặc định trình xử lý cũ. Đặt rõ ràng cho ASP.NET Core.
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ủ.

Đặt tất cả các giá trị quan trọng về hành vi thay vì dựa vào bất kỳ bộ mặc định nào:

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ỏ trở nên hiển thị.
onAnnLoadednoneDữ liệu chú thích đã được tải.
onAnnSavednoneDữ liệu chú thích đã được lưu.
onAnnSaveErrornoneLưu chú thích thất bại.
onAnnClosednoneGiao diện chú thích đã đóng.

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

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

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ũng chứa các trợ giúp nội bộ. Chỉ coi các phương thức được UI tham chiếu sử dụng và được tài liệu ở đây hoặc trong các hướng dẫn tính năng là các điểm tích hợp ổn định.

Thử lại sau HTTP 409

retryOn409 dùng cho việc tạo trang bất đồng bộ. Khi bật, widget sẽ polling 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 mà 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 của nó.
  • 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 kỳ thứ gì.

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