תצורות פורמט

אפשרויות רינדור מלאות לכל פורמט

כל מסמך נפתח עם מימוש של BaseConfig. ניתן להעביר אחד ל‑OpenDocumentAsync (או OpenDocument) או לאפשר לקטלוג הפורמט ליצור את ברירת המחדל שלו. כל המחלקות שלהלן נמצאות במרחב השמות Doconut.

csharp
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

סוגמאפייןברירת מחדלהתנהגות
intImageResolution00 משתמש בברירת המחדל של הפורמט. טווח תקף מפורש הוא 25‑300 DPI; הקצאות בלתי תקינות מתעלמים.
stringDocumentCulture""מיקום עבור תאריכים ומספרים. ערכים שאינם ריקים נחתכים; הקצאות ריקות מתעלמות.
stringPassword""סיסמת מסמך מוגן. DocOptions.Password מועתק כאן אוטומטית.
boolShowUItrueמאפיין תאימות; המעבד הנוכחי אינו משתמש בו לשליטה בסרגל הכלים של הדפדפן.
boolCachePagestrueמאגר תמונות דפים מעובדים עבור סשן המסמך.

PdfConfig

פורמטים: PDF. DPI ברירת מחדל: 200.

סוגמאפייןברירת מחדלהתנהגות
boolDefaultRendertrueמתג תאימות. המפעל הנוכחי משתמש במציג ה‑PDF הטבעי.
boolAllowSearchfalseבנייה/שימוש באינדקס חיפוש טקסט ב‑PDF. דורש את יכולת הרישיון Search לבקשות.
boolAllowCopyfalseמאפשר בחירת טקסט/העתקה.
boolExtractHyperlinksfalseמחלץ ריבועי קישורים עבור שכבות לקוח.
intHyperlinksPageCount0מספר מקסימלי של דפים שנסרקו עבור קישורים; 0 משמעותו כל הדפים.
boolCompressImagesfalseדוחס תמונות משובצות לפני העיבוד.
intCompressQuality100איכות JPEG המשמשת כאשר דחיסה מופעלת.
boolResizeImagesfalseשינוי גודל תמונות משובצות לפני העיבוד.
intResizeResolution300DPI יעד לתמונות משוכתבות.
boolCompressFastfalseמעדיף את נתיב הדחיסה המהיר, באיכות נמוכה יותר.
boolFixInvalidImagesfalseמנסה לתקן תמונות משובצות לא תקינות.
boolSplitSegmentsfalseמחבר מחדש מילים שנפצלות על פני מקטעי שורה כדי לשפר חיפוש/העתקה.

showHyperlinks ב‑ViewerConfig שולט בשכבת הלקוח, בעוד ExtractHyperlinks שולט בחילוץ בשרת. הפעל את שניהם.

WordConfig

פורמטים: DOC, DOCX, DOCM, DOT, DOTX, DOTM, RTF, ODT, OTT, XML. DPI ברירת מחדל: 200.

סוגמאפייןברירת מחדלהתנהגות
boolDefaultRendertrueעיבוד Word טבעי; false משתמש בהפנייה ל‑PDF.
PdfConfigPdfConfignew instanceהגדרות המשמשות את נתיב ה‑PDF/חיפוש.
DocPaperSizePaperSizeA4גודל נייר פלט. השתמש ב‑Custom עם רוחב/גובה.
intPaperWidth595רוחב מותאם אישית בנקודות.
intPaperHeight841גובה מותאם אישית בנקודות.
boolRemovePaperMarginfalseהסר מרווחי עמוד של המסמך.
boolRenderPageColortrueשומר על צבע העמוד המוגדר ב‑Word; false מציג דפים לבנים.
boolExportPdfAfalseהשתמש ב‑PDF/A ארכיוני בנתיב ה‑PDF.
Encoding?FileEncodingnullדרוס קידוד מקור.
stringFontInfo""מידע על החלפת גופנים.
string[]?FontFoldersnullספריות גופנים נוספות — שימושי בשרת שאין בו את הגופנים שהמסמכים משתמשים בהם.
boolAllowSearchfalseמופנה ל‑PdfConfig.AllowSearch.
boolAllowCopyfalseמופנה ל‑PdfConfig.AllowCopy.
TableAutoFitBehaviorAutoFitAllTablesNoneNone, AutoFitToContents, או AutoFitToWindow.

תצורת‑Excel

פורמטים: XLS, XLSX, XLSM, XLSB, XLTX, XLTM, ODS, CSV. DPI ברירת מחדל: 200.

