VintaSoft Imaging .NET SDK 14.0: Documentation for .NET developer
Vintasoft.Imaging.Codecs.Encoders Namespace / DicomEncoder Class
Members Object Syntax Example Hierarchy Requirements SeeAlso
In This Topic
    DicomEncoder Class
    In This Topic
    Defines an encoder for DICOM images.
    Object Model
    DicomEncoderSettings DicomEncoder
    Syntax
    'Declaration
    
    Public NotInheritable Class DicomEncoder
       Inherits MultipageEncoderBase
    
    
    public sealed class DicomEncoder : MultipageEncoderBase
    
    
    public __gc __sealed class DicomEncoder : public MultipageEncoderBase*
    
    
    public ref class DicomEncoder sealed : public MultipageEncoderBase^
    
    
    Example

    This C#/VB.NET code shows how to load DICOM images from DICOM file, burn the overlay images on DICOM images and save changed DICOM images to a new DICOM file.

    
    ''' <summary>
    ''' Loads DICOM images from DICOM file, burns the overlay images on DICOM images and saves changed DICOM images to a new DICOM file.
    ''' </summary>
    ''' <param name="sourceFilePath">A path to a source DICOM file.</param>
    ''' <param name="destFilePath">A path to the destination DICOM file.</param>
    Public Shared Sub BurnOverlayImagesAndSaveToDicomFile(sourceFilePath As String, destFilePath As String)
        ' create image collection
        Using images As New Vintasoft.Imaging.ImageCollection()
            ' open DICOM file
            images.Add(sourceFilePath)
    
            Try
                ' create DICOM decoding settings
                Dim decodingSettings As New Vintasoft.Imaging.Codecs.Decoders.DicomDecodingSettings()
                ' specify that DICOM decoder needs to draw overlay images on DICOM image
                decodingSettings.ShowOverlayImages = True
                ' set the DICOM decoding settings for all images in image collection
                images.SetDecodingSettings(decodingSettings)
    
                ' for each image in image collection
                For Each image As Vintasoft.Imaging.VintasoftImage In images
                    ' convert image to BGR24-image
                    image.ConvertToBgr24()
                Next
    
                ' create DICOM encoder
                Using encoder As New Vintasoft.Imaging.Codecs.Encoders.DicomEncoder()
                    ' save images to the destination DICOM file using DICOM encoder
                    images.SaveSync(destFilePath, encoder)
                End Using
            Finally
                ' remove images
                images.ClearAndDisposeItems()
            End Try
        End Using
    End Sub
    
    
    
    /// <summary>
    /// Loads DICOM images from DICOM file, burns the overlay images on DICOM images and saves changed DICOM images to a new DICOM file.
    /// </summary>
    /// <param name="sourceFilePath">A path to a source DICOM file.</param>
    /// <param name="destFilePath">A path to the destination DICOM file.</param>
    public static void BurnOverlayImagesAndSaveToDicomFile(string sourceFilePath, string destFilePath)
    {
        // create image collection
        using (Vintasoft.Imaging.ImageCollection images = new Vintasoft.Imaging.ImageCollection())
        {
            // open DICOM file
            images.Add(sourceFilePath);
    
            try
            {
                // create DICOM decoding settings
                Vintasoft.Imaging.Codecs.Decoders.DicomDecodingSettings decodingSettings = new Vintasoft.Imaging.Codecs.Decoders.DicomDecodingSettings();
                // specify that DICOM decoder needs to draw overlay images on DICOM image
                decodingSettings.ShowOverlayImages = true;
                // set the DICOM decoding settings for all images in image collection
                images.SetDecodingSettings(decodingSettings);
    
                // for each image in image collection
                foreach (Vintasoft.Imaging.VintasoftImage image in images)
                {
                    // convert image to BGR24-image
                    image.ConvertToBgr24();
                }
    
                // create DICOM encoder
                using (Vintasoft.Imaging.Codecs.Encoders.DicomEncoder encoder = new Vintasoft.Imaging.Codecs.Encoders.DicomEncoder())
                {
                    // save images to the destination DICOM file using DICOM encoder
                    images.SaveSync(destFilePath, encoder);
                }
            }
            finally
            {
                // remove images
                images.ClearAndDisposeItems();
            }
        }
    }
    
    

    Inheritance Hierarchy

    System.Object
       Vintasoft.Imaging.Codecs.Encoders.EncoderBase
          Vintasoft.Imaging.Codecs.Encoders.MultipageEncoderBase
             Vintasoft.Imaging.Codecs.Encoders.DicomEncoder

    Requirements

    Target Platforms: .NET9; .NET 8; .NET 7; .NET 6; .NET Framework 4.8, 4.7, 4.6, 4.5, 4.0, 3.5

    See Also