Biçim Yapılandırmaları

Biçim başına tam render seçenekleri

Her belge, bir BaseConfig uygulamasıyla açılır. Bunu OpenDocumentAsync (veya OpenDocument) yöntemine geçirin veya format kataloğunun varsayılanını oluşturmasına izin verin. Aşağıdaki tüm sınıflar Doconut ad alanında bulunur.

csharp
var token = await viewer.OpenDocumentAsync(path, new PdfConfig
{
    AllowSearch = true,
    AllowCopy   = true,
    ImageResolution = 150
});

Kalıtım ve iç içe PDF ayarları

Her format, beş BaseConfig özelliğini devralır. PDF üzerinden yönlendirilebilen formatlar, iç içe bir PdfConfig sunar. WordConfig, ExcelConfig ve PptConfig içinde, AllowSearch ve AllowCopy iç içe PdfConfig'i okuyan ve yazan kolaylık özellikleridir.

DefaultRender = true yerel format renderlayıcısını seçer. PDF yönlendirmeli formatlarda, false önce bellekte bir PDF oluşturur ve ardından PDF görüntüleyiciyi kullanır. Bu yol, metin‑koordinat araması için sıkça yararlıdır, ancak ek bir dönüşüm maliyeti getirir.

Aksi belirtilmedikçe, tablolar yapılandırıcı/özellik varsayılanlarını gösterir. Otomatik format kataloğu bilerek ikisinde değişiklik yapar: ExcelConfig oluşturulurken SplitWorksheets = true ve MhtConfig için DefaultRender = false ayarlanır.

BaseConfig

TürÖzellikVarsayılanDavranış
intImageResolution00 format varsayılanını kullanır. Geçerli açık aralık 25-300 DPI'dir; geçersiz atamalar yok sayılır.
stringDocumentCulture""Tarih ve sayıların yerel ayarı. Boş olmayan değerler kırpılır; boş atamalar yok sayılır.
stringPassword""Korunan belge şifresi. DocOptions.Password otomatik olarak buraya kopyalanır.
boolShowUItrueUyumluluk özelliği; mevcut renderlayıcı bunu tarayıcı araç çubuğunu kontrol etmek için kullanmaz.
boolCachePagestrueBelge oturumu için renderlanmış sayfa görüntülerini önbelleğe al.

PdfConfig

Biçimler: PDF. Varsayılan DPI: 200.

TürÖzellikVarsayılanDavranış
boolDefaultRendertrueUyumluluk anahtarı. Mevcut fabrika yerel PDF görüntüleyiciyi kullanır.
boolAllowSearchfalsePDF metin arama indeksini oluşturur/kullanır. İstekler için Search lisans yeteneği gerekir.
boolAllowCopyfalseMetin seçme/kopyalama işlemlerine izin verir.
boolExtractHyperlinksfalseİstemci katmanları için bağlantı dikdörtgenlerini çıkarır.
intHyperlinksPageCount0Bağlantılar için taranan maksimum sayfa; 0 tüm sayfalar demektir.
boolCompressImagesfalseRenderlamadan önce gömülü görüntüleri sıkıştır.
intCompressQuality100Sıkıştırma etkin olduğunda kullanılan JPEG kalitesi.
boolResizeImagesfalseRenderlamadan önce gömülü görüntüleri yeniden boyutlandır.
intResizeResolution300Yeniden boyutlandırılmış görüntüler için hedef DPI.
boolCompressFastfalseDaha hızlı, düşük kaliteli sıkıştırma yolunu tercih et.
boolFixInvalidImagesfalseGeçersiz gömülü görüntüleri onarmaya çalış.
boolSplitSegmentsfalseArama/kopyayı iyileştirmek için satır segmentleri arasında bölünmüş kelimeleri birleştir.

ViewerConfig içindeki showHyperlinks, istemci katmanını kontrol eder, ExtractHyperlinks ise sunucu çıkarımını kontrol eder. İkisini de etkinleştirin.

WordConfig

Biçimler: DOC, DOCX, DOCM, DOT, DOTX, DOTM, RTF, ODT, OTT, XML. Varsayılan DPI: 200.

