DICOM Eklentisi
DICOM eklentisi ile tıbbi görüntüleri görüntüleyin
DICOM eklentisi, Doconut'a tıbbi görüntü görüntülemeyi ekler: çok çerçeveli DICOM dosyaları animasyonlu bir genel bakış, tek tek çerçeveler veya her ikisi olarak işlenir. DICOM yalnızca eklenti formatıdır — bu eklenti (ve lisans yeteneği) olmadan .dcm dosyaları hiç açılamaz.
.NET Framework 4.7.2 üzerinde, DICOM dosyaları tam olarak işlenir — sayfalar, çerçeveler ve animasyon — ancak teknik meta veriler (DICOM etiketleri) mevcut değildir.
Viewer.GetDicomMetadataAsyncher zamannulldöndürür ve widget'ın meta veri isteği501 Not Implementedyanıtını verir. Etiketlere ihtiyacınız varsaDoconut.NET8kullanın.
Paketi Yükleyin
Install-Package Doconut.NETFramework.DicomDICOM paketini Doconut.NETFramework ile aynı sürümde tutun.
Eklentiyi Kaydedin
Doconut.DoconutHost.Initialize(options =>
{
options.AddPlugin<Doconut.Plugins.Dicom.DicomPlugin>();
});Eklenti (Name: "Doconut DICOM Viewer") .dcm ve .ima uzantıları için görüntüleyicileri, Dicom yeteneğiyle sınırlı olarak kaydeder. Lisans bu yetkiyi sağlamıyorsa, DoconutHost.Initialize Application_Start içinde bir istisna fırlatır ve site her isteğe boş bir 500 yanıtı verir (neden Windows olay günlüğündedir). Yerleşik bir görüntüleyici bu formatları işleyemediği için, yetenek daha sonra kullanılamaz hâle gelirse açma işlemi doğrudan başarısız olur:
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 statik PNG | Çerçeve‑çerçeve tanı teşhis navigasyonu |
AnimationAndFrames (default) | Sayfa 1 = animasyonlu GIF, sayfalar 2..N = statik çerçeveler | Tek bir belgede genel bakış ve detay |
Animasyon zamanlaması AnimationFrameDelayMs (varsayılan 100 ms = 10 FPS; GIF zamanlaması 10 ms birimlerini kullanır) ve LoopCount (0 = sonsuz döngü) ile kontrol edilir.
Görüntüleyici, sayfa 1'in animasyonlu olduğunu HEAD isteği göndererek belirler. DocImage.axd işleyicisinin Web.config içinde HEAD'i kabul etmesi gerekir (verb="GET,HEAD,POST", bkz. Kurulum); aksi takdirde IIS, Doconut çalışmadan önce 404 yanıtı verir ve animasyon algılaması hiç çalışmaz.
Çözünürlük
DicomConfig varsayılan olarak eksen başına 100 DPI ile işler. HorizontalResolution/VerticalResolution değerlerini açıkça ayarlamazsanız, ayarlı olduğunda BaseConfig.ImageResolution değerini izler ve yalnızca o zaman 100'e geri döner.
// Uniform bump via the base property…
new DicomConfig { ImageResolution = 150 };
// …or per-axis control
new DicomConfig { HorizontalResolution = 200, VerticalResolution = 150 };DICOM meta verileri
var metadata = await viewer.GetDicomMetadataAsync(token);
// On .NET Framework this is always null: the DICOM metadata reader is not available for this
// target. Pages, frames and animation render normally.Bu yöntem, .NET 8 paketiyle paylaşılan kodun derlenebilmesi için bu pakette bulunur, ancak DICOM etiketlerini okumak .NET Framework için bir derlemesi olmayan bir bileşen gerektirir. Kullanıcı arayüzünüzü bunlar olmadan planlayın — örneğin, sonuç null olduğunda bir meta veri panelini gizleyin.
Tam yapılandırma referansı
Tam DicomConfig özellik tablosu Format Configs içinde bulunur. Uzantı bazlı bir seçimde, DICOM durumu şu şekildedir:
case ".DCM": case ".IMA":
return 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 süresince görünür kalır. Özel bir DocOptions.Watermark yalnızca lisans özel filigranlara izin verdiğinde kullanılır; değerlendirme filigranını değiştiremez.
Çok çerçeveli çalışmalar hem bir animasyon hem de çerçeve başına bir statik sayfa üretebilir. AnimationAndFrames en zengin navigasyonu sağlar ancak en yüksek işleme ve bellek maliyetini de getirir — ve tek bir sunucuda bu bellek IIS işçi sürecine aittir. Büyük çalışmalar için:
FramesOnlykullanın; çerçeve incelemesi oynatmadan daha önemli olduğunda;- Belleği ölçmeden her iki çözünürlük eksenini de artırmaktan kaçının;
- Çalışma artık açık olmadığında oturumu açıkça kapatın;
- Yinelemeli erişimin saklanan görüntüler için değerli olduğu durumlarda
CachePagesözelliğini açık tutun.
Sorun Giderme
| Belirti | Kontrol |
|---|---|
.dcm desteklenmiyor olarak raporlanıyor | DicomPlugin kaydı ve paket dağıtımı |
Eklentiyi ekledikten sonra her istek boş bir 500 yanıtı veriyor | Lisans Dicom yetkisini veriyor — Windows olay günlüğü, kaynak ASP.NET |
| Yalnızca bir sayfa görünüyor | Kaynak tek çerçeveli olabilir veya DisplayMode AnimationOnly olabilir |
| Sayfa 1 animasyon göstermiyor | Web.config içindeki işleyici HEAD'i kabul ediyor |
| Animasyon çok hızlı ya da çok 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 açık oturum kapatma |
Meta veriler her zaman null | Bu paket için beklenen — üstteki notu inceleyin |
Bu sayfa yardımcı oldu mu?