Formatkonfigurationer

Fullständiga renderingsalternativ per format

Varje dokument öppnas med en BaseConfig‑implementation. Skicka en till OpenDocumentAsync (eller OpenDocument) eller låt formatkatalogen skapa sin standard. Alla klasser nedan finns i Doconut‑namnutrymmet.

csharp
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ämlighetsegenskaper som läser och skriver den nästlade PdfConfig.

DefaultRender = true väljer den inbyggda formatrenderaren. För format med en PDF‑omdirigering konverterar false först till en PDF i minnet och använder sedan PDF‑visaren. Den vägen är ofta användbar för textsökning med koordinater, men medför en extra konvertering.

Om inget annat anges visar tabellerna standardvärden för konstruktorer/egenskaper. Den automatiska formatkatalogen åsidosätter medvetet två av dem: den skapar ExcelConfig med SplitWorksheets = true och MhtConfig med DefaultRender = false.

BaseConfig

TypEgenskapStandardBeteende
intImageResolution00 använder formatets standard. Giltigt explicit intervall är 25‑300 DPI; ogiltiga tilldelningar ignoreras.
stringDocumentCulture""Lokalkod för datum och tal. Icke‑tomma värden trimmas; tomma tilldelningar ignoreras.
stringPassword""Lösenord för skyddat dokument. DocOptions.Password kopieras hit automatiskt.
boolShowUItrueKompatibilitetsegenskap; den aktuella renderaren använder den inte för att styra webbläsarens verktygsfält.
boolCachePagestrueCacha renderade sidbilder för dokumentsessionen.

PdfConfig

Format: PDF. Standard DPI: 200.

TypEgenskapStandardBeteende
boolDefaultRendertrueKompatibilitetsswitch. Den aktuella fabriken använder den inbyggda PDF‑visaren.
boolAllowSearchfalseBygg/använd PDF-textsökindexet. Kräver licenskapaciteten Search för förfrågningar.
boolAllowCopyfalseTillåt textmarkering/kopiering.
boolExtractHyperlinksfalseExtrahera länkrektanglar för klient‑overlays.
intHyperlinksPageCount0Maximalt antal sidor som genomsöks för länkar; 0 betyder varje sida.
boolCompressImagesfalseKomprimera inbäddade bilder före rendering.
intCompressQuality100JPEG‑kvalitet som används när komprimering är aktiverad.
boolResizeImagesfalseÄndra storlek på inbäddade bilder före rendering.
intResizeResolution300MåldPI för ändrade bilder.
boolCompressFastfalseFöredra den snabbare, lägre kvalitetskomprimeringsvägen.
boolFixInvalidImagesfalseFörsök reparera ogiltiga inbäddade bilder.
boolSplitSegmentsfalseSammanslå ord som delats över linjesegment för att förbättra sökning/kopiering.

showHyperlinks i ViewerConfig styr klient‑overlayen, medan ExtractHyperlinks styr serverextraktionen. Aktivera båda.

WordConfig

Format: DOC, DOCX, DOCM, DOT, DOTX, DOTM, RTF, ODT, OTT, XML. Standard DPI: 200.

TypEgenskapStandardBeteende
boolDefaultRendertrueInbyggd Word-rendering; false använder PDF‑omdirigeringen.
PdfConfigPdfConfignew instanceInställningar som används av PDF-/sökvägen.
DocPaperSizePaperSizeA4Utskriftspappersstorlek. Använd Custom med bredd/höjd.
intPaperWidth595Anpassad bredd i punkter.
intPaperHeight841Anpassad höjd i punkter.
boolRemovePaperMarginfalseTa bort dokumentets sidomarginaler.
boolRenderPageColortrueBevara Words konfigurerade sidfärg; false renderar vita sidor.
boolExportPdfAfalseAnvänd arkiv-PDF/A på PDF‑vägen.
Encoding?FileEncodingnullÅsidosätt källkodning.
stringFontInfo""Information om teckensnittssubstitution.
string[]?FontFoldersnullYtterligare teckensnittskataloger — användbart på en server som saknar de teckensnitt som dokumenten använder.
boolAllowSearchfalseDelegerar till PdfConfig.AllowSearch.
boolAllowCopyfalseDelegerar till PdfConfig.AllowCopy.
TableAutoFitBehaviorAutoFitAllTablesNoneNone, AutoFitToContents eller AutoFitToWindow.

ExcelConfig

Format: XLS, XLSX, XLSM, XLSB, XLTX, XLTM, ODS, CSV. Standard DPI: 200.

