[FlagsAttribute()]
public enum DicomDataSetSaveXmlFlags
[FlagsAttribute()]
public enum class DicomDataSetSaveXmlFlags
Value | Member | Description |
---|---|---|
0x00000000 | None | Pass this value if you do not want to use any other flags. The default values will be used. |
0x00000001 | IgnoreBinaryData | If a DICOM element contains binary data, do not write the binary data to the output XML file. The element itself is still exported, but has no data. |
0x00000002 | IgnoreAllData | Do not write any data (binary, text, etc.) for the DICOM elements to the output XML file. All elements are still exported, but have no data. |
0x00000004 | EncodeBinaryBase64 | Encode all binary data as Base64. This is the default behavior. |
0x00000008 | EncodeBinaryBinHex | Encode all binary data as BinHex. This overrides the default behavior of encoding binary data as Base64. |
0x00000010 | TagWithCommas | When writing DICOM tags to the output XML file, use commas. For example, write the tag for SOPClassUID as '0008,0016' instead of '00080016' |
0x00000020 | TrimWhiteSpace | When writing data to the output XML file, trim leading and trailing white spaces. |
0x00000040 | NativeDicomModel | Use as the XML output format the Native DICOM model described in PS3.19 of the DICOM Specification. For an example, refer to SaveXmlData.BinaryType. |
0x00000080 | WriteFullEndElement | Write the full XML end element, instead of a single element (i.e. instead of ). |
0x00000100 | IgnorePixelData | Do not include the pixel data element in the resulting XML. |
0x00000200 | InlineBinary | Encode all binary data as InlineBinary, which is coded as Base64 with a line break after every 76 characters. The following flags are only used with the Native DICOM Model, and affect how binary data is written. Unless the NativeDicomModel is also included, all of the following flags are ignored. Callers can pass one or more of the three flags. If more than one of the flags is passed, precedence is given in the order that they appear below. • InlineBinary • BulkDataUri • BulkDataUuid Passing more than one flag will cause the SaveXmlCallback to behave differently. For example, passing BulkDataUri and BulkDataUuid will cause the SaveXmlCallback to generate values for BulkDataUri and BulkDataUuid. If none of these three flags is passed, the default behavior is BulkDataUuid. |
0x00000400 | BulkDataUri | Write all binary data as BulkDataUri, with a dummy Uri. The following flags are only used with the Native DICOM Model, and affect how binary data is written. Unless the NativeDicomModel flag is also included, all of the following flags are ignored. Callers can pass one or more of the following three flags. If more than one of the flags is passed, precedence is given in the order that they appear below. • InlineBinary • BulkDataUri • BulkDataUuid Passing more than one flag will cause the SaveXmlCallback to behave differently. For example, passing BulkDataUri and BulkDataUuid will cause the SaveXmlCallback to generate value BulkDataUri and BulkDataUuid. If none of these three flags is passed, the default behavior is BulkDataUuid. For an example, refer to BulkDataUri. |
0x00000800 | BulkDataUuid | Write all binary data as BulkData, with a dummy uuid attribute. This is the default behavior. The following flags are only used with the Native DICOM Model, and affect how binary data is written. Unless the NativeDicomModel is also included, all of the following flags are ignored. Callers can pass one or more of the three flags. If more than one of the flags is passed, precedence is given in the order that they appear below. • InlineBinary • BulkDataUri • BulkDataUuid Passing more than one flag will cause the SaveXmlCallback to behave differently. For example, passing BulkDataUri and BulkDataUuid will cause the SaveXmlCallback to generate values for both BulkDataUri and BulkDataUuid. If none of these three flags is passed, the default behavior is BulkDataUuid. For an example, refer to InlineBinary. |
0x00001000 | NativeNoModifyPrivateElements | PS3.19 of the DICOM Specification states that a Private Data Element has the form gggg00ee, where the two most significant hexadecimal values of the element number are set to 00. Pass the 'NativeNoModifyPrivateElements' flag to preserve the upper two most significant hexadecimal values of the element. |
0x00008000 | Base64NoLineBreaks | Used with the InlineBinary enum to encode binary data as Base64 no line breaks. Without this flag, encoded Base64 data has a line break after every 76 characters. |
0x00010000 | IgnoreMetaData | Do not write the DICOM (0002,0001) File Meta Information Version element |
using Leadtools.Dicom;
using Leadtools.Dicom.Common;
using Leadtools.Dicom.Common.Extensions;
using Leadtools;
using Leadtools.Dicom.Common.Linq.BasicDirectory;
using Leadtools.Dicom.Common.DataTypes;
using Leadtools.Codecs;
public void LoadXmlExample()
{
string dicomFileNameIn = Path.Combine(LEAD_VARS.ImagesDir, "DICOM", "image3.dcm");
string xmlFileNameOut = Path.Combine(LEAD_VARS.ImagesDir, "test.xml");
// Initialize DICOM engine
DicomEngine.Startup();
DicomDataSet ds = new DicomDataSet();
// Load an existing DICOM file
ds.Load(dicomFileNameIn, DicomDataSetLoadFlags.None);
// Save as XML with no binary data
// For the demo, keep the XML output file size small by skipping the pixel data
DicomDataSetSaveXmlFlags xmlFlags =
DicomDataSetSaveXmlFlags.IgnoreBinaryData |
DicomDataSetSaveXmlFlags.TrimWhiteSpace |
DicomDataSetSaveXmlFlags.TagWithCommas;
ds.SaveXml(xmlFileNameOut, xmlFlags);
// Now reload the XML file.
// Note that there will not be an image because we skipped the pixel data in the save
ds.LoadXml(xmlFileNameOut, DicomDataSetLoadXmlFlags.None);
DicomEngine.Shutdown();
}
static class LEAD_VARS
{
public const string ImagesDir = @"C:\LEADTOOLS23\Resources\Images";
}
Leadtools.Dicom.Common.Extensions Namespace
LoadXml(DicomDataSet,String,DicomDataSetLoadXmlFlags) Method
LoadXml(DicomDataSet,Stream,DicomDataSetLoadXmlFlags) Method
SaveXml(DicomDataSet,String,DicomDataSetSaveXmlFlags,SaveXmlCallback) Method
SaveXml(DicomDataSet,Stream,DicomDataSetSaveXmlFlags,SaveXmlCallback) Method
SaveXml(DicomDataSet,String,DicomDataSetSaveXmlFlags) Method
SaveXml(DicomDataSet,Stream,DicomDataSetSaveXmlFlags) Method
Help Collections
Raster .NET | C API | C++ Class Library | HTML5 JavaScript
Document .NET | C API | C++ Class Library | HTML5 JavaScript
Medical .NET | C API | C++ Class Library | HTML5 JavaScript
Medical Web Viewer .NET
Multimedia
Direct Show .NET | C API | Filters
Media Foundation .NET | C API | Transforms
Supported Platforms
.NET, Java, Android, and iOS/macOS Assemblies
Imaging, Medical, and Document
C API/C++ Class Libraries
Imaging, Medical, and Document
HTML5 JavaScript Libraries
Imaging, Medical, and Document