TürÖzellikVarsayılanDavranış
boolDefaultRendertrueYerel Word renderı; false PDF yönlendirmesini kullanır.
PdfConfigPdfConfigyeni örnekPDF/arama yolunda kullanılan ayarlar.
DocPaperSizePaperSizeA4Çıktı kağıt boyutu. Genişlik/yükseklik ile Custom kullanın.
intPaperWidth595Nokta cinsinden özel genişlik.
intPaperHeight841Nokta cinsinden özel yükseklik.
boolRemovePaperMarginfalseBelge sayfa kenar boşluklarını kaldır.
boolRenderPageColortrueWord'ün ayarlanmış sayfa rengini koru; false beyaz sayfalar renderlar.
boolExportPdfAfalsePDF yolunda arşiv PDF/A kullan.
Encoding?FileEncodingnullKaynak kodlamasını geçersiz kıl.
stringFontInfo""Yazı tipi ikame bilgisi.
string[]?FontFoldersnullEk yazı tipi dizinleri — belgelerin kullandığı yazı tipleri olmayan bir sunucuda faydalıdır.
boolAllowSearchfalsePdfConfig.AllowSearch'e yönlendirir.
boolAllowCopyfalsePdfConfig.AllowCopy'e yönlendirir.
TableAutoFitBehaviorAutoFitAllTablesNoneNone, AutoFitToContents veya AutoFitToWindow.

ExcelConfig

Biçimler: XLS, XLSX, XLSM, XLSB, XLTX, XLTM, ODS, CSV. Varsayılan DPI: 200.

TürÖzellikVarsayılanDavranış
boolDefaultRendertrueYerel sayfa renderı; false PDF yönlendirmesini kullanır.
PdfConfigPdfConfignew instancePDF/arama yolu için ayarlar.
ExcelPaperSizePaperSizePaperA4Çıktı kağıt boyutu.
doublePaperMargins0.25Sayfa kenar boşlukları inç cinsinden.
boolPaperLandscapetrueYatay sayfa renderı.
boolAutoFitContentsfalseSatır yüksekliği ve sütun genişliğini otomatik olarak ayarlar.
boolRemoveEmptyContenttrueBoş içeriği dışarı çıkararak çıktıyı sıkılaştırır.
boolCalculateFormulatrueRenderdan önce formülleri yeniden hesaplar.
boolShowRowColumnHeaderstrueElektronik tablo başlıklarını içerir.
boolExportPdfAfalsePDF yolunda PDF/A kullanır.
boolSplitWorksheetsfalseÇalışma sayfalarını ayrı sayfa grupları olarak tutar.
boolShowEmptyWorkSheetsfalseBoş çalışma sayfalarını içerir.
boolExportLandscapefalseYatay dışa aktarmayı zorlar.
boolExportOnePagePerSheetfalseHer çalışma sayfasını tek bir çıktı sayfasına sığdırır.
boolMemoryOptimizationPreferencetrueMaksimum bellek kullanımını azaltır, muhtemelen biraz hız kaybı ile.
boolAutoTrimWorksheetRenderRangetrueAçık bir baskı alanı yoksa yalnızca görünen kullanılan aralığı renderlar.
boolAutoTrimPreserveExistingPrintAreatrueOtomatik kırpma sırasında çalışma kitabı tanımlı baskı alanlarını korur.
string?PrintAreanullÖrneğin "A1:Z100" gibi açık aralık.
boolPrintGridlinesfalseÇalışma sayfası ızgara çizgilerini yazdır.
boolPrintHeadingsfalseSatır/sütun başlıklarını yazdır.
List<string>SheetNamesemptyRenderı yalnızca adlandırılmış çalışma sayfalarına sınırlayın.
CustomStyleCell?CustomStylesnullİsteğe bağlı tarih/ondalık/tamsayı biçimlendirme geçersiz kılmaları.
boolAllowSearchfalsePdfConfig.AllowSearch'e devredilir.
boolAllowCopyfalsePdfConfig.AllowCopy'e devredilir.

CustomStyleCell CustomStyleDateTime, CustomStyleNumberDecimal ve CustomStyleNumberInteger adlı, hepsi nullable (null olabilir) stringleri ortaya çıkarır.

new ExcelConfig() SplitWorksheets özelliğini false olarak ayarlar; açık bir yapılandırma olmadan bir Excel dosyası açmak format kataloğunu kullanır ve bu da onu true yapar.

