Formatkonfigurationer
Fullständiga renderingsalternativ per format
Varje dokument öppnas med en BaseConfig‑implementation. Skicka en till OpenDocumentAsync eller låt formatkatalogen skapa sin standard. Alla klasser nedan finns i Doconut‑namnrymden.
var token = await viewer.OpenDocumentAsync(path, new PdfConfig
{
AllowSearch = true,
AllowCopy = true,
ImageResolution = 150
});Arv och nästlade PDF‑inställningar
Varje format ärver de fem BaseConfig‑egenskaperna. Format som kan omdirigera via PDF exponerar en nästlad PdfConfig. I WordConfig, ExcelConfig och PptConfig är AllowSearch och AllowCopy bekvämlighets‑egenskaper som läser och skriver den nästlade PdfConfig.
DefaultRender = true väljer den inbyggda format‑renderaren. På format med en PDF‑omdirigering konverterar false först till ett PDF‑minne och använder sedan PDF‑visaren. Den vägen är ofta användbar för text‑koordinatsökning, men kostar en extra konvertering.
Om inget annat anges visar tabellerna standardvärden för konstruktor/egenskaper. Formatkatalogen åsidosätter medvetet två av dem: den skapar ExcelConfig med SplitWorksheets = true och MhtConfig med DefaultRender = false.
BaseConfig
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
int | ImageResolution | 0 | 0 använder formatets standard. Giltigt explicit intervall är 25‑300 DPI; ogiltiga tilldelningar ignoreras. |
string | DocumentCulture | "" | Lokalkod för datum och tal. Icke‑tomma värden trimmas; tomma tilldelningar ignoreras. |
string | Password | "" | Lösenord för skyddat dokument. DocOptions.Password kopieras hit automatiskt. |
bool | ShowUI | true | Kompatibilitetsegenskap; den nuvarande renderaren använder den inte för att styra webbläsarens verktygsfält. |
bool | CachePages | true | Cacha renderade sidbilder för dokumentsessionen. |
PdfConfig
Format: PDF. Standard‑DPI: 200.
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
bool | DefaultRender | true | Kompatibilitetsväxel. Den nuvarande fabriken använder den inbyggda PDF‑visaren. |
bool | AllowSearch | false | Bygg/använd PDF‑text‑sökindex. Kräver licenskapaciteten Search för förfrågningar. |
bool | AllowCopy | false | Tillåt text‑markering/kopiering. |
bool | ExtractHyperlinks | false | Extrahera länkrektanglar för klient‑överlappning. |
int | HyperlinksPageCount | 0 | Maximalt antal sidor som skannas för länkar; 0 betyder alla sidor. |
bool | CompressImages | false | Komprimera inbäddade bilder före rendering. |
int | CompressQuality | 100 | JPEG‑kvalitet som används när komprimering är aktiverad. |
bool | ResizeImages | false | Ändra storlek på inbäddade bilder före rendering. |
int | ResizeResolution | 300 | MåldPI för storleksändrade bilder. |
bool | CompressFast | false | Föredra den snabbare, lägre‑kvalitets‑komprimeringsvägen. |
bool | FixInvalidImages | false | Försök reparera ogiltiga inbäddade bilder. |
bool | SplitSegments | false | Sätt ihop ord som delats över radsegment för att förbättra sökning/kopiering. |
showHyperlinks i ViewerConfig styr klient‑överlappning, medan ExtractHyperlinks styr server‑extraktion. Aktivera båda.
WordConfig
Format: DOC, DOCX, DOCM, DOT, DOTX, DOTM, RTF, ODT, OTT, XML. Standard‑DPI: 200.
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
bool | DefaultRender | true | Inbyggd Word‑rendering; false använder PDF‑omdirigeringen. |
PdfConfig | PdfConfig | new instance | Inställningar som används av PDF‑/sökvägen. |
DocPaperSize | PaperSize | A4 | Utdata‑pappersstorlek. Använd Custom med bredd/höjd. |
int | PaperWidth | 595 | Anpassad bredd i punkter. |
int | PaperHeight | 841 | Anpassad höjd i punkter. |
bool | RemovePaperMargin | false | Ta bort dokumentets sidomarginaler. |
bool | RenderPageColor | true | Bevara Word‑konfigurerad sidfärg; false renderar vita sidor. |
bool | ExportPdfA | false | Använd arkiv‑PDF/A på PDF‑vägen. |
Encoding? | FileEncoding | null | Åsidosätt källkodning. |
string | FontInfo | "" | Information om teckensnitts‑substitution. |
string[]? | FontFolders | null | Ytterligare teckensnittskataloger, särskilt användbart i Linux/kontainrar. |
bool | AllowSearch | false | Delegerar till PdfConfig.AllowSearch. |
bool | AllowCopy | false | Delegerar till PdfConfig.AllowCopy. |
TableAutoFitBehavior | AutoFitAllTables | None | None, AutoFitToContents eller AutoFitToWindow. |
ExcelConfig
Format: XLS, XLSX, XLSM, XLSB, XLTX, XLTM, ODS, CSV. Standard‑DPI: 200.
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
bool | DefaultRender | true | Inbyggd blad‑rendering; false använder PDF‑omdirigeringen. |
PdfConfig | PdfConfig | new instance | Inställningar för PDF‑/sökvägen. |
ExcelPaperSize | PaperSize | PaperA4 | Utdata‑pappersstorlek. |
double | PaperMargins | 0.25 | Sidmarginaler i tum. |
bool | PaperLandscape | true | Landskapsrendering av blad. |
bool | AutoFitContents | false | Auto‑anpassa radhöjder och kolumnbredder. |
bool | RemoveEmptyContent | true | Komprimera utdata genom att utesluta tomt innehåll. |
bool | CalculateFormula | true | Räkna om formler före rendering. |
bool | ShowRowColumnHeaders | true | Inkludera kalkylbladsrubriker. |
bool | ExportPdfA | false | Använd PDF/A på PDF‑vägen. |
bool | SplitWorksheets | false | Behåll kalkylblad som separata sidgrupper. |
bool | ShowEmptyWorkSheets | false | Inkludera tomma kalkylblad. |
bool | ExportLandscape | false | Tvinga landskapsexport. |
bool | ExportOnePagePerSheet | false | Anpassa varje kalkylblad till en utskriftsida. |
bool | MemoryOptimizationPreference | true | Minska maxminne, eventuellt på bekostnad av hastighet. |
bool | AutoTrimWorksheetRenderRange | true | Rendera endast det synliga använda området när inget explicit utskriftsområde finns. |
bool | AutoTrimPreserveExistingPrintArea | true | Bevara arbetsboksdefinierade utskriftsområden under auto‑trim. |
string? | PrintArea | null | Explicit område, t.ex. "A1:Z100". |
bool | PrintGridlines | false | Skriv ut kalkylbladsgridlinjer. |
bool | PrintHeadings | false | Skriv ut rad‑/kolumnrubriker. |
List<string> | SheetNames | empty | Begränsa rendering till namngivna kalkylblad. |
CustomStyleCell? | CustomStyles | null | Valfria datum‑/decimal‑/heltal‑formaterings‑överskrivningar. |
bool | AllowSearch | false | Delegerar till PdfConfig.AllowSearch. |
bool | AllowCopy | false | Delegerar till PdfConfig.AllowCopy. |
CustomStyleCell exponerar CustomStyleDateTime, CustomStyleNumberDecimal och CustomStyleNumberInteger, alla nullable‑strängar.
new ExcelConfig() sätter SplitWorksheets till false; att öppna en Excel‑fil utan explicit konfiguration använder formatkatalogen, som sätter den till true.
PptConfig
Format: PPT, PPTX, PPTM, PPSX, PPSM, POT, POTX, POTM, ODP. Standard‑DPI: 200.
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
bool | DefaultRender | true | Inbyggd bild‑rendering; false använder PDF‑omdirigeringen. |
bool | FastLoad | false | Undvik att rendera den första bilden vid öppning; använd metadata och rendera på begäran. |
PdfConfig | PdfConfig | new instance | Inställningar för PDF‑/sök‑beteende. |
string | FontInfo | "" | Information om teckensnitts‑substitution. |
string[]? | FontFolders | null | Ytterligare teckensnittskataloger. |
bool | AllowSearch | false | Delegerar till PdfConfig.AllowSearch. |
bool | AllowCopy | false | Delegerar till PdfConfig.AllowCopy. |
På Linux och macOS kräver presentation‑rendering med den nuvarande motorn libgdiplus och System.Drawing.EnableUnixSupport=true. Installera de teckensnitt som används av presentationen eller ange FontFolders.
CadConfig
Format: DWG, DXF, DGN. Standard‑DPI: 200.
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
bool | DefaultRender | true | Inbyggd CAD‑rendering; false använder PDF‑omdirigeringen. |
PdfConfig | PdfConfig | new instance | PDF‑vägens inställningar. |
bool | ExportPdfA | false | Arkiv‑PDF/A‑utdata. |
bool | ShowColor | true | Färg snarare än monokrom. |
bool | WhiteBackground | true | Vit i stället för svart bakgrund. |
short | LineWidth | 25 | CAD‑linjebredd. |
bool | ShowLayouts | false | Rendera layout‑flikar. |
bool | ShowModel | true | Rendera modellutrymme. |
bool | Check3DSolid | true | Bearbeta 3D‑solider. |
bool | ExportAllLayouts | false | Exportera alla layouter, åsidosätt modell/layout‑val. |
bool | LimitMinimumSize | false | Tillämpa MinimumSize. |
int | MinimumSize | 700 | Minsta utdata‑storlek i pixlar. |
bool | LimitMaximumSize | false | Tillämpa MaximumSize. |
int | MaximumSize | 700 | Största utdata‑storlek i pixlar. |
bool | ShowAllLayoutsDgn | false | Inkludera alla DGN‑layouter. |
bool | AutomaticLayoutScaling | true | Skala layouter automatiskt. |
float | PdfMargins | 0.5 | PDF‑marginal i tum. |
RenderQuality | QualityImage | Low | Raster‑kvalitet: Low, Medium eller High. |
RenderQuality | QualityText | Medium | Text‑kvalitet: Low, Medium eller High. |
EmailConfig
Format: EML, EMLX, MSG. Standard‑DPI: 200.
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
bool | DefaultRender | true | Inbyggd e‑post‑rendering; false använder PDF‑omdirigeringen. |
PdfConfig | PdfConfig | new instance | PDF‑vägens inställningar. |
Encoding? | EmailEncoding | null | Åsidosätt meddelandekodning. |
Encoding? | SubjectEncoding | null | Åsidosätt ämneskodning. |
Encoding? | BodyEncoding | null | Åsidosätt brödtextkodning. |
bool | SkipExternalImages | false | Ladda inte fjärrrefererade bilder. Rekommenderas för opålitlig e‑post. |
bool | RemoveLastWhitePage | false | Ta bort en avslutande tom sida. |
bool | UseAntiAliasing | false | Aktivera kantutjämning. |
bool | UseHighQualityRendering | false | Föredra renare, långsammare rendering. |
TimeSpan? | TimeZoneOffset | null | Åsidosätt tidszon som används för datum. |
bool | ForcePageSize | false | Tvinga fasta sidmått. |
ImageConfig, TiffConfig och PsdConfig
ImageConfig omfattar JPG, JPEG, JPE, PNG, BMP, GIF, ICO, EPS, TGA, WEBP, CDR, CMX, DNG, EMF, WMF, AVIF och SVG. Dess standard‑DPI är 100.
| Konfiguration | Egenskap | Standard | Beteende |
|---|---|---|---|
ImageConfig | MaxImagePixelSize | 3000 | Maximal bredd/höjd. 0 betyder obegränsat; noll‑värden under 50 ignoreras. |
ImageConfig | TransparentPng | true | Bevara PNG‑transparens; false använder vit bakgrund. |
TiffConfig | no additional properties | DPI 200 | Använder endast BaseConfig; stödjer flersidig TIFF. |
PsdConfig | MaxImagePixelSize | 3000 | Samma 0/min‑50‑validering som ImageConfig; standard‑DPI är 100. |
DicomConfig
Format: DCM, IMA. Standard‑effektiv DPI: 100. Kräver DICOM‑plugin.
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
int | HorizontalResolution | 100 effective | Explicit horisontell DPI; annars ImageResolution, sedan 100. |
int | VerticalResolution | 100 effective | Explicit vertikal DPI; annars ImageResolution, sedan 100. |
int | AnimationFrameDelayMs | 100 | Fördröjning för flermotors‑animation; GIF‑tidtagning använder 10 ms‑enheter. |
ushort | LoopCount | 0 | 0 loopar för alltid; positiva värden stoppar efter angivet antal. |
DicomDisplayMode | DisplayMode | AnimationAndFrames | AnimationOnly, FramesOnly eller kombinerad översikt plus statiska ramar. |
TxtConfig
Format: TXT. Standard‑DPI: 200.
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
DocPaperSize | PaperSize | A4 | Utdata‑pappersstorlek. |
Encoding? | FileEncoding | null | null använder UTF‑8. |
string | FontInformation | "" | Teckensnittsinformation för text‑rendering. |
Använd WordConfig när ren text behöver rikare sidlayout‑beteende.
ProjectConfig
Format: MPP, MPPX, MPX. Standard‑DPI: 200.
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
bool | DefaultRender | true | Inbyggd Gantt‑bild; false använder en text‑baserad PDF‑väg. |
PdfConfig | PdfConfig | new instance | PDF‑vägens inställningar. |
bool | ExportPdfA | true | Arkiv‑PDF/A‑utdata. |
MppPaperSize | PaperSize | Ledger | Projekt‑utdata‑pappersstorlek. |
MppTimeScale | TimeScale | Months | Days eller Months. |
MppFormat | PresentationFormat | GanttChart | GanttChart, TaskUsage, ResourceUsage, ResourceSheet eller TaskSheet. |
För exakt text‑koordinatsökning, använd DefaultRender = false.
VisioConfig
Format: VSD, VSDX, VSS, VSSX, VST, VSTX, VDX, VSX, VSDM. Standard‑DPI: 200.
| Typ | Egenskap | Standard | Beteende |
|---|---|---|---|
bool | DefaultRender | true | Inbyggd diagram‑rendering; false använder PDF‑omdirigeringen. |
PdfConfig | PdfConfig | new instance | PDF‑vägens inställningar. |
bool | ExportPdfA | true | Arkiv‑PDF/A‑utdata. |
HtmlConfig, EpubConfig, MhtConfig och XpsConfig
Alla fyra har standard‑200 DPI och exponerar en nästlad PdfConfig.
| Konfiguration | Format | DefaultRender | Ytterligare egenskaper/beteende |
|---|---|---|---|
HtmlConfig | HTML, HTM | true | Inbyggd rendering; använd false för en text‑baserad PDF‑sökväg. |
EpubConfig | EPUB | true | Inbyggd rendering; false använder PDF. |
MhtConfig | MHT, MHTML | true på klassen; false i den automatiska katalogen | Den normala öppningen utan konfiguration använder den sökbara PDF‑omdirigeringen. En explicit konstruerad standardinstans renderar inbyggt. |
XpsConfig | XPS | false | Använder PDF‑vägen som standard; sätt true för inbyggd bild‑rendering. |
Konfigurationsexempel per familj
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‑filändelse‑val
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
};Var den här sidan till hjälp?