Plugin DICOM
Afficher les images médicales avec DicomPlugin
Le plugin DICOM ajoute la visualisation d'images médicales à Doconut : les fichiers DICOM multi‑images sont rendus sous forme d'aperçu animé, d'images individuelles, ou des deux. DICOM est un format uniquement plugin — sans ce plugin (et sa capacité de licence), les fichiers .dcm ne peuvent pas être ouverts du tout.
Installer le paquet
dotnet add package Doconut.NET8.DicomLa commande non versionnée installe la dernière version stable. Pour fixer le plugin à la version 26.7.0 actuelle, indiquez la version séparément :
dotnet add package Doconut.NET8.Dicom --version 26.7.0Conservez le paquet DICOM à la même version que Doconut.NET8. L'ID du paquet est
Doconut.NET8.Dicom ; .26.7.0 apparaît uniquement dans le nom de fichier .nupkg téléchargé.
Enregistrer le plugin
builder.Services.AddDoconut(options =>
{
options.AddPlugin<Doconut.Plugins.Dicom.DicomPlugin>();
});Le plugin (Name: "Doconut DICOM Viewer") enregistre des visionneuses pour les extensions .dcm et .ima, conditionnées par la capacité Dicom. Une autorisation manquante ou insuffisante non temporaire échoue normalement pendant AddDoconut(). Parce qu'aucune visionneuse intégrée ne gère ces formats, la porte d'exécution échoue également de manière critique si la capacité devient indisponible :
LicenseException: This document type requires the 'Dicom' plugin license.Traduction : Cette type de document nécessite la licence du plugin « Dicom ».
Ouvrir un fichier DICOM
var token = await viewer.OpenDocumentAsync(path, new DicomConfig
{
DisplayMode = DicomDisplayMode.AnimationAndFrames
});Modes d'affichage
Les fichiers DICOM multi‑images peuvent être présentés de trois façons (DicomDisplayMode) :
| Mode | Pages produites | Utilisation |
|---|---|---|
AnimationOnly | Page 1 = GIF animé bouclant toutes les images | Revue cinématographique rapide |
FramesOnly | Pages 1..N = un PNG statique par image | Navigation diagnostique image par image |
AnimationAndFrames (default) | Page 1 = GIF animé, pages 2..N = images statiques | Vue d'ensemble + détail dans un seul document |
Le timing de l'animation est contrôlé par AnimationFrameDelayMs (par défaut 100 ms = 10 FPS ; la granularité du GIF est de 10 ms) et LoopCount (0 = boucle infinie).
Résolution
DicomConfig rend à 100 DPI par axe par défaut. Les propriétés de résolution possèdent une chaîne de secours utile : si vous ne définissez pas explicitement HorizontalResolution/VerticalResolution, elles suivent BaseConfig.ImageResolution lorsqu'elle est configurée, puis reviennent à 100.
// Bump uniforme via la propriété de base…
new DicomConfig { ImageResolution = 150 };
// …ou contrôle par axe
new DicomConfig { HorizontalResolution = 200, VerticalResolution = 150 };Lire les métadonnées DICOM
Pour les sessions ouvertes via ce plugin, Viewer expose les métadonnées des tags :
var metadata = await viewer.GetDicomMetadataAsync(token);
// null when the session isn't a DICOM documentRéférence complète de la configuration
Le tableau complet des propriétés DicomConfig se trouve dans Référence API → Configurations de format. Un exemple de production tiré de l'application de référence :
".DCM" or ".IMA" => new DicomConfig { DisplayMode = DicomDisplayMode.AnimationAndFrames },Filigrane et comportement mémoire
La décision de filigrane de page normale s'applique également à la sortie DICOM. Pour la sortie animée, chaque image GIF est marquée afin que le filigrane reste visible pendant la lecture. Un DocOptions.Watermark personnalisé n'est utilisé que lorsque le chemin de licence autorise les filigranes personnalisés ; il ne peut pas remplacer un filigrane d'évaluation.
Les études multi‑images peuvent générer à la fois une animation et une page statique par image. AnimationAndFrames offre la navigation la plus riche mais aussi le coût de rendu et de cache le plus élevé. Pour les études volumineuses :
- utilisez
FramesOnlylorsque l'inspection image par image prime sur la lecture cinématographique ; - évitez d'augmenter les deux axes de résolution sans mesurer la mémoire ;
- fermez explicitement la session lorsque l'étude n'est plus ouverte ;
- ne maintenez
CachePagesactivé que lorsque les bénéfices d'accès répété l'emportent sur les images conservées.
Dépannage
| Symptôme | Vérification |
|---|---|
.dcm est signalé comme non pris en charge | Enregistrement du DicomPlugin et déploiement du paquet |
| Le démarrage échoue après l'ajout du plugin | La licence chargée accorde Dicom |
| Une seule page apparaît | La source peut être mono‑image, ou DisplayMode est AnimationOnly |
| L'animation est trop rapide ou trop lente | AnimationFrameDelayMs ; le timing effectif du GIF utilise des unités de 10 ms |
| La mémoire augmente avec de gros fichiers multi‑images | Mode d'affichage, résolution, cache de pages, et fermeture explicite de la session |
Les métadonnées sont null | Le token n'a pas été ouvert via le plugin DICOM ou a expiré |
Cette page vous a-t-elle été utile ?