Διαμορφώσεις Μορφής

Πλήρεις επιλογές απόδοσης ανά μορφή

Κάθε έγγραφο ανοίγει με μια υλοποίηση του BaseConfig. Περάστε ένα στο OpenDocumentAsync ή αφήστε τον κατάλογο μορφών να δημιουργήσει το προεπιλεγμένο. Όλες οι παρακάτω κλάσεις βρίσκονται στο χώρο ονομάτων 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

ΤύποςΙδιότηταΠροεπιλογήΣυμπεριφορά
intImageResolution0Το 0 χρησιμοποιεί την προεπιλογή της μορφής. Έγκυρο ρητό εύρος είναι 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Αλλαγή μεγέθους των ενσωματωμένων εικόνων πριν την απόδοση.
intResizeResolution300Στόχος DPI για τις εικόνες που αλλάζουν μέγεθος.
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Προσαρμοσμένο πλάτος σε μονάδες point.
intPaperHeight841Προσαρμοσμένο ύψος σε μονάδες point.
boolRemovePaperMarginfalseΑφαίρεση περιθωρίων σελίδας του εγγράφου.
boolRenderPageColortrueΔιατήρηση του χρώματος σελίδας που έχει ορίσει το Word· το false αποδίδει λευκές σελίδες.
boolExportPdfAfalseΧρήση αρχείου PDF/A για το μονοπάτι PDF.
Encoding?FileEncodingnullΠαράκαμψη κωδικοποίησης πηγής.
stringFontInfo""Πληροφορίες αντικατάστασης γραμματοσειράς.
string[]?FontFoldersnullΠρόσθετοι φάκελοι γραμματοσειρών, ιδιαίτερα χρήσιμοι σε Linux/containers.
boolAllowSearchfalseΠαραπέμπει στο PdfConfig.AllowSearch.
boolAllowCopyfalseΠαραπέμπει στο PdfConfig.AllowCopy.
TableAutoFitBehaviorAutoFitAllTablesNoneNone, AutoFitToContents, ή AutoFitToWindow.

ExcelConfig

Μορφές: XLS, XLSX, XLSM, XLSB, XLTX, XLTM, ODS, CSV. DPI προεπιλογή: 200.

ΤύποςΙδιότηταΠροεπιλογήΣυμπεριφορά
boolDefaultRendertrueΕγγενής απόδοση φύλλου· το false χρησιμοποιεί την ανακατεύθυνση PDF.
PdfConfigPdfConfignew instanceΡυθμίσεις για το μονοπάτι PDF/αναζήτησης.
ExcelPaperSizePaperSizePaperA4Μέγεθος εξόδου χαρτιού.
doublePaperMargins0.25Περιθώρια σελίδας σε ίντσες.
boolPaperLandscapetrueΑπόδοση φύλλου σε οριζόντια διάταξη.
boolAutoFitContentsfalseΑυτόματη προσαρμογή ύψους γραμμών και πλάτους στηλών.
boolRemoveEmptyContenttrueΣυμπίεση εξόδου εξαιρώντας κενό περιεχόμενο.
boolCalculateFormulatrueΕπαναϋπολογισμός τύπων πριν την απόδοση.
boolShowRowColumnHeaderstrueΣυμπερίληψη κεφαλίδων λογιστικού φύλλου.
boolExportPdfAfalseΧρήση PDF/A στο μονοπάτι PDF.
boolSplitWorksheetsfalseΔιατήρηση φύλλων εργασίας ως ξεχωριστές ομάδες σελίδων.
boolShowEmptyWorkSheetsfalseΣυμπερίληψη κενών φύλλων εργασίας.
boolExportLandscapefalseΕξαναγκασμός εξαγωγής σε οριζόντια διάταξη.
boolExportOnePagePerSheetfalseΠροσαρμογή κάθε φύλλου σε μία σελίδα εξόδου.
boolMemoryOptimizationPreferencetrueΜείωση της μέγιστης μνήμης, ενδεχομένως με μικρή μείωση ταχύτητας.
boolAutoTrimWorksheetRenderRangetrueΑπόδοση μόνο της ορατής περιοχής που χρησιμοποιείται όταν δεν υπάρχει ρητή περιοχή εκτύπωσης.
boolAutoTrimPreserveExistingPrintAreatrueΔιατήρηση περιοχών εκτύπωσης που ορίζονται στο βιβλίο εργασίας κατά το auto‑trim.
string?PrintAreanullΡητή περιοχή, π.χ. "A1:Z100".
boolPrintGridlinesfalseΕκτύπωση γραμμών πλέγματος φύλλου.
boolPrintHeadingsfalseΕκτύπωση επικεφαλίδων γραμμής/στήλης.
List<string>SheetNamesemptyΠεριορισμός απόδοσης σε ονομασμένα φύλλα εργασίας.
CustomStyleCell?CustomStylesnullΠροαιρετικές παρακάμψεις μορφοποίησης ημερομηνίας/δεκαδικού/ακέραιου.
boolAllowSearchfalseΠαραπέμπει στο PdfConfig.AllowSearch.
boolAllowCopyfalseΠαραπέμπει στο PdfConfig.AllowCopy.

