DICOM Eklentisi
DicomPlugin ile tıbbi görüntüleri görüntüleyin
DICOM eklentisi, Doconut'a tıbbi‑görüntü görüntüleme yeteneği ekler: çok‑çerçeveli DICOM dosyaları animasyonlu bir genel bakış, tek tek çerçeveler veya her ikisi olarak işlenebilir. DICOM yalnızca eklenti formatıdır — bu eklenti (ve lisans yeteneği) olmadan .dcm dosyaları hiç açılamaz.
Paketi kurun
dotnet add package Doconut.NET6.DicomSürüm belirtilmemiş komut en son kararlı sürümü kurar. Eklentiyi mevcut 26.7.0 sürümüne sabitlemek için sürümü ayrı olarak geçirin:
dotnet add package Doconut.NET6.Dicom --version 26.7.0DICOM paketini Doconut.NET6 ile aynı sürümde tutun. Paket kimliği
Doconut.NET6.Dicom; .26.7.0 yalnızca indirilen .nupkg dosya adında yer alır.
Eklentiyi kaydedin
builder.Services.AddDoconut(options =>
{
options.AddPlugin<Doconut.Plugins.Dicom.DicomPlugin>();
});Eklenti (Name: "Doconut DICOM Viewer") .dcm ve .ima uzantıları için görüntüleyiciler kaydeder ve bu, Dicom yeteneğiyle sınırlıdır. Eksik veya yetersiz geçici olmayan bir yetki normalde AddDoconut() sırasında başarısız olur. Çünkü yerleşik bir görüntüleyici bu formatları işleyemez, çalışma zamanı kapısı da yetenek daha sonra kullanılamaz hâle gelirse sert bir şekilde hata verir:
LicenseException: This document type requires the 'Dicom' plugin license.Bir DICOM dosyası açma
var token = await viewer.OpenDocumentAsync(path, new DicomConfig
{
DisplayMode = DicomDisplayMode.AnimationAndFrames
});Görüntüleme modları
Çok‑çerçeveli DICOM dosyaları üç şekilde sunulabilir (DicomDisplayMode):
| Mod | Oluşturulan sayfalar | Kullanım amacı |
|---|---|---|
AnimationOnly | Sayfa 1 = tüm çerçeveleri döngüleyen animasyonlu GIF | Hızlı sinematik inceleme |
FramesOnly | Sayfalar 1..N = her çerçeve için tek bir statik PNG | Çerçeve‑çerçeve tanı navigasyonu |
AnimationAndFrames (varsayılan) | Sayfa 1 = animasyonlu GIF, sayfalar 2..N = statik çerçeveler | Genel bakış + detay tek belgede |
Animasyon hızı AnimationFrameDelayMs (varsayılan 100 ms = 10 FPS; GIF granülerliği 10 ms birimidir) ve LoopCount (0 = sonsuz döngü) ile kontrol edilir.
Çözünürlük
DicomConfig varsayılan olarak eksen başına 100 DPI render eder. Çözünürlük özelliklerinin geri dönüş zinciri şu şekildedir: HorizontalResolution/VerticalResolution açıkça ayarlanmamışsa, önce BaseConfig.ImageResolution (varsa) kullanılır, yoksa 100’e düşer.
// Temel özellik üzerinden tek tip artırma…
new DicomConfig { ImageResolution = 150 };
// …veya eksen bazlı kontrol
new DicomConfig { HorizontalResolution = 200, VerticalResolution = 150 };.NET 6’da DICOM üst verisi kullanılabilirliği
DICOM sayfa renderı, tekil çerçeveler, animasyon, dönüşümler ve filigranlama desteklenir. Teknik etiket üst verisi .NET 6 paketinde bulunmaz çünkü üst veri okuyucusunun .NET 6 yapısı yoktur.
Viewer.GetDicomMetadataAsync(token) bu nedenle bir DICOM oturumu için null döndürür ve tek seferlik bir uyarı kaydeder. İlgili ?token=…&meta ara katman isteği, sabit hata kodu
dicom_metadata_unsupported ile HTTP 501 Not Implemented yanıtı verir. Teknik DICOM üst verisi bir gereklilikse .NET 8 paketini kullanın.
Tam yapılandırma referansı
Tam DicomConfig özellik tablosu API Referansı → Format Configs içinde bulunur. Referans uygulamasının uzantı‑bazlı geçişinden bir üretim örneği:
".DCM" or ".IMA" => new DicomConfig { DisplayMode = DicomDisplayMode.AnimationAndFrames },Filigran ve bellek davranışı
Normal sayfa filigranı kararı DICOM çıktısına da uygulanır. Animasyonlu çıktı için her GIF çerçevesi damgalanır, böylece işaret oynatma boyunca görünür kalır. Özel bir DocOptions.Watermark yalnızca lisans yolu özel filigranlara izin veriyorsa kullanılır; değerlendirme filigranının yerine geçemez.
Çok‑çerçeveli çalışmalar hem bir animasyon hem de çerçeve başına tek bir statik sayfa üretebilir. AnimationAndFrames en zengin navigasyonu sağlar ancak en yüksek render ve önbellek maliyetine sahiptir. Büyük çalışmalar için:
- çerçeve incelemesi sinematik oynatmadan daha önemliyse
FramesOnlykullanın; - çözünürlük eksenlerini ölçüm yapmadan artırmaktan kaçının;
- çalışma artık açık değilse oturumu açıkça kapatın;
CachePagesyalnızca tekrar erişim faydası saklanan görüntülerden ağır bastığında etkin olsun.
Sorun Giderme
| Belirti | Kontrol |
|---|---|
.dcm desteklenmiyor olarak raporlanıyor | DicomPlugin kaydı ve paket dağıtımı |
| Eklenti eklendikten sonra başlangıç başarısız oluyor | Yüklenen lisans Dicom yetkisi veriyor mu? |
| Yalnızca bir sayfa görünüyor | Kaynak tek‑çerçeveli olabilir veya DisplayMode AnimationOnly olabilir |
| Animasyon çok hızlı ya da yavaş | AnimationFrameDelayMs; GIF zamanlaması 10 ms birimlerini kullanır |
| Büyük çok‑çerçeveli dosyalarda bellek artıyor | Görüntüleme modu, çözünürlük, sayfa önbelleği ve oturumun açıkça kapatılması |
Üst veri null veya &meta 501 döndürüyor | Beklenen .NET 6 sınırlaması; render etkilenmez |
Bu sayfa yardımcı oldu mu?