ViewerConfig

گزینه‌های ویجت مشاهده‌گر مشتری

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

ویژگی‌های C#

نوعویژگیپیش‌فرضتوضیح
boolShowThumbstrueپنل تصویر بندانگشتی را نشان می‌دهد.
boolAutoLoadfalseبه‌صورت خودکار پس از مقداردهی اولیه بارگذاری می‌شود. جریان توکن معمولی به‌طور صریح View(token) را فراخوانی می‌کند.
boolAutoFocustrueدر طول مقداردهی اولیه تمرکز/اسکرول مرورگر را به مشاهده‌گر منتقل می‌کند.
boolAutoPageFocustrueدر حین تغییر صفحات، تصویر بندانگشتی فعلی را قابل مشاهده نگه می‌دارد.
intPageZoom100درصد زوم اولیه.
intZoomStep10درصدی که توسط دستورات زوم افزوده یا حذف می‌شود.
intMaxZoom300حداکثر درصد زوم.
boolShowToolTiptrueدر حین اسکرول، راهنمای موقعیت صفحه را نشان می‌دهد.
stringToolTipPageText"Page "پیشوند مورد استفاده در راهنمای صفحه.
boolCacheEnabledfalseیک پنجره متحرک از تصاویر صفحه را در حافظه مرورگر نگه می‌دارد. از localStorage استفاده نمی‌کند.
boolLargeDocfalseعناصر صفحه را به‌صورت دسته‌های زمان‌دار برای اسناد بزرگ اضافه می‌کند.
boolShowHyperlinksfalseپوشش‌های پیوندهای فرامتن را زمانی که پیکربندی سرور آن‌ها را استخراج کرده است، رندر می‌کند.
boolFixedZoomtrueبه‌جای محاسبهٔ واکنش‌گرا، از درصد زوم ثابت استفاده می‌کند.
intFixedZoomPercent100زوم ثابت دسکتاپ.
intFixedZoomPercentMobile75زوم ثابت موبایل.
stringBasePath"/"محل ارسال درخواست‌های صفحه توسط مشاهده‌گر. "/" در ریشهٔ سایت DocImage.axd است؛ در غیر این صورت شاخه‌ای که میزبان UseDoconut() را نگاشت می‌کند، بدون پیشوند / ("doconut" به معنای /doconut/DocImage.axd است).
stringResPath"doconut-res/images" (26.9.0; "doconut-res" before)پوشه‌ای که ویجت تصاویر خود را از آن بارگذاری می‌کند: پوشهٔ images زیر ResourcesPath، بدون پیشوند /.
stringFitType"width""width"، "height"، یا خالی برای عدم تناسب خودکار. "page" توسط ویجت فعلی پذیرفته نمی‌شود.
boolRetryOn409falseهنگامی که درخواست صفحهٔ ناهمزمان/توزیعی به 409 پاسخ می‌دهد، نظرسنجی فعال می‌شود. برای مشاهده‌گر همزمان معمولی لازم نیست.
csharp
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# به جاوااسکریپت

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

C#جاوااسکریپت
ShowThumbsshowThumbs
AutoLoadautoLoad
AutoFocusautoFocus
AutoPageFocusautoPageFocus
PageZoompageZoom
ZoomStepzoomStep
MaxZoommaxZoom
ShowToolTipshowToolTip
ToolTipPageTexttoolTipPageText
CacheEnabledcacheEnabled
LargeDoclargeDoc
ShowHyperlinksshowHyperlinks
FixedZoomfixedZoom
FixedZoomPercentfixedZoomPercent
FixedZoomPercentMobilefixedZoomPercentMobile
BasePathBasePath
ResPathResPath
FitTypeFitType
RetryOn409retryOn409

پیش‌فرض‌های جاوااسکریپت

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

گزینهپیش‌فرضیادداشت‌ها
leftMinWidth / leftMaxWidth220 / 800حدود عرض پنل تصویر بندانگشتی.
showThumbstrueقابلیت مشاهده اولیهٔ تصویر بندانگشتی.
autoFocus / autoPageFocustrue / falseautoPageFocus با پیش‌فرض C# متفاوت است.
thumbWidth / thumbHeight / thumbPadding150 / 200 / 10هندسهٔ تصویر بندانگشتی بر حسب پیکسل.
pageZoom / zoomStep / maxZoom100 / 10 / 200JavaScript maxZoom با 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 باید به آن شاخه هدف بگیرد، بدون پیشوند / نوشته شود (مثلاً 'doconut'، نه '/doconut': نمایشگر اسلش را اضافه می‌کند، و //doconut/... یک درخواست به میزبان دیگر است).
  • DoconutOptions.ResourcesPath مسیر منبع جاسازی‌شده است.
  • ResPath معمولاً زیرپوشه images خود را هدف می‌گیرد، همچنین بدون پیشوند / (مثلاً 'doconut-res/images').
  • ExtractHyperlinks باید در پیکربندی فرمت سرور فعال شود تا showHyperlinks بتواند چیزی نمایش دهد.

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