PptConfig

Biçimler: PPT, PPTX, PPTM, PPSX, PPSM, POT, POTX, POTM, ODP. Varsayılan DPI: 200.

TürÖzellikVarsayılanDavranış
boolDefaultRendertrueYerel slayt renderı; false PDF yönlendirmesini kullanır.
boolFastLoadfalseAçılışta ilk slaytı renderlamaktan kaçınır; meta verileri kullanır ve talep üzerine renderlar.
PdfConfigPdfConfignew instancePDF/arama davranışı için ayarlar.
stringFontInfo""Yazı tipi ikame bilgisi.
string[]?FontFoldersnullEk yazı tipi dizinleri.
boolAllowSearchfalsePdfConfig.AllowSearch'e devredilir.
boolAllowCopyfalsePdfConfig.AllowCopy'e devredilir.

Sunumların kullandığı yazı tiplerini sunucuda kurun veya FontFolders'ı bu yazı tiplerini içeren bir klasöre yönlendirin. Office yüklü olmayan bir Windows Server, geliştirme makinesine göre çok daha az yazı tipine sahiptir ve eksik yazı tipleri hatasız olarak ikame edilir.

CadConfig

Biçimler: DWG, DXF, DGN. Varsayılan DPI: 200.

TürÖzellikVarsayılanDavranış
boolDefaultRendertrueYerel CAD renderı; false PDF yönlendirmesini kullanır.
PdfConfigPdfConfignew instancePDF yolu ayarları.
boolExportPdfAfalseArşiv PDF/A çıktısı.
boolShowColortrueMonokrom yerine renk.
boolWhiteBackgroundtrueSiyah yerine beyaz arka plan.
shortLineWidth25CAD çizgi kalınlığı.
boolShowLayoutsfalseDüzen sekmelerini renderla.
boolShowModeltrueModel alanını renderla.
boolCheck3DSolidtrue3D katı nesneleri işle.
boolExportAllLayoutsfalseModel/düzen seçimini geçersiz kılarak tüm düzenleri dışa aktar.
boolLimitMinimumSizefalseMinimumSize uygular.
intMinimumSize700Piksel cinsinden minimum çıktı boyutu.
boolLimitMaximumSizefalseMaximumSize uygular.
intMaximumSize700Piksel cinsinden maksimum çıktı boyutu.
boolShowAllLayoutsDgnfalseTüm DGN düzenlerini içer.
boolAutomaticLayoutScalingtrueDüzenleri otomatik ölçeklendir.
floatPdfMargins0.5PDF kenar boşluğu inç cinsinden.
RenderQualityQualityImageLowRaster kalitesi: Low, Medium veya High.
RenderQualityQualityTextMediumMetin kalitesi: Low, Medium veya High.

EmailConfig

Biçimler: EML, EMLX, MSG. Varsayılan DPI: 200.

TürÖzellikVarsayılanDavranış
boolDefaultRendertrueYerel e-posta renderı; false PDF yönlendirmesini kullanır.
PdfConfigPdfConfignew instancePDF-yolu ayarları.
Encoding?EmailEncodingnullİleti kodlamasını geçersiz kılar.
Encoding?SubjectEncodingnullKonu kodlamasını geçersiz kılar.
Encoding?BodyEncodingnullGövde kodlamasını geçersiz kılar.
boolSkipExternalImagesfalseUzakta referans verilen görüntüleri yükleme. Güvenilmeyen e-postalar için önerilir.
boolRemoveLastWhitePagefalseSondaki boş sayfayı kaldır.
boolUseAntiAliasingfalseAnti-aliasing'i etkinleştir.
boolUseHighQualityRenderingfalseDaha temiz, daha yavaş renderı tercih et.
TimeSpan?TimeZoneOffsetnullTarihler için kullanılan saat dilimini geçersiz kılar.
boolForcePageSizefalseSabit sayfa boyutlarını zorla.

ImageConfig, TiffConfig, and PsdConfig

ImageConfig JPG, JPEG, JPE, PNG, BMP, GIF, ICO, EPS, TGA, WEBP, CDR, CMX, DNG, EMF, WMF, AVIF ve SVG formatlarını kapsar. Varsayılan DPI'si 100'dür.