TypEgenskapStandardBeteende
boolDefaultRendertrueInbyggd bladrendering; false använder PDF‑omdirigeringen.
PdfConfigPdfConfigny instansInställningar för PDF‑/sökvägen.
ExcelPaperSizePaperSizePaperA4Utskriftspappersstorlek.
doublePaperMargins0.25Sidmarginaler i tum.
boolPaperLandscapetrueLandskapsrendering av blad.
boolAutoFitContentsfalseAutomatisk anpassning av radhöjder och kolumnbredder.
boolRemoveEmptyContenttrueKomprimerar utskriften genom att utesluta tomt innehåll.
boolCalculateFormulatrueBeräknar om formler innan rendering.
boolShowRowColumnHeaderstrueInkluderar kalkylbladsrubriker.
boolExportPdfAfalseAnvänder PDF/A på PDF‑sökvägen.
boolSplitWorksheetsfalseBehåller arbetsblad som separata sidgrupper.
boolShowEmptyWorkSheetsfalseInkluderar tomma arbetsblad.
boolExportLandscapefalseTvingar landskapsexport.
boolExportOnePagePerSheetfalseAnpassar varje arbetsblad till en utskriftssida.
boolMemoryOptimizationPreferencetrueMinskar maxminne, eventuellt på bekostnad av hastighet.
boolAutoTrimWorksheetRenderRangetrueRenderar endast det synliga använda området när inget explicit utskriftsområde finns.
boolAutoTrimPreserveExistingPrintAreatrueBevarar arbetsboksdefinierade utskriftsområden under automatisk trimning.
string?PrintAreanullExplicit område såsom "A1:Z100".
boolPrintGridlinesfalseSkriver ut arbetsbladsrutnät.
boolPrintHeadingsfalseSkriver ut rad‑/kolumnrubriker.
List<string>SheetNamesemptyBegränsar rendering till namngivna arbetsblad.
CustomStyleCell?CustomStylesnullValfria formatöverskrivningar för datum/decimal/heltal.
boolAllowSearchfalseDelegerar till PdfConfig.AllowSearch.
boolAllowCopyfalseDelegerar 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 en 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.

TypEgenskapStandardBeteende
boolDefaultRendertrueInbyggd bildrendering; false använder PDF‑omdirigeringen.
boolFastLoadfalseUndviker rendering av den första bilden vid öppning; använder metadata och renderar vid behov.
PdfConfigPdfConfigny instansInställningar för PDF‑/sökbeteende.
stringFontInfo""Information om teckensnittssubstitution.
string[]?FontFoldersnullYtterligare teckensnittskataloger.
boolAllowSearchfalseDelegerar till PdfConfig.AllowSearch.
boolAllowCopyfalseDelegerar till PdfConfig.AllowCopy.

Installera de teckensnitt som presentationerna använder på servern, eller peka FontFolders mot en mapp som innehåller dem. En Windows Server utan Office har mycket färre teckensnitt än en utvecklingsmaskin, och saknade teckensnitt ersätts utan något fel.

CadConfig

Format: DWG, DXF, DGN. Standard DPI: 200.

TypEgenskapStandardBeteende
boolDefaultRendertrueInbyggd CAD‑rendering; false använder PDF‑omdirigeringen.
PdfConfigPdfConfigny instansInställningar för PDF‑sökväg.
boolExportPdfAfalseArkiveringsutdata i PDF/A.
boolShowColortrueFärg istället för monokrom.
boolWhiteBackgroundtrueVit bakgrund istället för svart.
shortLineWidth25CAD‑streckbredd.
boolShowLayoutsfalseRenderar layoutflikar.
boolShowModeltrueRenderar modellutrymme.
boolCheck3DSolidtrueBearbetar 3D‑solider.
boolExportAllLayoutsfalseExporterar alla layouter, åsidosätter modell/layout‑val.
boolLimitMinimumSizefalseTillämpar MinimumSize.
intMinimumSize700Minsta utskriftsstorlek i pixlar.
boolLimitMaximumSizefalseTillämpar MaximumSize.
intMaximumSize700Största utskriftsstorlek i pixlar.
boolShowAllLayoutsDgnfalseInkluderar alla DGN‑layouter.
boolAutomaticLayoutScalingtrueSkalar automatiskt layouter.
floatPdfMargins0.5PDF‑marginal i tum.
RenderQualityQualityImageLowRasterkvalitet: Low, Medium eller High.
RenderQualityQualityTextMediumTextkvalitet: Low, Medium eller High.

EmailConfig

Format: EML, EMLX, MSG. Standard DPI: 200.