סוגמאפייןברירת מחדלהתנהגות
boolDefaultRendertrueהצגה מקומית של גיליון; false משתמש בהפנייה ל‑PDF.
PdfConfigPdfConfigמופע חדשהגדרות לנתיב PDF/חיפוש.
ExcelPaperSizePaperSizePaperA4גודל נייר הפלט.
doublePaperMargins0.25שולפי עמוד באינצ'ים.
boolPaperLandscapetrueהצגת גיליון בתצוגה אופקית.
boolAutoFitContentsfalseהתאמה אוטומטית של גובה השורות ורוחב העמודות.
boolRemoveEmptyContenttrueהדוק את הפלט על‑ידי הוצאת תוכן ריק.
boolCalculateFormulatrueחישוב מחדש של נוסחאות לפני ההצגה.
boolShowRowColumnHeaderstrueהכללת כותרות שורות ועמודות בגיליון.
boolExportPdfAfalseשימוש ב‑PDF/A בנתיב ה‑PDF.
boolSplitWorksheetsfalseשמירת גיליונות כקבוצות עמודים נפרדות.
boolShowEmptyWorkSheetsfalseהכללת גיליונות ריקים.
boolExportLandscapefalseהכרז יצוא בתצוגה אופקית.
boolExportOnePagePerSheetfalseהתאמת כל גיליון לעמוד פלט אחד.
boolMemoryOptimizationPreferencetrueהפחתת זיכרון קצה, ייתכן במחיר של קצב.
boolAutoTrimWorksheetRenderRangetrueהצגה רק של הטווח בשימוש הגלוי כאשר אין תחום הדפסה מפורש.
boolAutoTrimPreserveExistingPrintAreatrueשמירת תחומי הדפסה שהוגדרו במחברת במהלך קיצוץ אוטומטי.
string?PrintAreanullטווח מפורש כגון "A1:Z100".
boolPrintGridlinesfalseהדפסת קווי רשת של הגיליון.
boolPrintHeadingsfalseהדפסת כותרות שורות/עמודות.
List<string>SheetNamesריקהגבלת ההצגה לגיליונות בעלי שם.
CustomStyleCell?CustomStylesnullהחלפות פורמט אופציונליות לתאריך/דצימלי/שלם.
boolAllowSearchfalseמועבר ל‑PdfConfig.AllowSearch.
boolAllowCopyfalseמועבר ל‑PdfConfig.AllowCopy.

CustomStyleCell מציג את CustomStyleDateTime, CustomStyleNumberDecimal ו‑CustomStyleNumberInteger, כולם מחרוזות ניתנות לאפס.

new ExcelConfig() מגדיר את SplitWorksheets ל‑false; פתיחת קובץ Excel ללא תצורה מפורשת משתמשת בקטלוג הפורמטים, שמגדיר זאת ל‑true.

תצורת‑Ppt

פורמטים: PPT, PPTX, PPTM, PPSX, PPSM, POT, POTX, POTM, ODP. DPI ברירת מחדל: 200.

סוגמאפייןברירת מחדלהתנהגות
boolDefaultRendertrueהצגה מקומית של שקף; false משתמש בהפנייה ל‑PDF.
boolFastLoadfalseהימנעות מהצגת השקף הראשון בפתיחה; שימוש במטא‑דאטה והצגה לפי דרישה.
PdfConfigPdfConfigמופע חדשהגדרות להתנהגות PDF/חיפוש.
stringFontInfo""מידע על החלפת גופנים.
string[]?FontFoldersnullספריות גופנים נוספות.
boolAllowSearchfalseמועבר ל‑PdfConfig.AllowSearch.
boolAllowCopyfalseמועבר ל‑PdfConfig.AllowCopy.

התקינו את הגופנים שהמצגות משתמשות בהם על השרת, או הפנו את FontFolders לתיקייה שמכילה אותם. ל‑Windows Server ללא Office יש פחות גופנים משמעותית ממחשב פיתוח, והגופנים החסרים מוחלפים ללא שגיאה.

תצורת‑Cad

פורמטים: DWG, DXF, DGN. DPI ברירת מחדל: 200.