CustomStyleCell εκθέτει CustomStyleDateTime, CustomStyleNumberDecimal και CustomStyleNumberInteger, όλα nullable strings.

new ExcelConfig() ορίζει το SplitWorksheets σε false; το άνοιγμα ενός αρχείου Excel χωρίς ρητή διαμόρφωση χρησιμοποιεί τον κατάλογο μορφών, ο οποίος το θέτει σε true.

PptConfig

Μορφές: PPT, PPTX, PPTM, PPSX, PPSM, POT, POTX, POTM, ODP. DPI προεπιλογή: 200.

ΤύποςΙδιότηταΠροεπιλογήΣυμπεριφορά
boolDefaultRendertrueΕγγενής απόδοση διαφάνειας· το false χρησιμοποιεί την ανακατεύθυνση PDF.
boolFastLoadfalseΑποφυγή απόδοσης της πρώτης διαφάνειας κατά το άνοιγμα· χρήση μεταδεδομένων και απόδοση κατ' απαίτηση.
PdfConfigPdfConfignew instanceΡυθμίσεις για συμπεριφορά PDF/αναζήτησης.
stringFontInfo""Πληροφορίες αντικατάστασης γραμματοσειράς.
string[]?FontFoldersnullΠρόσθετοι φάκελοι γραμματοσειρών.
boolAllowSearchfalseΠαραπέμπει στο PdfConfig.AllowSearch.
boolAllowCopyfalseΠαραπέμπει στο PdfConfig.AllowCopy.

Σε Linux και macOS, η απόδοση παρουσιάσεων με τον τρέχοντα κινητήρα απαιτεί libgdiplus και System.Drawing.EnableUnixSupport=true. Εγκαταστήστε τις γραμματοσειρές που χρησιμοποιεί η παρουσία ή παρέχετε FontFolders.

CadConfig

Μορφές: DWG, DXF, DGN. DPI προεπιλογή: 200.

