Διαμορφώσεις Μορφής
Πλήρεις επιλογές απόδοσης ανά μορφή
Κάθε έγγραφο ανοίγει με μια υλοποίηση 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 | new instance | Ρυθμίσεις που χρησιμοποιούνται από τη διαδρομή 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 | Επιπλέον καταλόγους γραμματοσειρών, ιδιαίτερα χρήσιμο σε Linux/containers. |
bool | AllowSearch | false | Αναθέτει στο PdfConfig.AllowSearch. |
bool | AllowCopy | false | Αναθέτει στο PdfConfig.AllowCopy. |
TableAutoFitBehavior | AutoFitAllTables | None | None, AutoFitToContents ή AutoFitToWindow. |
Διαμόρφωση Excel
Μορφές: 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 | κενό | Περιορισμός απόδοσης σε ονομασμένα φύλλα εργασίας. |
CustomStyleCell? | CustomStyles | null | Προαιρετικές παρακάμψεις μορφοποίησης ημερομηνίας/δεκαδικού/ακέραιου. |
bool | AllowSearch | false | Αναθέτει στο PdfConfig.AllowSearch. |
bool | AllowCopy | false | Αναθέτει στο PdfConfig.AllowCopy. |
CustomStyleCell εκθέτει CustomStyleDateTime, CustomStyleNumberDecimal και CustomStyleNumberInteger, όλα nullable strings.
new ExcelConfig() ορίζει το SplitWorksheets σε false· το άνοιγμα ενός αρχείου Excel χωρίς ρητή διαμόρφωση χρησιμοποιεί τον κατάλογο μορφών, ο οποίος το ορίζει σε true.
Διαμόρφωση PPT
Μορφές: 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.
Διαμόρφωση CAD
Μορφές: 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 | Επεξεργασία στερεών 3D. |
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 | Ποιότητα raster: Low, Medium ή High. |
RenderQuality | QualityText | Medium | Ποιότητα κειμένου: Low, Medium ή High. |
ΔιαμόρφωσηEmailConfig
Μορφές: EML, EMLX, MSG. Προεπιλεγμένο DPI: 200.
| Τύπος | Ιδιότητα | Προεπιλογή | Συμπεριφορά |
|---|---|---|---|
bool | DefaultRender | true | Αυθεντική απόδοση email· false χρησιμοποιεί την ανακατεύθυνση PDF. |
PdfConfig | PdfConfig | νέα παρουσία | Ρυθμίσεις διαδρομής PDF. |
Encoding? | EmailEncoding | null | Παράκαμψη κωδικοποίησης μηνύματος. |
Encoding? | SubjectEncoding | null | Παράκαμψη κωδικοποίησης θέματος. |
Encoding? | BodyEncoding | null | Παράκαμψη κωδικοποίησης σώματος. |
bool | SkipExternalImages | false | Να μην φορτώνονται εικόνες απομακρυσμένα αναφερόμενες. Συνιστάται για μη αξιόπιστο email. |
bool | RemoveLastWhitePage | false | Αφαίρεση τελικής κενής σελίδας. |
bool | UseAntiAliasing | false | Ενεργοποίηση anti-aliasing. |
bool | UseHighQualityRendering | false | Προτίμηση καθαρότερης, πιο αργής απόδοσης. |
TimeSpan? | TimeZoneOffset | null | Παράκαμψη της ζώνης ώρας που χρησιμοποιείται για ημερομηνίες. |
bool | ForcePageSize | false | Εξαναγκασμός σταθερών διαστάσεων σελίδας. |
ΔιαμόρφωσηImageConfig, TiffConfig και 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 σημαίνει απεριόριστο· μη μηδενικές τιμές κάτω από 50 αγνοούνται. |
ImageConfig | TransparentPng | true | Διατήρηση διαφάνειας PNG· false χρησιμοποιεί λευκό φόντο. |
TiffConfig | χωρίς πρόσθετες ιδιότητες | DPI 200 | Χρησιμοποιεί μόνο BaseConfig· υποστηρίζει πολυ-σελίδες TIFF. |
PsdConfig | MaxImagePixelSize | 3000 | Ίδια 0/ελάχιστη-50 επικύρωση όπως ImageConfig· η προεπιλεγμένη DPI είναι 100. |
ΔιαμόρφωσηDicomConfig
Μορφές: DCM, IMA. Προεπιλεγμένο αποτελεσματικό DPI: 100. Απαιτεί το πρόσθετο DICOM.
| Τύπος | Ιδιότητα | Προεπιλογή | Συμπεριφορά |
|---|---|---|---|
int | HorizontalResolution | 100 αποτελεσματικό | Σαφές οριζόντιο DPI· αλλιώς ImageResolution, μετά 100. |
int | VerticalResolution | 100 αποτελεσματικό | Σαφές κάθετο DPI· αλλιώς ImageResolution, μετά 100. |
int | AnimationFrameDelayMs | 100 | Καθυστέρηση animation πολλαπλών πλαισίων· ο χρόνος 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 και XpsConfig
Τα τέσσερα προεπιλεγμένα σε DPI 200 και εκθέτουν ένα ένθετο PdfConfig.
| Διαμόρφωση | Μορφές | DefaultRender | Πρόσθετες ιδιότητες/συμπεριφορά |
|---|---|---|---|
HtmlConfig | HTML, HTM | true | Αυθεντική απόδοση· χρησιμοποιήστε false για διαδρομή αναζήτησης PDF κειμένου. |
EpubConfig | EPUB | true | Αυθεντική απόδοση· false χρησιμοποιεί PDF. |
MhtConfig | MHT, MHTML | true στον τύπο· false στον αυτόματο κατάλογο | Η προεπιλεγμένη λειτουργία χωρίς ρύθμιση ανοίγματος χρησιμοποιεί την ανακατεύθυνση PDF με δυνατότητα αναζήτησης. Μια ρητά κατασκευασμένη προεπιλεγμένη παρουσία αποδίδει αυθεντικά. |
XpsConfig | XPS | false | Χρησιμοποιεί τη διαδρομή PDF εξ ορισμού· ορίστε true για αυθεντική απόδοση εικόνας. |
Παραδείγματα διαμόρφωσης ανά οικογένεια
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
}
};Επιλογή ανά επέκταση
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 → pixel-accurate αυθεντική αναζήτηση κειμένου
".HTML" or ".HTM" => new HtmlConfig { DefaultRender = false },
".EML" or ".EMLX" or ".MSG" => new EmailConfig { DefaultRender = false },
_ => null // επανέλθετε στην προεπιλεγμένη ρύθμιση του format
};Ήταν αυτή η σελίδα χρήσιμη;