סוגמאפייןברירת מחדלהתנהגות
boolDefaultRendertrueהצגה מקומית של CAD; false משתמש בהפנייה ל‑PDF.
PdfConfigPdfConfigמופע חדשהגדרות נתיב PDF.
boolExportPdfAfalseפלט PDF/A ארכיוני.
boolShowColortrueצבע במקום שחור‑לבן.
boolWhiteBackgroundtrueרקע לבן במקום שחור.
shortLineWidth25רוחב קו CAD.
boolShowLayoutsfalseהצגת לשוניות פריסות.
boolShowModeltrueהצגת מרחב מודל.
boolCheck3DSolidtrueעיבוד מוצקים תלת‑ממדיים.
boolExportAllLayoutsfalseייצוא כל הפריסות, תוך התעלמות מבחירת מודל/פריסה.
boolLimitMinimumSizefalseהחלת MinimumSize.
intMinimumSize700גודל פלט מינימלי בפיקסלים.
boolLimitMaximumSizefalseהחלת MaximumSize.
intMaximumSize700גודל פלט מרבי בפיקסלים.
boolShowAllLayoutsDgnfalseהכללת כל פריסות DGN.
boolAutomaticLayoutScalingtrueקנה מידה אוטומטי של פריסות.
floatPdfMargins0.5שולף PDF באינצ'ים.
RenderQualityQualityImageLowאיכות רסטר: Low, Medium, או High.
RenderQualityQualityTextMediumאיכות טקסט: Low, Medium, או High.

EmailConfig

פורמטים: EML, EMLX, MSG. DPI ברירת מחדל: 200.

סוגמאפייןברירת מחדלהתנהגות
boolDefaultRendertrueרינדור דוא"ל מקורי; false משתמש בהפנייה ל‑PDF.
PdfConfigPdfConfigמופע חדשהגדרות נתיב PDF.
Encoding?EmailEncodingnullדרוס קידוד הודעה.
Encoding?SubjectEncodingnullדרוס קידוד נושא.
Encoding?BodyEncodingnullדרוס קידוד גוף.
boolSkipExternalImagesfalseאל טען תמונות שמקושרות מרחוק. מומלץ לדוא"ל לא מהימן.
boolRemoveLastWhitePagefalseהסר דף ריק בסוף.
boolUseAntiAliasingfalseאפשר אנטי‑אליאסינג.
boolUseHighQualityRenderingfalseהעדף רינדור נקי יותר, איטי יותר.
TimeSpan?TimeZoneOffsetnullדרוס את אזור הזמן המשמש לתאריכים.
boolForcePageSizefalseכפה ממדים קבועים לדף.

ImageConfig, TiffConfig, ו‑PsdConfig

ImageConfig תומך ב‑JPG, JPEG, JPE, PNG, BMP, GIF, ICO, EPS, TGA, WEBP, CDR, CMX, DNG, EMF, WMF, AVIF, ו‑SVG. DPI ברירת המחדל שלו הוא 100.

תצורהמאפייןברירת מחדלהתנהגות
ImageConfigMaxImagePixelSize3000רוחב/גובה מרבי. 0 משמעותו ללא הגבלה; ערכים שונים מ‑0 מתחת ל‑50 מתעלמים מהם.
ImageConfigTransparentPngtrueשמור שקיפות PNG; false משתמש ברקע לבן.
TiffConfigאין מאפיינים נוספיםDPI 200משתמש רק ב‑BaseConfig; תומך ב‑TIFF מרובה עמודים.
PsdConfigMaxImagePixelSize3000אותה אימות 0/מינימום‑50 כמו ImageConfig; DPI ברירת מחדל הוא 100.

DicomConfig

פורמטים: DCM, IMA. DPI אפקטיבי ברירת מחדל: 100. דורש את תוסף DICOM. בחבילה זו קבצי DICOM מוצגים במלואם, אך מטא‑נתונים טכניים אינם זמינים — ראה תוסף DICOM.

סוגמאפייןברירת מחדלהתנהגות
intHorizontalResolution100 אפקטיביDPI אופקי מפורש; אחרת ImageResolution, ואז 100.
intVerticalResolution100 אפקטיביDPI אנכי מפורש; אחרת ImageResolution, ואז 100.
intAnimationFrameDelayMs100השהיית אנימציה מרובת פריימים; תזמון GIF משתמש ביחידות של 10 מ״ש.
ushortLoopCount00 לולאה לנצח; ערכים חיוביים עוצרים אחרי ספירה זו.
DicomDisplayModeDisplayModeAnimationAndFramesAnimationOnly, FramesOnly, או סקירה משולבת עם פריימים סטטיים.

TxtConfig

פורמט: TXT. DPI ברירת מחדל: 200.

סוגמאפייןברירת מחדלהתנהגות
DocPaperSizePaperSizeA4גודל נייר פלט.
Encoding?FileEncodingnullnull משתמש ב‑UTF-8.
stringFontInformation""מידע גופן לרינדור טקסט.