ΤύποςΙδιότηταΠροεπιλογήΣυμπεριφορά
boolDefaultRendertrueΕγγενής απόδοση CAD· το false χρησιμοποιεί την ανακατεύθυνση PDF.
PdfConfigPdfConfignew instanceΡυθμίσεις μονοπατιού PDF.
boolExportPdfAfalseΈξοδος αρχείου PDF/A για αρχειοθέτηση.
boolShowColortrueΧρώμα αντί για μονόχρωμη απόδοση.
boolWhiteBackgroundtrueΛευκό φόντο αντί για μαύρο.
shortLineWidth25Πάχος γραμμής CAD.
boolShowLayoutsfalseΑπόδοση καρτελών διάταξης.
boolShowModeltrueΑπόδοση χώρου μοντέλου.
boolCheck3DSolidtrueΕπεξεργασία 3D στερεών.
boolExportAllLayoutsfalseΕξαγωγή όλων των διατάξεων, παρακάμπτοντας την επιλογή μοντέλου/διάταξης.
boolLimitMinimumSizefalseΕφαρμογή MinimumSize.
intMinimumSize700Ελάχιστο μέγεθος εξόδου σε εικονοστοιχεία.
boolLimitMaximumSizefalseΕφαρμογή MaximumSize.
intMaximumSize700Μέγιστο μέγεθος εξόδου σε εικονοστοιχεία.
boolShowAllLayoutsDgnfalseΣυμπερίληψη όλων των διατάξεων DGN.
boolAutomaticLayoutScalingtrueΑυτόματη κλιμάκωση διατάξεων.
floatPdfMargins0.5Περιθώριο PDF σε ίντσες.
RenderQualityQualityImageLowΠοιότητα raster: Low, Medium, ή High.
RenderQualityQualityTextMediumΠοιότητα κειμένου: Low, Medium, ή High.

EmailConfig

Μορφές: EML, EMLX, MSG. DPI προεπιλογή: 200.

ΤύποςΙδιότηταΠροεπιλογήΣυμπεριφορά
boolDefaultRendertrueΕγγενής απόδοση email· το false χρησιμοποιεί την ανακατεύθυνση PDF.
PdfConfigPdfConfignew instanceΡυθμίσεις μονοπατιού PDF.
Encoding?EmailEncodingnullΠαράκαμψη κωδικοποίησης μηνύματος.
Encoding?SubjectEncodingnullΠαράκαμψη κωδικοποίησης θέματος.
Encoding?BodyEncodingnullΠαράκαμψη κωδικοποίησης σώματος.
boolSkipExternalImagesfalseΜη φόρτωση εικόνων που αναφέρονται απομακρυσμένα. Συνιστάται για μη αξιόπιστο email.
boolRemoveLastWhitePagefalseΑφαίρεση τελικής κενής σελίδας.
boolUseAntiAliasingfalseΕνεργοποίηση anti‑aliasing.
boolUseHighQualityRenderingfalseΠροτίμηση καθαρότερης, πιο αργής απόδοσης.
TimeSpan?TimeZoneOffsetnullΠαράκαμψη της ζώνης ώρας που χρησιμοποιείται για ημερομηνίες.
boolForcePageSizefalseΕξαναγκασμός σταθερών διαστάσεων σελίδας.

ImageConfig, TiffConfig, and PsdConfig

Το ImageConfig καλύπτει JPG, JPEG, JPE, PNG, BMP, GIF, ICO, EPS, TGA, WEBP, CDR, CMX, DNG, EMF, WMF, AVIF και SVG. Το προεπιλεγμένο DPI του είναι 100.

ΔιαμόρφωσηΙδιότηταΠροεπιλογήΣυμπεριφορά
ImageConfigMaxImagePixelSize3000Μέγιστο πλάτος/ύψος. Το 0 σημαίνει απεριόριστο· μη μηδενικές τιμές κάτω από 50 αγνοούνται.
ImageConfigTransparentPngtrueΔιατήρηση διαφάνειας PNG· το false χρησιμοποιεί λευκό φόντο.
TiffConfigno additional propertiesDPI 200Χρησιμοποιεί μόνο το BaseConfig; υποστηρίζει πολυ‑σελίδες TIFF.
PsdConfigMaxImagePixelSize3000Ίδιο έλεγχο 0/ελάχιστο‑50 όπως στο ImageConfig; προεπιλεγμένο DPI είναι 100.

DicomConfig

Μορφές: DCM, IMA. DPI αποτελεσματικό προεπιλογή: 100. Απαιτεί το πρόσθετο DICOM.

