ViewerConfig
אפשרויות וידג'ט תצוגת לקוח
ViewerConfig (namespace Doconut) מתאר את המראה וההתנהגות של מציג הדפדפן. הוא אינו משפיע על איכות הרינדור של המסמך; השתמש בתצורת פורמט עבור זאת. למחלקת C# ולווידג'ט הוותיק של JavaScript יש ברירות מחדל שונות, ולכן יש למפות ערכים במפורש.
מאפייני C#
| סוג | מאפיין | ברירת מחדל | תיאור |
|---|---|---|---|
bool | ShowThumbs | true | הצגת לוח התמונות הממוזערות. |
bool | AutoLoad | false | טעינה אוטומטית לאחר האתחול. זרימת הטוקן הרגילה קוראת ל-View(token) במפורש. |
bool | AutoFocus | true | הזזת הפוקוס/גלילת הדפדפן אל המציג במהלך האתחול. |
bool | AutoPageFocus | true | שמירת התמונה הממוזערת הנוכחית גלויה בזמן שינוי דפים. |
int | PageZoom | 100 | אחוז זום ראשוני. |
int | ZoomStep | 10 | אחוז שנוסף או מוסר על ידי פקודות זום. |
int | MaxZoom | 300 | אחוז זום מרבי. |
bool | ShowToolTip | true | הצגת תיבת רמז למיקום העמוד בזמן גלילה. |
string | ToolTipPageText | "Page " | קידומת המשמשת בתיבת הרמז של העמוד. |
bool | CacheEnabled | false | שמירת חלון נע של תמונות דפים בזיכרון הדפדפן. אינו משתמש ב-localStorage. |
bool | LargeDoc | false | הוספת אלמנטים של דפים במנות מתוזמנות עבור מסמכים גדולים. |
bool | ShowHyperlinks | false | הצגת שכבות קישורים כאשר תצורת השרת חילצה אותן. |
bool | FixedZoom | true | שימוש באחוז זום קבוע במקום חישוב רספונסיבי. |
int | FixedZoomPercent | 100 | זום קבוע למחשב שולחני. |
int | FixedZoomPercentMobile | 75 | זום קבוע למכשיר נייד. |
string | BasePath | "/" | הענף שבו המארח ממפה UseDoconut(). |
string | ResPath | "doconut-res" | בסיס המשאבים שבו משתמש הווידג'ט. בהגדרה רגילה הפנה אותו ל-<ResourcesPath>/images. |
string | FitType | "width" | "width", "height", או ריק עבור ללא התאמה אוטומטית. "page" אינו מתקבל על ידי הווידג'ט הנוכחי. |
bool | RetryOn409 | false | הפעלת פולינג כאשר ייצור דפים אסינכרוני/מבוזר מחזיר 202 Accepted; 409 גם הוא מתקבל לתאימות עם שרתים ישנים יותר. אינו נדרש במציג הסינכרוני הרגיל. |
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 |
|---|---|
ShowThumbs | showThumbs |
AutoLoad | autoLoad |
AutoFocus | autoFocus |
AutoPageFocus | autoPageFocus |
PageZoom | pageZoom |
ZoomStep | zoomStep |
MaxZoom | maxZoom |
ShowToolTip | showToolTip |
ToolTipPageText | toolTipPageText |
CacheEnabled | cacheEnabled |
LargeDoc | largeDoc |
ShowHyperlinks | showHyperlinks |
FixedZoom | fixedZoom |
FixedZoomPercent | fixedZoomPercent |
FixedZoomPercentMobile | fixedZoomPercentMobile |
BasePath | BasePath |
ResPath | ResPath |
FitType | FitType |
RetryOn409 | retryOn409 |
ברירות מחדל של JavaScript
לוווידג'ט יש ברירות מחדל ישנות השונות מהמחלקה ב‑C#. הערכים הבאים נלקחים מיישום ה‑docViewer.js הנוכחי.
| אפשרות | ברירת מחדל | הערות |
|---|---|---|
leftMinWidth / leftMaxWidth | 220 / 800 | גבולות רוחב לוח התמונות הממוזערות. |
showThumbs | true | נראות ראשונית של התמונות הממוזערות. |
autoFocus / autoPageFocus | true / false | autoPageFocus שונה מברירת המחדל של C#. |
thumbWidth / thumbHeight / thumbPadding | 150 / 200 / 10 | גאומטריית תמונות ממוזערות בפיקסלים. |
pageZoom / zoomStep / maxZoom | 100 / 10 / 200 | maxZoom של JavaScript שונה מ‑C# (300). |
showToolTip / toolTipPageText | true / "Page " | תיבת רמז למיקום העמוד. |
format / doc / AccessToken | "" / 0 / "" | ערכי אתחול פנימיים; בדרך כלל ממולאים על ידי View(token). |
debugMode | false | אבחון לקוח נוסף. |
FitType | "" | אין התאמה אוטומטית אלא אם כן מסופק. |
BasePath | "DocImage.axd" | ברירת מחדל היסטורית של לקוח שנשמרה לתאימות. מארחי ASP.NET Core נוכחיים חייבים להגדיר זאת במפורש לענף המידלוור הממופה. |
ResPath | "" | הגדרה מפורשת לנתיב התמונות המוטמעים. |
cacheEnabled / cacheCount / cacheDelay | false / 3 / 3 | חלון טעינה מראש של דפים בזיכרון ועיכוב. |
autoLoad | false | מומלץ להשתמש בזרימת טוקן מפורשת. |
largeDoc | true | שונה מברירת המחדל של C#. |
fixedZoom | false | שונה מברירת המחדל של C#. |
fixedZoomPercent / fixedZoomPercentMobile | 100 / 50 | ערך נייד שונה מ‑C# (75). |
showHyperlinks | true | דורש חילוץ בצד השרת ליצירת שכבות. |
הגדירו את כל הערכים החשובים להתנהגות במקום להסתמך על אחת משתי ברירות המחדל:
<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>קריאות חזרה
| קריאה חוזרת | ארגומנטים | מטרה |
|---|---|---|
onPageLoading | pageNum | בקשת דף מתחילה. |
onPageLoaded | pageNum | תמונת דף הסתיימה בטעינה. |
onThumbnailClicked | pageNum | המשתמש בחר בתמונה ממוזערת. |
onPageClicked | pageNum | המשתמש בחר בדף. |
onDoubleClick | none | המציג קיבל לחיצה כפולה. |
onViewerBusy | none | המציג נכנס למצב עסוק. |
onViewerReady | none | האתחול הושלם. |
onViewerError | none | המציג נכנס למצב שגיאה. |
onError | message | פעולה החזירה הודעת שגיאה. |
onCopy | data | נתוני העתקת טקסט זמינים. |
onAutoLoadStatus | pageNum | טעינה אוטומטית התקדמה לדף. |
onThumbsShown | none | לוח התמונות הממוזערות הפך גלוי. |
onAnnLoaded | none | נתוני ההערות נטענו. |
onAnnSaved | none | נתוני ההערות נשמרו. |
onAnnSaveError | none | שמירת ההערות נכשלה. |
onAnnClosed | none | ממשק ההערות נסגר. |
שמרו על קריאות החזרה מהירות; שלחו טלמטריה באופן אסינכרוני ואל תחסמו את רינדור העמוד.
קבוצות שיטות ציבוריות
| קבוצה | שיטות משותפות |
|---|---|
| מחזור חיים | 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 מכיל גם עוזרים פנימיים. יש להתייחס רק לשיטות המשמשות בממשק המשתמש הרפרנסי ומתועדות כאן או במדריכי הפיצ'רים כנקודות אינטגרציה יציבות.
ניסיון חוזר כאשר דף מבוזר עדיין בתהליך רינדור
retryOn409 שומר על שמו ההיסטורי. הוא מיועד לייצור דפים אסינכרוני ומבצע ניסיונות חוזרים על תגובת המוכנות 202 Accepted וכן על האות 409 Conflict הישנה. כאשר הוא מופעל, הווידג'ט מבצע פולינג עם ברירות המחדל של JavaScript הבאות:
| אפשרות | ברירת מחדל |
|---|---|
retryInitialDelayMs | 250 |
retryBackoffFactor | 1.6 |
retryMaxDelayMs | 2500 |
retryMaxAttempts | 60 |
retryMaxTotalMs | 120000 |
השאירו אותו מושבת עבור המציג הרגיל. הפעלתו לא תוכל להפוך רינדור סינכרוני שאינו נתמך לאסינכרוני.
רשימת בדיקת נתיבים
DoconutOptions.MiddlewarePathחייב לתאר את הענף שאתה למעשה ממפה.BasePathחייב לכוון לאותו ענף.DoconutOptions.ResourcesPathהוא נתיב המשאבים המוטמעים.ResPathבדרך כלל מכוון לתת‑תיקייה/imagesשלו.ExtractHyperlinksחייב להיות מופעל בתצורת פורמט השרת לפני ש‑showHyperlinksיכול להציג משהו.
האם דף זה היה מועיל?