TypEgenskapStandardBeteende
boolDefaultRendertrueInbyggd e‑postrendering; false använder PDF‑omdirigeringen.
PdfConfigPdfConfignew instanceInställningar för PDF‑sökväg.
Encoding?EmailEncodingnullÅsidosätt meddelandekodning.
Encoding?SubjectEncodingnullÅsidosätt ämneskodning.
Encoding?BodyEncodingnullÅsidosätt brödtextkodning.
boolSkipExternalImagesfalseLadda inte bilder som refereras på distans. Rekommenderas för opålitlig e‑post.
boolRemoveLastWhitePagefalseTa bort en avslutande tom sida.
boolUseAntiAliasingfalseAktivera kantutjämning.
boolUseHighQualityRenderingfalseFöredra renare, långsammare rendering.
TimeSpan?TimeZoneOffsetnullÅsidosätt tidszonen som används för datum.
boolForcePageSizefalseTvinga fasta sidmått.

ImageConfig, TiffConfig, and 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.

KonfigurationEgenskapStandardBeteende
ImageConfigMaxImagePixelSize3000Maximal bredd/höjd. 0 betyder obegränsat; icke‑nollvärden under 50 ignoreras.
ImageConfigTransparentPngtrueBevara PNG-transparens; false använder en vit bakgrund.
TiffConfigno additional propertiesDPI 200Ingen ytterligare egenskaper. DPI 200. Använder endast BaseConfig; stödjer flersidig TIFF.
PsdConfigMaxImagePixelSize3000Samma 0/minimum‑50‑validering som ImageConfig; standard DPI är 100.

DicomConfig

Format: DCM, IMA. Standard effektiv DPI: 100. Kräver DICOM‑plugin. I detta paket renderas DICOM‑filer fullständigt, men teknisk metadata är inte tillgänglig — se DICOM Plugin.

TypEgenskapStandardBeteende
intHorizontalResolution100 effectiveExplicit horisontell DPI; annars ImageResolution, sedan 100.
intVerticalResolution100 effectiveExplicit vertikal DPI; annars ImageResolution, sedan 100.
intAnimationFrameDelayMs100Fördröjning för flermotorsanimation; GIF-timing använder 10 ms‑enheter.
ushortLoopCount00 loopar för alltid; positiva värden stoppar efter det antalet.
DicomDisplayModeDisplayModeAnimationAndFramesAnimationOnly, FramesOnly eller kombinerad översikt plus statiska ramar.

TxtConfig

Format: TXT. Standard DPI: 200.

TypEgenskapStandardBeteende
DocPaperSizePaperSizeA4Utskriftsformat för papper.
Encoding?FileEncodingnullnull använder UTF-8.
stringFontInformation""Teckensnittsinformation för textrendering.

Använd WordConfig när vanlig text behöver rikare sidlayoutsbeteende.

ProjectConfig

Format: MPP, MPPX, MPX. Standard DPI: 200.

TypEgenskapStandardBeteende
boolDefaultRendertrueInbyggd Gantt-bild; false använder en textbaserad PDF‑sökväg.
PdfConfigPdfConfignew instanceInställningar för PDF‑sökväg.
boolExportPdfAtrueArkiveringsutdata PDF/A.
MppPaperSizePaperSizeLedgerUtskriftsformat för projekt.
MppTimeScaleTimeScaleMonthsDays eller Months.
MppFormatPresentationFormatGanttChartGanttChart, TaskUsage, ResourceUsage, ResourceSheet eller TaskSheet.

För exakt textkoordinatsökning, använd DefaultRender = false.

VisioConfig

Format: VSD, VSDX, VSS, VSSX, VST, VSTX, VDX, VSX, VSDM. Standard DPI: 200.

TypEgenskapStandardBeteende
boolDefaultRendertrueInbyggd diagramrendering; false använder PDF‑omdirigeringen.
PdfConfigPdfConfignew instanceInställningar för PDF‑sökväg.
boolExportPdfAtrueArkiveringsutdata PDF/A.

HtmlConfig, EpubConfig, MhtConfig, and XpsConfig

Alla fyra har standard 200 DPI och exponerar en inbäddad PdfConfig.

KonfigurationFormatDefaultRenderYtterligare egenskaper/beteende
HtmlConfigHTML, HTMtrueInbyggd rendering; använd false för en textbaserad PDF‑sökväg.
EpubConfigEPUBtrueInbyggd rendering; false använder PDF.
MhtConfigMHT, MHTMLtrue on the class; false in the automatic catalogtrue på klassen; false i den automatiska katalogen
XpsConfigXPSfalseAnvänder PDF‑sökvägen som standard; sätt true för inbyggd bildrendering.

Konfigurationsexempel per familj

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

Urval per filändelse

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

Var den här sidan hjälpsam?