ΤύποςΙδιότηταΠροεπιλογήΣυμπεριφορά
intHorizontalResolution100 effectiveΡητό οριζόντιο DPI· εναλλιώς ImageResolution, μετά 100.
intVerticalResolution100 effectiveΡητό κάθετο DPI· εναλλιώς ImageResolution, μετά 100.
intAnimationFrameDelayMs100Καθυστέρηση πλαισίου πολυ‑πλαισίου animation· το GIF χρησιμοποιεί μονάδες 10 ms.
ushortLoopCount0Το 0 επαναλαμβάνει αέναα· θετικές τιμές σταματούν μετά τον συγκεκριμένο αριθμό επαναλήψεων.
DicomDisplayModeDisplayModeAnimationAndFramesAnimationOnly, FramesOnly, ή συνδυασμένη επισκόπηση με στατικά πλαίσια.

TxtConfig

Μορφή: TXT. DPI προεπιλογή: 200.

ΤύποςΙδιότηταΠροεπιλογήΣυμπεριφορά
DocPaperSizePaperSizeA4Μέγεθος εξόδου χαρτιού.
Encoding?FileEncodingnullΤο null χρησιμοποιεί UTF‑8.
stringFontInformation""Πληροφορίες γραμματοσειράς για την απόδοση κειμένου.

Χρησιμοποιήστε WordConfig όταν το απλό κείμενο χρειάζεται πιο πλούσια συμπεριφορά διάταξης σελίδας.

ProjectConfig

Μορφές: MPP, MPPX, MPX. DPI προεπιλογή: 200.

ΤύποςΙδιότηταΠροεπιλογήΣυμπεριφορά
boolDefaultRendertrueΕγγενής εικόνα Gantt· το false χρησιμοποιεί μονοπάτι PDF κειμένου.
PdfConfigPdfConfignew instanceΡυθμίσεις μονοπατιού 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.
PdfConfigPdfConfignew instanceΡυθμίσεις μονοπατιού PDF.
boolExportPdfAtrueΈξοδος PDF/A για αρχειοθέτηση.

HtmlConfig, EpubConfig, MhtConfig, and XpsConfig

Όλα τα τέσσερα προεπιλέγουν DPI 200 και εκθέτουν μια ενσωματωμένη PdfConfig.

ΔιαμόρφωσηΜορφέςDefaultRenderΠρόσθετες ιδιότητες/συμπεριφορά
HtmlConfigHTML, HTMtrueΕγγενής απόδοση· χρησιμοποιήστε false για μονοπάτι PDF κειμένου.
EpubConfigEPUBtrueΕγγενής απόδοση· false χρησιμοποιεί PDF.
MhtConfigMHT, MHTMLtrue on the class; false in the automatic catalogΗ κανονική άνοιξη χωρίς διαμόρφωση χρησιμοποιεί την ανακατεύθυνση PDF αναζητήσιμη. Μια ρητά κατασκευασμένη προεπιλεγμένη παρουσίαση αποδίδει εγγενώς.
XpsConfigXPSfalseΧρησιμοποιεί το μονοπάτι PDF εξ ορισμού· ορίστε true για εγγενή απόδοση εικόνας.

Configuration examples by family

csharp
BaseConfig[] configs =
[
    new PdfConfig
    {
        AllowSearch = true,
        ExtractHyperlinks = true,
        HyperlinksPageCount = 0
    },
    new WordConfig
    {
        PaperSize = DocPaperSize.A4,
        RemovePaperMargin = false,
        FontFolders = ["/usr/share/fonts/truetype"],
        AllowSearch = true
    },
    new ExcelConfig
    {
        PaperLandscape = true,
        AutoFitContents = true,
        CalculateFormula = true,
        SplitWorksheets = false,
        PrintGridlines = false
    },
    new PptConfig
    {
        FastLoad = true,
        FontFolders = ["/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

csharp
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
};

Ήταν αυτή η σελίδα χρήσιμη;