YapılandırmaÖzellikVarsayılanDavranış
ImageConfigMaxImagePixelSize3000Maksimum genişlik/yükseklik. 0 sınırsız anlamına gelir; 50'nin altındaki sıfır olmayan değerler göz ardı edilir.
ImageConfigTransparentPngtruePNG şeffaflığını koru; false beyaz arka plan kullanır.
TiffConfigno additional propertiesDPI 200Sadece BaseConfig kullanır; çok sayfalı TIFF'ı destekler.
PsdConfigMaxImagePixelSize3000ImageConfig ile aynı 0/minimum-50 doğrulaması; varsayılan DPI 100.

DicomConfig

Biçimler: DCM, IMA. Varsayılan etkili DPI: 100. DICOM eklentisi gerektirir. Bu paket üzerinde DICOM dosyaları tam olarak renderlanır, ancak teknik meta veriler mevcut değildir — bkz. DICOM Eklentisi.

TürÖzellikVarsayılanDavranış
intHorizontalResolution100 effectiveAçık yatay DPI; aksi takdirde ImageResolution, ardından 100.
intVerticalResolution100 effectiveAçık dikey DPI; aksi takdirde ImageResolution, ardından 100.
intAnimationFrameDelayMs100Çok çerçeveli animasyon gecikmesi; GIF zamanlaması 10 ms birimlerini kullanır.
ushortLoopCount00 sonsuz döngü; pozitif değerler belirtilen sayıda döngüden sonra durur.
DicomDisplayModeDisplayModeAnimationAndFramesAnimationOnly, FramesOnly veya birleştirilmiş genel bakış ve sabit çerçeveler.

TxtConfig

Biçim: TXT. Varsayılan DPI: 200.

TürÖzellikVarsayılanDavranış
DocPaperSizePaperSizeA4Çıktı kağıt boyutu.
Encoding?FileEncodingnullnull UTF-8 kullanır.
stringFontInformation""Metin renderı için yazı tipi bilgisi.

Düz metnin daha zengin sayfa düzeni davranışı gerektirdiği durumlarda WordConfig kullanın.

ProjectConfig

Biçimler: MPP, MPPX, MPX. Varsayılan DPI: 200.

TürÖzellikVarsayılanDavranış
boolDefaultRendertrueYerel Gantt görüntüsü; false metin tabanlı PDF yolunu kullanır.
PdfConfigPdfConfignew instancePDF-yolu ayarları.
boolExportPdfAtrueArşiv PDF/A çıktısı.
MppPaperSizePaperSizeLedgerProje çıktısı kağıt boyutu.
MppTimeScaleTimeScaleMonthsDays veya Months.
MppFormatPresentationFormatGanttChartGanttChart, TaskUsage, ResourceUsage, ResourceSheet veya TaskSheet.

Tam metin-koordinat araması için DefaultRender = false kullanın.

VisioConfig

Biçimler: VSD, VSDX, VSS, VSSX, VST, VSTX, VDX, VSX, VSDM. Varsayılan DPI: 200.

TürÖzellikVarsayılanDavranış
boolDefaultRendertrueYerel diyagram renderı; false PDF yönlendirmesini kullanır.
PdfConfigPdfConfignew instancePDF-yolu ayarları.
boolExportPdfAtrueArşiv PDF/A çıktısı.

HtmlConfig, EpubConfig, MhtConfig, and XpsConfig

Dörtü de varsayılan olarak 200 DPI'ye sahiptir ve iç içe bir PdfConfig sunar.

YapılandırmaBiçimlerDefaultRenderEk özellikler/davranış
HtmlConfigHTML, HTMtrueYerel render; metin tabanlı PDF arama yolu için false kullanın.
EpubConfigEPUBtrueYerel render; false PDF kullanır.
MhtConfigMHT, MHTMLtrue sınıfta; false otomatik katalogdaNormal yapılandırmasız açma, aranabilir PDF yönlendirmesini kullanır. Açıkça oluşturulmuş varsayılan örnek yerel olarak renderlar.
XpsConfigXPSfalseVarsayılan olarak PDF yolunu kullanır; yerel görüntü renderı için true ayarlayın.

Aileye göre yapılandırma örnekleri

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

Uzantıya göre seçim

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

Bu sayfa yardımcı oldu mu?