השתמש ב‑WordConfig כאשר טקסט פשוט דורש התנהגות פריסת עמודים עשירה יותר.

ProjectConfig

פורמטים: MPP, MPPX, MPX. DPI ברירת מחדל: 200.

סוגמאפייןברירת מחדלהתנהגות
boolDefaultRendertrueתמונת Gantt מקומית; false משתמש בנתיב PDF מבוסס טקסט.
PdfConfigPdfConfigמופע חדשהגדרות נתיב PDF.
boolExportPdfAtrueפלט PDF/A ארכיוני.
MppPaperSizePaperSizeLedgerגודל נייר פלט של הפרויקט.
MppTimeScaleTimeScaleMonthsDays או Months.
MppFormatPresentationFormatGanttChartGanttChart, TaskUsage, ResourceUsage, ResourceSheet, או TaskSheet.

לחיפוש מדויק לפי קואורדינטות טקסט, השתמש ב‑DefaultRender = false.

VisioConfig

פורמטים: VSD, VSDX, VSS, VSSX, VST, VSTX, VDX, VSX, VSDM. DPI ברירת מחדל: 200.

סוגמאפייןברירת מחדלהתנהגות
boolDefaultRendertrueרינדור דיאגרמה מקורי; false משתמש בהפנייה ל‑PDF.
PdfConfigPdfConfigמופע חדשהגדרות נתיב PDF.
boolExportPdfAtrueפלט PDF/A ארכיוני.

HtmlConfig, EpubConfig, MhtConfig, ו‑XpsConfig

כל ארבעת ברירת המחדל היא 200 DPI ומציגים PdfConfig מקונן.

תצורהפורמטיםDefaultRenderמאפיינים/התנהגות נוספים
HtmlConfigHTML, HTMtrueרינדור מקורי; השתמש ב‑false לנתיב חיפוש PDF מבוסס טקסט.
EpubConfigEPUBtrueרינדור מקורי; false משתמש ב‑PDF.
MhtConfigMHT, MHTMLtrue על המחלקה; false בקטלוג האוטומטי. הפתיחה הרגילה ללא תצורה משתמשת בהפנייה ל‑PDF הניתן לחיפוש. מופע ברירת מחדל שנבנה במפורש רינדור מקומי.
XpsConfigXPSfalsefalse משתמש בנתיב PDF כברירת מחדל; קבע true לרינדור תמונה מקורי.

דוגמאות קונפיגורציה לפי משפחה

csharp
BaseConfig[] configs =
{
    new PdfConfig
    {
        AllowSearch = true,
        ExtractHyperlinks = true,
        HyperlinksPageCount = 0
    },
    new WordConfig
    {
        PaperSize = DocPaperSize.A4,
        RemovePaperMargin = false,
        FontFolders = new[] { HostingEnvironment.MapPath("~/App_Data/Fonts") },
        AllowSearch = true
    },
    new ExcelConfig
    {
        PaperLandscape = true,
        AutoFitContents = true,
        CalculateFormula = true,
        SplitWorksheets = false,
        PrintGridlines = false
    },
    new PptConfig
    {
        FastLoad = true,
        FontFolders = new[] { HostingEnvironment.MapPath("~/App_Data/Fonts") },
        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
    }
};

בחירה לפי סיומת

csharp
static BaseConfig ConfigForExtension(string extUpper)
{
    switch (extUpper)
    {
        case ".DOC": case ".DOCX": case ".DOT": case ".DOTX": case ".ODT":
            return new WordConfig
            {
                AutoFitAllTables = WordConfig.TableAutoFitBehavior.AutoFitToWindow,
                PaperSize = DocPaperSize.Tabloid,
                PdfConfig = new PdfConfig { ExtractHyperlinks = true, HyperlinksPageCount = 5, AllowCopy = true }
            };
        case ".PDF":
            return new PdfConfig { AllowSearch = true, AllowCopy = true };
        case ".XLS": case ".XLSX": case ".ODS": case ".CSV":
            return new ExcelConfig { AllowSearch = true, AllowCopy = true };
        case ".DCM": case ".IMA":
            return new DicomConfig { DisplayMode = DicomDisplayMode.AnimationAndFrames };
        // DefaultRender = false → PDF redirect → pixel-accurate native text search
        case ".HTML": case ".HTM":
            return new HtmlConfig { DefaultRender = false };
        case ".EML": case ".EMLX": case ".MSG":
            return new EmailConfig { DefaultRender = false };
        default:
            return null; // fall back to the format's default config
    }
}

האם דף זה היה מועיל?