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فعال‌سازی نظرسنجی وقتی تولید صفحهٔ ناهمزمان/توزیعی به 202 Accepted پاسخ می‌دهد؛ 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)

فایل جاوااسکریپت همچنین شامل کمک‌کننده‌های داخلی است. فقط متدهایی که توسط رابط کاربری مرجع استفاده می‌شوند و در اینجا یا در راهنمای ویژگی‌ها مستند شده‌اند را به‌عنوان نقاط یکپارچه‌سازی پایدار در نظر بگیرید.

تلاش مجدد در حالی که صفحه توزیع‌شده هنوز در حال رندر است

retryOn409 نام تاریخی خود را حفظ می‌کند. این برای تولید صفحهٔ ناهمزمان است و پاسخ آمادگی 202 Accepted فعلی را همانند سیگنال قدیمی 409 Conflict دوباره تلاش می‌کند. هنگامی که فعال شود، ویجت با این پیش‌فرض‌های جاوااسکریپت نظرسنجی می‌کند:

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

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

فهرست بررسی مسیر

  • DoconutOptions.MiddlewarePath باید شاخه‌ای که واقعاً نقشه می‌گیرید را توصیف کند.
  • BasePath باید به آن شاخه هدف بگیرد، بدون پیشوند / نوشته شود ('doconut'، نه '/doconut': نمایشگر اسلش را اضافه می‌کند، و //doconut/... یک درخواست به میزبان دیگر است).
  • DoconutOptions.ResourcesPath مسیر منبع جاسازی‌شده است.
  • ResPath معمولاً زیرپوشهٔ images خود را هدف می‌گیرد، همچنین بدون پیشوند / ('doconut-res/images').
  • ExtractHyperlinks باید در تنظیمات قالب سرور فعال شود تا قبل از اینکه showHyperlinks بتواند چیزی نمایش دهد.

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