Format Yapılandırmaları
Her format için tam render seçenekleri
Her belge, bir BaseConfig uygulamasıyla açılır. Birini OpenDocumentAsync'e 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.
Bu tek ad alanı yeni. Önceki .NET Standard kütüphanesi bu türleri Doconut.Configs, Doconut.Configs.View ve Doconut.Models arasında dağıtmıştı. Tür adları değişmedi — çoğu dosyada tek düzenleme iki using satırını silmek. Bkz. göç rehberi.
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önlendirebilen 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 işleyicisini seçer. PDF yönlendirmeli formatlarda, false önce bellekte bir PDF'ye dönüştürür ve ardından PDF görüntüleyiciyi kullanır. Bu yol genellikle metin‑koordinat araması için faydalıdır, ancak ek bir dönüşüm maliyeti getirir.
Aksi belirtilmedikçe, tablolar yapıcı/özellik varsayılanlarını gösterir. Otomatik format kataloğu bilinçli olarak ikisini geçersiz kılar: ExcelConfig'i SplitWorksheets = true ile ve MhtConfig'i DefaultRender = false ile oluşturur.
BaseConfig
| Tür | Özellik | Varsayılan | Davranış |
|---|---|---|---|
int | ImageResolution | 0 | 0 format varsayılanını kullanır. Geçerli açık aralık 25‑300 DPI'dir; geçersiz atamalar yoksayılır. |
string | DocumentCulture | "" | Tarih ve sayıların yerel ayarı. Boş olmayan değerler kırpılır; boş atamalar yoksayılır. |
string | Password | "" | Korunan belge şifresi. DocOptions.Password otomatik olarak buraya kopyalanır. |
bool | ShowUI | true | Uyumluluk özelliği; mevcut işleyici bunu tarayıcı araç çubuğunu kontrol etmek için kullanmaz. |
bool | CachePages | true | Belge oturumu için oluşturulan sayfa görüntülerini önbelleğe al. |
PdfConfig
Formatlar: PDF. Varsayılan DPI: 200.
| Tür | Özellik | Varsayılan | Davranış |
|---|---|---|---|
bool | DefaultRender | true | Uyumluluk anahtarı. Mevcut fabrika yerel PDF görüntüleyiciyi kullanır. |
bool | AllowSearch | false | PDF metin‑arama dizinini oluşturur/kullanır. İstekler için Search lisans yeteneği gerekir. |
bool | AllowCopy | false | Metin seçme/kopyalama işlemlerine izin verir. |
bool | ExtractHyperlinks | false | İstemci bindirmeleri için bağlantı dikdörtgenlerini çıkarır. |
int | HyperlinksPageCount | 0 | Bağlantılar için taranan azami sayfa sayısı; 0 tüm sayfalar demektir. |
bool | CompressImages | false | Oluşturma öncesi gömülü görüntüleri sıkıştır. |
int | CompressQuality | 100 | Sıkıştırma etkin olduğunda kullanılan JPEG kalitesi. |
bool | ResizeImages | false | Oluşturma öncesi gömülü görüntüleri yeniden boyutlandır. |
int | ResizeResolution | 300 | Yeniden boyutlandırılmış görüntüler için hedef DPI. |
bool | CompressFast | false | Daha hızlı, düşük kaliteli sıkıştırma yolunu tercih et. |
bool | FixInvalidImages | false | Geçersiz gömülü görüntüleri onarmaya çalış. |
bool | SplitSegments | false | Arama/kopyayı iyileştirmek için satır segmentleri arasında bölünmüş kelimeleri birleştir. |
ViewerConfig içindeki showHyperlinks, istemci bindirmesini kontrol eder, ExtractHyperlinks ise sunucu çıkarımını kontrol eder. İkisini de etkinleştirin.
WordConfig
Formatlar: DOC, DOCX, DOCM, DOT, DOTX, DOTM, RTF, ODT, OTT, XML. Varsayılan DPI: 200.
| Tür | Özellik | Varsayılan | Davranış |
|---|---|---|---|
bool | DefaultRender | true | Yerel Word render; false PDF yönlendirmesini kullanır. |
PdfConfig | PdfConfig | yeni örnek | PDF/arama yolu tarafından kullanılan ayarlar. |
DocPaperSize | PaperSize | A4 | Çıktı kağıt boyutu. Genişlik/yükseklik ile Custom kullanın. |
int | PaperWidth | 595 | Nokta cinsinden özel genişlik. |
int | PaperHeight | 841 | Nokta cinsinden özel yükseklik. |
bool | RemovePaperMargin | false | Belge sayfa kenar boşluklarını kaldır. |
bool | RenderPageColor | true | Word'ün ayarlanmış sayfa rengini koru; false beyaz sayfalar oluşturur. |
bool | ExportPdfA | false | PDF yolunda arşiv PDF/A kullan. |
Encoding? | FileEncoding | null | Kaynak kodlamasını geçersiz kıl. |
string | FontInfo | "" | Yazı tipi ikame bilgisi. |
string[]? | FontFolders | null | Ek yazı tipi dizinleri, özellikle Linux/konteynerlerde faydalıdır. |
bool | AllowSearch | false | PdfConfig.AllowSearch'e yönlendirir. |
bool | AllowCopy | false | PdfConfig.AllowCopy'e yönlendirir. |
TableAutoFitBehavior | AutoFitAllTables | None | None, AutoFitToContents veya AutoFitToWindow. |
ExcelConfig
Biçimler: XLS, XLSX, XLSM, XLSB, XLTX, XLTM, ODS, CSV. Varsayılan DPI: 200.
| Tür | Özellik | Varsayılan | Davranış |
|---|---|---|---|
bool | DefaultRender | true | Yerel sayfa render'ı; false PDF yönlendirmesini kullanır. |
PdfConfig | PdfConfig | yeni örnek | PDF/arama yolu için ayarlar. |
ExcelPaperSize | PaperSize | PaperA4 | Çıktı kağıt boyutu. |
double | PaperMargins | 0.25 | Sayfa kenar boşlukları inç cinsinden. |
bool | PaperLandscape | true | Yatay sayfa render'ı. |
bool | AutoFitContents | false | Satır yüksekliği ve sütun genişliğini otomatik ayarlar. |
bool | RemoveEmptyContent | true | Boş içeriği hariç tutarak çıktıyı sıkılaştır. |
bool | CalculateFormula | true | Render'dan önce formülleri yeniden hesaplar. |
bool | ShowRowColumnHeaders | true | Elektronik tablo başlıklarını dahil eder. |
bool | ExportPdfA | false | PDF yolunda PDF/A kullan. |
bool | SplitWorksheets | false | Çalışma sayfalarını ayrı sayfa grupları olarak tut. |
bool | ShowEmptyWorkSheets | false | Boş çalışma sayfalarını dahil eder. |
bool | ExportLandscape | false | Yatay dışa aktarmayı zorlar. |
bool | ExportOnePagePerSheet | false | Her çalışma sayfasını tek çıktı sayfasına sığdır. |
bool | MemoryOptimizationPreference | true | Maksimum belleği azaltır, muhtemelen biraz hız kaybı ile. |
bool | AutoTrimWorksheetRenderRange | true | Açık bir yazdırma alanı yoksa yalnızca görünen kullanılan aralığı render eder. |
bool | AutoTrimPreserveExistingPrintArea | true | Otomatik kırpma sırasında çalışma kitabı tanımlı yazdırma alanlarını korur. |
string? | PrintArea | null | Örneğin "A1:Z100" gibi açık aralık. |
bool | PrintGridlines | false | Çalışma sayfası ızgaralarını yazdır. |
bool | PrintHeadings | false | Satır/sütun başlıklarını yazdır. |
List<string> | SheetNames | empty | Render'i yalnızca adlandırılmış çalışma sayfalarıyla sınırlayın. |
CustomStyleCell? | CustomStyles | null | İsteğe bağlı tarih/ondalık/tamsayı biçimlendirme geçersiz kılmaları. |
bool | AllowSearch | false | PdfConfig.AllowSearch'e devredilir. |
bool | AllowCopy | false | PdfConfig.AllowCopy'e devredilir. |
CustomStyleCell, CustomStyleDateTime, CustomStyleNumberDecimal ve CustomStyleNumberInteger adlı, tümü nullable string olan özellikleri 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 | Özellik | Varsayılan | Davranış |
|---|---|---|---|
bool | DefaultRender | true | Yerel slayt render'ı; false PDF yönlendirmesini kullanır. |
bool | FastLoad | false | Açılışta ilk slaytı render etmeyi önler; meta verileri kullanır ve talep üzerine render eder. |
PdfConfig | PdfConfig | yeni örnek | PDF/arama davranışı için ayarlar. |
string | FontInfo | "" | Yazı tipi ikame bilgisi. |
string[]? | FontFolders | null | Ek yazı tipi dizinleri. |
bool | AllowSearch | false | PdfConfig.AllowSearch'e devredilir. |
bool | AllowCopy | false | PdfConfig.AllowCopy'e devredilir. |
Linux ve macOS'ta, mevcut motorla sunum render'ı libgdiplus ve System.Drawing.EnableUnixSupport=true gerektirir. Sunumda kullanılan yazı tiplerini kurun veya FontFolders sağlayın.
CadConfig
Biçimler: DWG, DXF, DGN. Varsayılan DPI: 200.
| Tür | Özellik | Varsayılan | Davranış |
|---|---|---|---|
bool | DefaultRender | true | Yerel CAD render'ı; false PDF yönlendirmesini kullanır. |
PdfConfig | PdfConfig | yeni örnek | PDF yolu ayarları. |
bool | ExportPdfA | false | Arşiv PDF/A çıktısı. |
bool | ShowColor | true | Monokrom yerine renk. |
bool | WhiteBackground | true | Siyah yerine beyaz arka plan. |
short | LineWidth | 25 | CAD çizgi kalınlığı. |
bool | ShowLayouts | false | Düzen sekmelerini render eder. |
bool | ShowModel | true | Model alanını render eder. |
bool | Check3DSolid | true | 3D katı nesneleri işler. |
bool | ExportAllLayouts | false | Tüm düzenleri dışa aktarır, model/düzen seçimini geçersiz kılar. |
bool | LimitMinimumSize | false | MinimumSize uygular. |
int | MinimumSize | 700 | Piksel cinsinden minimum çıktı boyutu. |
bool | LimitMaximumSize | false | MaximumSize uygular. |
int | MaximumSize | 700 | Piksel cinsinden maksimum çıktı boyutu. |
bool | ShowAllLayoutsDgn | false | Tüm DGN düzenlerini dahil eder. |
bool | AutomaticLayoutScaling | true | Düzenleri otomatik ölçeklendir. |
float | PdfMargins | 0.5 | PDF kenar boşluğu inç cinsinden. |
RenderQuality | QualityImage | Low | Raster kalitesi: Low, Medium veya High. |
RenderQuality | QualityText | Medium | Metin kalitesi: Low, Medium veya High. |
EmailConfig
Biçimler: EML, EMLX, MSG. Varsayılan DPI: 200.
| Tür | Özellik | Varsayılan | Davranış |
|---|---|---|---|
bool | DefaultRender | true | Yerel e-posta render'ı; false PDF yönlendirmesini kullanır. |
PdfConfig | PdfConfig | new instance | PDF-yolu ayarları. |
Encoding? | EmailEncoding | null | Mesaj kodlamasını geçersiz kılar. |
Encoding? | SubjectEncoding | null | Konu kodlamasını geçersiz kılar. |
Encoding? | BodyEncoding | null | Gövde kodlamasını geçersiz kılar. |
bool | SkipExternalImages | false | Uzaktan referans verilen görüntüleri yükleme. Güvenilmeyen e-postalar için önerilir. |
bool | RemoveLastWhitePage | false | Sondaki boş sayfayı kaldır. |
bool | UseAntiAliasing | false | Anti-aliasing'i etkinleştir. |
bool | UseHighQualityRendering | false | Daha temiz, daha yavaş render tercih et. |
TimeSpan? | TimeZoneOffset | null | Tarihler için kullanılan saat dilimini geçersiz kılar. |
bool | ForcePageSize | false | Sabit sayfa boyutlarını zorla. |
ImageConfig, TiffConfig ve 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'sı 100.
| Yapılandırma | Özellik | Varsayılan | Davranış |
|---|---|---|---|
ImageConfig | MaxImagePixelSize | 3000 | Maksimum genişlik/yükseklik. 0 sınırsız anlamına gelir; 50'nin altındaki sıfır olmayan değerler yok sayılır. |
ImageConfig | TransparentPng | true | PNG şeffaflığını koru; false beyaz arka plan kullanır. |
TiffConfig | ek özellik yok | DPI 200 | Sadece BaseConfig kullanır; çok sayfalı TIFF'i destekler. |
PsdConfig | MaxImagePixelSize | 3000 | ImageConfig ile aynı 0/minimum-50 doğrulaması; varsayılan DPI 100. |
DicomConfig
Biçimler: DCM, IMA. Varsayılan etkili DPI: 100. DICOM eklentisi gerektirir.
| Tür | Özellik | Varsayılan | Davranış |
|---|---|---|---|
int | HorizontalResolution | 100 etkili | Açık yatay DPI; aksi takdirde ImageResolution, sonra 100. |
int | VerticalResolution | 100 etkili | Açık dikey DPI; aksi takdirde ImageResolution, sonra 100. |
int | AnimationFrameDelayMs | 100 | Çok çerçeveli animasyon gecikmesi; GIF zamanlaması 10 ms birimlerini kullanır. |
ushort | LoopCount | 0 | 0 sonsuza kadar döner; pozitif değerler o sayıya ulaştıktan sonra durur. |
DicomDisplayMode | DisplayMode | AnimationAndFrames | AnimationOnly, FramesOnly veya birleşik genel bakış artı statik çerçeveler. |
TxtConfig
Biçim: TXT. Varsayılan DPI: 200.
| Tür | Özellik | Varsayılan | Davranış |
|---|---|---|---|
DocPaperSize | PaperSize | A4 | Çıktı kağıt boyutu. |
Encoding? | FileEncoding | null | null UTF-8 kullanır. |
string | FontInformation | "" | Metin render'ı için yazı tipi bilgisi. |
Düz metnin daha zengin sayfa düzeni davranışı gerektirdiğinde WordConfig kullanın.
ProjectConfig
Biçimler: MPP, MPPX, MPX. Varsayılan DPI: 200.
| Tür | Özellik | Varsayılan | Davranış |
|---|---|---|---|
bool | DefaultRender | true | Yerel Gantt görüntüsü; false metin tabanlı PDF yolunu kullanır. |
PdfConfig | PdfConfig | new instance | PDF-yolu ayarları. |
bool | ExportPdfA | true | Arşiv PDF/A çıktısı. |
MppPaperSize | PaperSize | Ledger | Proje çıktısı kağıt boyutu. |
MppTimeScale | TimeScale | Months | Days veya Months. |
MppFormat | PresentationFormat | GanttChart | GanttChart, 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 | Özellik | Varsayılan | Davranış |
|---|---|---|---|
bool | DefaultRender | true | Yerel diyagram render'ı; false PDF yönlendirmesini kullanır. |
PdfConfig | PdfConfig | new instance | PDF-yolu ayarları. |
bool | ExportPdfA | true | Arşiv PDF/A çıktısı. |
HtmlConfig, EpubConfig, MhtConfig ve XpsConfig
Dört yapı da varsayılan olarak 200 DPI'ye sahiptir ve iç içe bir PdfConfig sunar.
| Yapı | Biçimler | DefaultRender | Ek özellikler/davranış |
|---|---|---|---|
HtmlConfig | HTML, HTM | true | Yerel render; metin tabanlı PDF arama yolu için false kullanın. |
EpubConfig | EPUB | true | Yerel render; false PDF kullanır. |
MhtConfig | MHT, MHTML | sınıfta true; otomatik katalogda false | Normal yapılandırmasız açma, aranabilir PDF yönlendirmesini kullanır. Açıkça oluşturulmuş varsayılan örnek yerel olarak render eder. |
XpsConfig | XPS | false | Varsayılan olarak PDF yolunu kullanır; yerel görüntü render'ı için true ayarlayın. |
Aileye göre yapılandırma örnekleri
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
}
};Uzantıya göre seçim
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
};Bu sayfa yardımcı oldu mu?