ViewerConfig

گزینه‌های ویجت نمایشگر سمت کاربر

ViewerConfig (فضای‌نام Doconut) ظاهر و رفتار نمایشگر مرورگر را توصیف می‌کند. این تنظیم بر کیفیت رندر سند تأثیری ندارد؛ برای آن از یک پیکربندی فرمت استفاده کنید. کلاس C# و افزونهٔ قدیمی JavaScript مقادیر پیش‌فرض متفاوتی دارند، بنابراین مقادیر را به‌صورت صریح نگاشت کنید.

خصوصیات C#

نوعویژگیپیش‌فرضتوضیح
boolShowThumbstrueنمایش پنل تصویرهای کوچک.
boolAutoLoadfalseبه‌صورت خودکار پس از مقداردهی اولیه بارگذاری می‌شود. جریان توکن معمولاً View(token) را به‌صورت صریح فراخوانی می‌کند.
boolAutoFocustrueدر طول مقداردهی اولیه، تمرکز/اسکرول مرورگر به نمایشگر منتقل می‌شود.
boolAutoPageFocustrueدر حین تغییر صفحات، تصویر کوچک فعلی قابل مشاهده باقی می‌ماند.
intPageZoom100درصد بزرگنمایی اولیه.
intZoomStep10درصدی که توسط دستورات بزرگنمایی افزوده یا حذف می‌شود.
intMaxZoom300حداکثر درصد بزرگنمایی.
boolShowToolTiptrueدر حین اسکرول، ابزارک موقعیت صفحه نمایش داده می‌شود.
stringToolTipPageText"Page "پیشوند مورد استفاده در ابزارک صفحه.
boolCacheEnabledfalseیک پنجرهٔ متحرک از تصاویر صفحه‌ها را در حافظه مرورگر نگه می‌دارد. از localStorage استفاده نمی‌کند.
boolLargeDocfalseعناصر صفحه را به‌صورت دسته‌های زمان‌بندی‌شده برای اسناد بزرگ اضافه می‌کند.
boolShowHyperlinksfalseپوشش‌های ابرلینک را زمانی که پیکربندی سرور آن‌ها را استخراج کرده است، رندر می‌کند.
boolFixedZoomtrueبه‌جای محاسبهٔ واکنش‌گرا، از درصد بزرگنمایی ثابت استفاده می‌کند.
intFixedZoomPercent100بزرگنمایی ثابت برای دسکتاپ.
intFixedZoomPercentMobile75بزرگنمایی ثابت برای موبایل.
stringBasePath"/"شاخه‌ای که میزبان UseDoconut() را به آن نگاشت می‌کند.
stringResPath"doconut-res"پایهٔ منبعی که توسط ویجت استفاده می‌شود. در تنظیمات معمول به <ResourcesPath>/images اشاره کنید.
stringFitType"width"\"width\"، \"height\" یا خالی برای عدم تناسب خودکار. \"page\" توسط ویجت فعلی پذیرفته نمی‌شود.
boolRetryOn409falseدر زمانیکه درخواست صفحهٔ ناهمزمان/پراکندگی با کد 409 پاسخ می‌دهد، نظرسنجی فعال می‌شود. برای نمایشگر همزمان معمولی لازم نیست.
csharp
var config = new ViewerConfig
{
    ShowThumbs = true,
    AutoLoad = false,
    PageZoom = 100,
    MaxZoom = 300,
    FitType = "width",
    BasePath = "/doconut",
    ResPath = "/doconut-res/images",
    ShowHyperlinks = true
};

نگاشت C# به JavaScript

از پاس دادن یک شیء ViewerConfig به‌صورت مستقیم به docViewer(...) خودداری کنید. اکثر کلیدهای ویجت به صورت camelCase هستند، در حالی که سه کلید مسیر/تناسب به صورت PascalCase تعریف شده‌اند.

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

پیش‌فرض‌های JavaScript

این ویجت پیش‌فرض‌های قدیمی‌تری دارد که با کلاس C# متفاوت هستند. مقادیر زیر از پیاده‌سازی فعلی docViewer.js استخراج شده‌اند.

