DICOM Plugin
Prohlížejte lékařské snímky pomocí DicomPlugin
DICOM plugin přidává prohlížení lékařských snímků do Doconut: soubory DICOM s více snímky se vykreslují jako animovaný přehled, jednotlivé snímky nebo obojí. DICOM je formát pouze pro plugin — bez tohoto pluginu (a jeho licenční schopnosti) nelze soubory .dcm vůbec otevřít.
Instalace balíčku
dotnet add package Doconut.NET8.DicomNeverzovaná příkaz instalace nainstaluje nejnovější stabilní verzi. Pro připnutí pluginu k aktuální verzi 26.7.0 předávejte verzi samostatně:
dotnet add package Doconut.NET8.Dicom --version 26.7.0Udržujte balíček DICOM ve stejné verzi jako Doconut.NET8. ID balíčku je Doconut.NET8.Dicom; .26.7.0 se objevuje pouze v názvu staženého souboru .nupkg.
Registrace pluginu
builder.Services.AddDoconut(options =>
{
options.AddPlugin<Doconut.Plugins.Dicom.DicomPlugin>();
});Plugin (Name: "Doconut DICOM Viewer") registruje prohlížeče pro rozšíření .dcm a .ima, řízené schopností Dicom. Chybějící nebo nedostatečné nečasové oprávnění obvykle selže během AddDoconut(). Protože žádný vestavěný prohlížeč tyto formáty neobsluhuje, runtime gate také selže tvrdě, pokud se schopnost později stane nedostupnou:
LicenseException: This document type requires the 'Dicom' plugin license.Otevírání souboru DICOM
var token = await viewer.OpenDocumentAsync(path, new DicomConfig
{
DisplayMode = DicomDisplayMode.AnimationAndFrames
});Zobrazovací režimy
Soubory DICOM s více snímky lze prezentovat třemi způsoby (DicomDisplayMode):
| Režim | Vytvořené stránky | Použití |
|---|---|---|
AnimationOnly | Stránka 1 = animovaný GIF opakující všechny snímky | Rychlý filmový přehled |
FramesOnly | Stránky 1..N = jeden statický PNG na snímek | Diagnostická navigace snímek po snímku |
AnimationAndFrames (default) | Stránka 1 = animovaný GIF, stránky 2..N = statické snímky | Přehled + detail v jednom dokumentu |
Časování animace je řízeno pomocí AnimationFrameDelayMs (výchozí 100 ms = 10 FPS; granularita GIF je v jednotkách 10 ms) a LoopCount (0 = nekonečné opakování).
Rozlišení
DicomConfig vykresluje ve výchozím nastavení 100 DPI na osu. Vlastnosti rozlišení mají řetězec náhrad, který stojí za to znát: pokud nenastavíte explicitně HorizontalResolution/VerticalResolution, použijí BaseConfig.ImageResolution, pokud je nastaven, a až poté se vrátí na 100.
// Uniform bump via the base property…
new DicomConfig { ImageResolution = 150 };
// …or per-axis control
new DicomConfig { HorizontalResolution = 200, VerticalResolution = 150 };Čtení metadat DICOM
Pro relace otevřené tímto pluginem Viewer poskytuje metadata tagů:
var metadata = await viewer.GetDicomMetadataAsync(token);
// null when the session isn't a DICOM documentKompletní reference konfigurace
Kompletní tabulka vlastností DicomConfig se nachází v API Reference → Format Configs. Příklad z produkční aplikace pro přepínač podle rozšíření:
".DCM" or ".IMA" => new DicomConfig { DisplayMode = DicomDisplayMode.AnimationAndFrames },Vodoznak a chování paměti
Rozhodnutí o vodoznaku běžných stránek se vztahuje i na výstup DICOM. Pro animovaný výstup je každý GIF snímek opatřen vodoznakem, aby značka zůstala viditelná během přehrávání. Vlastní DocOptions.Watermark se používá pouze tehdy, když licenční cesta umožňuje vlastní vodoznaky; nemůže nahradit zkušební vodoznak.
Studie s více snímky mohou generovat jak animaci, tak jednu statickou stránku na snímek. AnimationAndFrames poskytuje nejbohatší navigaci, ale má také nejvyšší náklady na vykreslování a cache. Pro velké studie:
- použijte
FramesOnly, pokud je kontrola snímků důležitější než filmové přehrávání; - vyhněte se zvyšování obou os rozlišení bez měření paměti;
- ukončete relaci explicitně, když studie již není otevřená;
- ponechte
CachePagespovolené pouze tehdy, když výhody opakovaného přístupu převáží nad uloženými obrázky.
Řešení problémů
| Problém | Kontrola |
|---|---|
.dcm je hlášeno jako nepodporované | registrace DicomPlugin a nasazení balíčku |
| Spuštění selže po přidání pluginu | Načtená licence poskytuje Dicom |
| Zobrazí se pouze jedna stránka | Zdroj může být jednosnímkový, nebo DisplayMode je AnimationOnly |
| Animace je příliš rychlá nebo pomalá | AnimationFrameDelayMs; efektivní časování GIF používá jednotky 10 ms |
| Paměť roste u velkých souborů s více snímky | Režim zobrazení, rozlišení, cache stránek a explicitní uzavření relace |
Metadata jsou null | Token nebyl otevřen přes DICOM plugin nebo vypršel |
Byla tato stránka užitečná?