תצורות פורמט
אפשרויות רינדור מלאות לכל פורמט
כל מסמך נפתח עם מימוש של BaseConfig. ניתן להעביר אחד ל‑OpenDocumentAsync או לאפשר לקטלוג הפורמט ליצור את ברירת המחדל שלו. כל המחלקות שלהלן נמצאות במרחב השמות Doconut.
var token = await viewer.OpenDocumentAsync(path, new PdfConfig
{
AllowSearch = true,
AllowCopy = true,
ImageResolution = 150
});ירושה והגדרות PDF מקוננות
כל פורמט יורש את חמשת המאפיינים של BaseConfig. פורמטים שיכולים להפנות דרך PDF מציגים PdfConfig מקונן. ב‑WordConfig, ExcelConfig ו‑PptConfig, AllowSearch ו‑AllowCopy הם מאפיינים נוחות שקוראים וכותבים את PdfConfig המקונן.
DefaultRender = true בוחר במעבד הפורמט המקורי. בפורמטים עם הפנייה ל‑PDF, false ממיר תחילה ל‑PDF בזיכרון ולאחר מכן משתמש בתצוגת ה‑PDF. נתיב זה שימושי לעיתים לחיפוש בטקסט לפי קואורדינטות, אך מוסיף המרה נוספת.
אלא אם צוין במפורש, הטבלאות מציגות ערכי ברירת המחדל של הבונים/מאפיינים. הקטלוג האוטומטי של הפורמט במודע מעדכן שניים מהם: הוא יוצר ExcelConfig עם SplitWorksheets = true, ו‑MhtConfig עם DefaultRender = false.
BaseConfig
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
int | ImageResolution | 0 | 0 משתמש בברירת המחדל של הפורמט. טווח מפורש תקף הוא 25‑300 DPI; הקצאות בלתי חוקיות מתעלמות. |
string | DocumentCulture | "" | אזור לשפה של תאריכים ומספרים. ערכים שאינם ריקים נחתכים; הקצאות ריקות מתעלמות. |
string | Password | "" | סיסמת המסמך המוגן. DocOptions.Password מועתק כאן אוטומטית. |
bool | ShowUI | true | מאפיין תאימות; המעבד הנוכחי אינו משתמש בו לשליטה על סרגל הכלים של הדפדפן. |
bool | CachePages | true | מאגר תמונות דפים שעובדו עבור סשן המסמך. |
PdfConfig
פורמטים: PDF. DPI ברירת מחדל: 200.
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
bool | DefaultRender | true | מתג תאימות. המפעל הנוכחי משתמש בתצוגת PDF המקורית. |
bool | AllowSearch | false | בונה/משתמש באינדקס חיפוש הטקסט של PDF. דורש רישיון Search לבקשות. |
bool | AllowCopy | false | מאפשר פעולות בחירת/העתקת טקסט. |
bool | ExtractHyperlinks | false | מחלץ ריבועים של קישורים לשכבות לקוח. |
int | HyperlinksPageCount | 0 | מספר העמודים המרביים לסריקה עבור קישורים; 0 משמעותו כל העמודים. |
bool | CompressImages | false | מכווץ תמונות משובצות לפני הרינדור. |
int | CompressQuality | 100 | איכות JPEG המשמשת כאשר דחיסה מופעלת. |
bool | ResizeImages | false | משנה גודל של תמונות משובצות לפני הרינדור. |
int | ResizeResolution | 300 | DPI יעד לתמונות משוכתבות. |
bool | CompressFast | false | מעדיף נתיב דחיסה מהיר, באיכות נמוכה יותר. |
bool | FixInvalidImages | false | מנסה לתקן תמונות משובצות שגויות. |
bool | SplitSegments | false | מאחד מילים שנפצלות על פני מקטעי שורה לשיפור חיפוש/העתקה. |
showHyperlinks ב‑ViewerConfig שולט על שכבת הלקוח, בעוד ExtractHyperlinks שולט על חילוץ השרת. אפשר להפעיל את שניהם.
WordConfig
פורמטים: DOC, DOCX, DOCM, DOT, DOTX, DOTM, RTF, ODT, OTT, XML. DPI ברירת מחדל: 200.
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
bool | DefaultRender | true | רינדור Word מקורי; false משתמש בהפנייה ל‑PDF. |
PdfConfig | PdfConfig | מופע חדש | הגדרות המשמשות בנתיב PDF/חיפוש. |
DocPaperSize | PaperSize | A4 | גודל נייר פלט. השתמש ב‑Custom עם רוחב/גובה. |
int | PaperWidth | 595 | רוחב מותאם אישית בנקודות. |
int | PaperHeight | 841 | גובה מותאם אישית בנקודות. |
bool | RemovePaperMargin | false | מסיר את שוליי העמוד של המסמך. |
bool | RenderPageColor | true | משמר את צבע העמוד המוגדר ב‑Word; false מציג עמודים לבנים. |
bool | ExportPdfA | false | משתמש ב‑PDF/A בארכיון בנתיב PDF. |
Encoding? | FileEncoding | null | מעקף קידוד המקור. |
string | FontInfo | "" | מידע על החלפת גופנים. |
string[]? | FontFolders | null | תיקיות גופנים נוספות, שימושי במיוחד בלינוקס/קונטיינרים. |
bool | AllowSearch | false | מפנה ל‑PdfConfig.AllowSearch. |
bool | AllowCopy | false | מפנה ל‑PdfConfig.AllowCopy. |
TableAutoFitBehavior | AutoFitAllTables | None | None, AutoFitToContents, או AutoFitToWindow. |
ExcelConfig
פורמטים: XLS, XLSX, XLSM, XLSB, XLTX, XLTM, ODS, CSV. DPI ברירת מחדל: 200.
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
bool | DefaultRender | true | רינדור גיליון מקורי; false משתמש בהפנייה ל‑PDF. |
PdfConfig | PdfConfig | מופע חדש | הגדרות לנתיב PDF/חיפוש. |
ExcelPaperSize | PaperSize | PaperA4 | גודל נייר פלט. |
double | PaperMargins | 0.25 | שוליי עמוד באינצ'ים. |
bool | PaperLandscape | true | רינדור גיליון במצב אופקי. |
bool | AutoFitContents | false | התאמת גובה שורות ורוחב עמודות אוטומטית. |
bool | RemoveEmptyContent | true | מצמצם פלט על‑ידי הוצאת תוכן ריק. |
bool | CalculateFormula | true | מחשב מחדש נוסחאות לפני הרינדור. |
bool | ShowRowColumnHeaders | true | כולל כותרות שורות ועמודות. |
bool | ExportPdfA | false | משתמש ב‑PDF/A בנתיב PDF. |
bool | SplitWorksheets | false | משאיר גיליונות כקבוצות עמוד נפרדות. |
bool | ShowEmptyWorkSheets | false | כולל גיליונות ריקים. |
bool | ExportLandscape | false | מכפה ייצוא אופקי. |
bool | ExportOnePagePerSheet | false | מתאים כל גיליון לעמוד פלט אחד. |
bool | MemoryOptimizationPreference | true | מצמצם זיכרון קצה, ייתכן במחיר של מהירות. |
bool | AutoTrimWorksheetRenderRange | true | מרנדר רק את הטווח המשמש כאשר אין אזור הדפסה מפורש. |
bool | AutoTrimPreserveExistingPrintArea | true | משמר אזורי הדפסה שהוגדרו במחברת במהלך קיצוץ אוטומטי. |
string? | PrintArea | null | טווח מפורש כגון "A1:Z100". |
bool | PrintGridlines | false | מדפיס קווי רשת של הגיליון. |
bool | PrintHeadings | false | מדפיס כותרות שורה/עמודה. |
List<string> | SheetNames | empty | מגביל רינדור לגיליונות בעלי שם. |
CustomStyleCell? | CustomStyles | null | דריסות פורמט אופציונליות לתאריכים/מספרים/שלמים. |
bool | AllowSearch | false | מפנה ל‑PdfConfig.AllowSearch. |
bool | AllowCopy | false | מפנה ל‑PdfConfig.AllowCopy. |
CustomStyleCell חושף CustomStyleDateTime, CustomStyleNumberDecimal, ו‑CustomStyleNumberInteger, כולם מחרוזות ניתנות לאפס.
new ExcelConfig() מגדיר SplitWorksheets ל‑false; פתיחת קובץ Excel ללא קונפיגורציה מפורשת משתמשת בקטלוג הפורמט, שמגדיר זאת ל‑true.
PptConfig
פורמטים: PPT, PPTX, PPTM, PPSX, PPSM, POT, POTX, POTM, ODP. DPI ברירת מחדל: 200.
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
bool | DefaultRender | true | רינדור שקופיות מקורי; false משתמש בהפנייה ל‑PDF. |
bool | FastLoad | false | נמנע מרינדור השקופית הראשונה בזמן פתיחה; משתמש במטא‑דטה ורינדור לפי דרישה. |
PdfConfig | PdfConfig | מופע חדש | הגדרות ל‑PDF/התנהגות חיפוש. |
string | FontInfo | "" | מידע על החלפת גופנים. |
string[]? | FontFolders | null | תיקיות גופנים נוספות. |
bool | AllowSearch | false | מפנה ל‑PdfConfig.AllowSearch. |
bool | AllowCopy | false | מפנה ל‑PdfConfig.AllowCopy. |
ב‑Linux וב‑macOS, רינדור מצגות עם המנוע הנוכחי דורש libgdiplus ו‑System.Drawing.EnableUnixSupport=true. יש להתקין את הגופנים המשמשים במצגת או לספק FontFolders.
CadConfig
פורמטים: DWG, DXF, DGN. DPI ברירת מחדל: 200.
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
bool | DefaultRender | true | רינדור CAD מקורי; false משתמש בהפנייה ל‑PDF. |
PdfConfig | PdfConfig | מופע חדש | הגדרות נתיב PDF. |
bool | ExportPdfA | false | פלט PDF/A ארכיוני. |
bool | ShowColor | true | צבע במקום שחור‑לבן. |
bool | WhiteBackground | true | רקע לבן במקום שחור. |
short | LineWidth | 25 | עובי קו CAD. |
bool | ShowLayouts | false | מציג כרטיסיות פריסות. |
bool | ShowModel | true | מציג מרחב מודל. |
bool | Check3DSolid | true | מעבד מוצקים תלת‑ממדיים. |
bool | ExportAllLayouts | false | מייצא את כל הפריסות, מתעלם מבחירת מודל/פריסה. |
bool | LimitMinimumSize | false | מיישם MinimumSize. |
int | MinimumSize | 700 | גודל פלט מינימלי בפיקסלים. |
bool | LimitMaximumSize | false | מיישם MaximumSize. |
int | MaximumSize | 700 | גודל פלט מרבי בפיקסלים. |
bool | ShowAllLayoutsDgn | false | כולל את כל פריסות DGN. |
bool | AutomaticLayoutScaling | true | קנה מידה אוטומטי של פריסות. |
float | PdfMargins | 0.5 | מרווח PDF באינצ'ים. |
RenderQuality | QualityImage | Low | איכות רסטר: Low, Medium, או High. |
RenderQuality | QualityText | Medium | איכות טקסט: Low, Medium, או High. |
EmailConfig
פורמטים: EML, EMLX, MSG. DPI ברירת מחדל: 200.
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
bool | DefaultRender | true | רינדור אימייל מקורי; false משתמש בהפנייה ל‑PDF. |
PdfConfig | PdfConfig | מופע חדש | הגדרות נתיב PDF. |
Encoding? | EmailEncoding | null | מעקף קידוד הודעה. |
Encoding? | SubjectEncoding | null | מעקף קידוד נושא. |
Encoding? | BodyEncoding | null | מעקף קידוד גוף. |
bool | SkipExternalImages | false | לא טוען תמונות שמקושרות מרחוק. מומלץ לאימיילים לא מהימנים. |
bool | RemoveLastWhitePage | false | מסיר דף לבן סופי. |
bool | UseAntiAliasing | false | מפעיל אנטי‑אליאסינג. |
bool | UseHighQualityRendering | false | מעדיף רינדור נקי, איטי יותר. |
TimeSpan? | TimeZoneOffset | null | מעקף אזור הזמן המשמש לתאריכים. |
bool | ForcePageSize | false | מכפה ממדי עמוד קבועים. |
ImageConfig, TiffConfig, and PsdConfig
ImageConfig מכסה JPG, JPEG, JPE, PNG, BMP, GIF, ICO, EPS, TGA, WEBP, CDR, CMX, DNG, EMF, WMF, AVIF, ו‑SVG. DPI ברירת המחדל שלו הוא 100.
| תצורה | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
ImageConfig | MaxImagePixelSize | 3000 | רוחב/גובה מרבי. 0 משמעותו ללא הגבלה; ערכים שונים מ‑0 מתחת ל‑50 מתעלמים. |
ImageConfig | TransparentPng | true | משמר שקיפות PNG; false משתמש ברקע לבן. |
TiffConfig | no additional properties | DPI 200 | משתמש רק ב‑BaseConfig; תומך ב‑TIFF מרובה‑עמודים. |
PsdConfig | MaxImagePixelSize | 3000 | אותו אימות 0/מינימום‑50 כמו ב‑ImageConfig; DPI ברירת מחדל הוא 100. |
DicomConfig
פורמטים: DCM, IMA. DPI אפקטיבי ברירת מחדל: 100. דורש את תוסף DICOM.
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
int | HorizontalResolution | 100 effective | DPI אופקי מפורש; אחרת ImageResolution, ואז 100. |
int | VerticalResolution | 100 effective | DPI אנכי מפורש; אחרת ImageResolution, ואז 100. |
int | AnimationFrameDelayMs | 100 | השהיית מסגרת אנימציה מרובת‑פריימים; תזמון GIF משתמש ביחידות של 10 ms. |
ushort | LoopCount | 0 | 0 לולאה אינסופית; ערכים חיוביים עוצרים אחרי מספר זה. |
DicomDisplayMode | DisplayMode | AnimationAndFrames | AnimationOnly, FramesOnly, או תצוגה משולבת של אנימציה + פריימים סטטיים. |
TxtConfig
פורמט: TXT. DPI ברירת מחדל: 200.
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
DocPaperSize | PaperSize | A4 | גודל נייר פלט. |
Encoding? | FileEncoding | null | null משתמש ב‑UTF‑8. |
string | FontInformation | "" | מידע על גופנים לרינדור טקסט. |
השתמש ב‑WordConfig כאשר טקסט פשוט דורש התנהגות פריסת עמודים עשירה יותר.
ProjectConfig
פורמטים: MPP, MPPX, MPX. DPI ברירת מחדל: 200.
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
bool | DefaultRender | true | תמונת Gantt מקומית; false משתמש בנתיב PDF מבוסס טקסט. |
PdfConfig | PdfConfig | מופע חדש | הגדרות נתיב PDF. |
bool | ExportPdfA | true | פלט PDF/A ארכיוני. |
MppPaperSize | PaperSize | Ledger | גודל נייר פלט לפרויקט. |
MppTimeScale | TimeScale | Months | Days או Months. |
MppFormat | PresentationFormat | GanttChart | GanttChart, TaskUsage, ResourceUsage, ResourceSheet, או TaskSheet. |
לחיפוש מדויק לפי קואורדינטות טקסט, השתמש ב‑DefaultRender = false.
VisioConfig
פורמטים: VSD, VSDX, VSS, VSSX, VST, VSTX, VDX, VSX, VSDM. DPI ברירת מחדל: 200.
| סוג | מאפיין | ברירת מחדל | התנהגות |
|---|---|---|---|
bool | DefaultRender | true | רינדור דיאגרמה מקורי; false משתמש בהפנייה ל‑PDF. |
PdfConfig | PdfConfig | מופע חדש | הגדרות נתיב PDF. |
bool | ExportPdfA | true | פלט PDF/A ארכיוני. |
HtmlConfig, EpubConfig, MhtConfig, and XpsConfig
הארבעה ברירת מחדל ל‑200 DPI ומציגים PdfConfig מקונן.
| תצורה | פורמטים | DefaultRender | מאפיינים/התנהגות נוספים |
|---|---|---|---|
HtmlConfig | HTML, HTM | true | רינדור מקורי; השתמש ב‑false לנתיב PDF מבוסס טקסט לחיפוש. |
EpubConfig | EPUB | true | רינדור מקורי; false משתמש ב‑PDF. |
MhtConfig | MHT, MHTML | true on the class; false in the automatic catalog | הפתיחה ללא קונפיגורציה משתמשת בהפנייה ל‑PDF הניתנת לחיפוש. מופע ברירת מחדל שנבנה במפורש מרנדר באופן מקורי. |
XpsConfig | XPS | false | משתמש בנתיב PDF כברירת מחדל; קבע true לרינדור תמונה מקורי. |
Configuration examples by family
BaseConfig[] configs =
{
new PdfConfig
{
AllowSearch = true,
ExtractHyperlinks = true,
HyperlinksPageCount = 0
},
new WordConfig
{
PaperSize = DocPaperSize.A4,
RemovePaperMargin = false,
FontFolders = new[] { "/usr/share/fonts/truetype" },
AllowSearch = true
},
new ExcelConfig
{
PaperLandscape = true,
AutoFitContents = true,
CalculateFormula = true,
SplitWorksheets = false,
PrintGridlines = false
},
new PptConfig
{
FastLoad = true,
FontFolders = new[] { "/usr/share/fonts/truetype" },
AllowSearch = true
},
new CadConfig
{
ShowColor = true,
WhiteBackground = true,
ShowModel = true,
ShowLayouts = false,
QualityText = CadConfig.RenderQuality.High
},
new EmailConfig
{
SkipExternalImages = true,
RemoveLastWhitePage = true,
TimeZoneOffset = TimeSpan.Zero
},
new ImageConfig
{
MaxImagePixelSize = 3000,
TransparentPng = true
},
new DicomConfig
{
DisplayMode = DicomDisplayMode.AnimationAndFrames,
AnimationFrameDelayMs = 100,
LoopCount = 0
}
};Per-extension selection
static BaseConfig? ConfigForExtension(string extUpper) => extUpper switch
{
".DOC" or ".DOCX" or ".DOT" or ".DOTX" or ".ODT" => new WordConfig
{
AutoFitAllTables = WordConfig.TableAutoFitBehavior.AutoFitToWindow,
PaperSize = DocPaperSize.Tabloid,
PdfConfig = new PdfConfig { ExtractHyperlinks = true, HyperlinksPageCount = 5, AllowCopy = true }
},
".PDF" => new PdfConfig { AllowSearch = true, AllowCopy = true },
".XLS" or ".XLSX" or ".ODS" or ".CSV" => new ExcelConfig { AllowSearch = true, AllowCopy = true },
".DCM" or ".IMA" => new DicomConfig { DisplayMode = DicomDisplayMode.AnimationAndFrames },
// DefaultRender = false → PDF redirect → pixel-accurate native text search
".HTML" or ".HTM" => new HtmlConfig { DefaultRender = false },
".EML" or ".EMLX" or ".MSG" => new EmailConfig { DefaultRender = false },
_ => null // fall back to the format's default config
};האם דף זה היה מועיל?