گزینهپیش‌فرضیادداشت‌ها
leftMinWidth / leftMaxWidth220 / 800حدود عرض پنل تصویرهای کوچک.
showThumbstrueقابلیت مشاهده اولیهٔ تصویرهای کوچک.
autoFocus / autoPageFocustrue / falseautoPageFocus متفاوت از پیش‌فرض C#.
thumbWidth / thumbHeight / thumbPadding150 / 200 / 10هندسهٔ تصویرهای کوچک بر حسب پیکسل.
pageZoom / zoomStep / maxZoom100 / 10 / 200maxZoom در JavaScript متفاوت از C# (300) است.
showToolTip / toolTipPageTexttrue / "Page "ابزارک موقعیت صفحه.
format / doc / AccessToken"" / 0 / ""مقادیر داخلی مقداردهی؛ به‌طور معمول توسط View(token) پر می‌شوند.
debugModefalseتشخیص‌های اضافی سمت کاربر.
FitType""بدون تناسب خودکار مگر اینکه ارائه شود.
BasePath"DocImage.axd"پیش‌فرض هندلر قدیمی. برای ASP.NET Core به‌صورت صریح تنظیم کنید.
ResPath""به‌صورت صریح به مسیر تصاویر جاسازی‌شده تنظیم کنید.
cacheEnabled / cacheCount / cacheDelayfalse / 3 / 3پنجرهٔ پیش‌بارگذاری صفحات در حافظه و تاخیر.
autoLoadfalseجریان توکن صریح توصیه می‌شود.
largeDoctrueمتفاوت از پیش‌فرض C#.
fixedZoomfalseمتفاوت از پیش‌فرض C#.
fixedZoomPercent / fixedZoomPercentMobile100 / 50مقدار موبایل متفاوت از C# (75) است.
showHyperlinkstrueبرای تولید پوشش‌ها نیاز به استخراج سمت سرور دارد.

تمام مقادیر مهم رفتاری را به‌صورت صریح تنظیم کنید و به‌جای تکیه بر پیش‌فرض‌های هر دو مجموعه، مقادیر دلخواه خود را مشخص کنید:

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>

بازگشت‌ها

بازگشتآرگومان‌هاهدف
onPageLoadingpageNumدرخواست یک صفحه در حال شروع است.
onPageLoadedpageNumبارگذاری تصویر صفحه تکمیل شد.
onThumbnailClickedpageNumکاربر یک تصویر کوچک را انتخاب کرد.
onPageClickedpageNumکاربر یک صفحه را انتخاب کرد.
onDoubleClicknoneنمایشگر یک دوبار کلیک دریافت کرد.
onViewerBusynoneنمایشگر به حالت مشغول رفت.
onViewerReadynoneمقداردهی اولیه تکمیل شد.
onViewerErrornoneنمایشگر به حالت خطا رفت.
onErrormessageیک عملیات پیام خطا برگرداند.
onCopydataدادهٔ کپی متن در دسترس است.
onAutoLoadStatuspageNumبارگذاری خودکار به صفحه‌ای پیشرفت کرد.
onThumbsShownnoneپنل تصویرهای کوچک قابل مشاهده شد.
onAnnLoadednoneداده‌های حاشیه‌نویسی بارگذاری شد.
onAnnSavednoneداده‌های حاشیه‌نویسی ذخیره شد.
onAnnSaveErrornoneذخیره‌سازی حاشیه‌نویسی ناموفق بود.
onAnnClosednoneرابط کاربری حاشیه‌نویسی بسته شد.

بازگشت‌ها را سریع نگه دارید؛ تله‌متری را به‌صورت ناهمزمان ارسال کنید و از مسدود کردن رندر صفحه خودداری کنید.

گروه‌های متدهای عمومی

گروهمتدهای عمومی
دورهٔ حیات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 نظرسنجی می‌کند:

گزینهپیش‌فرض
retryInitialDelayMs250
retryBackoffFactor1.6
retryMaxDelayMs2500
retryMaxAttempts60
retryMaxTotalMs120000

برای نمایشگر معمولی آن را غیرفعال بگذارید. فعال‌سازی آن نمی‌تواند رندر همزمانی که پشتیبانی نمی‌شود را به‌صورت ناهمزمان تبدیل کند.

چک‌لیست مسیر

  • DoconutOptions.MiddlewarePath باید شاخه‌ای که واقعاً نگاشت می‌کنید را توصیف کند.
  • BasePath باید به آن شاخه هدف بگیرد.
  • DoconutOptions.ResourcesPath مسیر منبع جاسازی‌شده است.
  • ResPath به‌طور معمول زیرپوشهٔ /images آن را هدف می‌گیرد.
  • ExtractHyperlinks باید در پیکربندی فرمت سرور فعال شود تا showHyperlinks بتواند چیزی نمایش دهد.

آیا این صفحه مفید بود؟