void DicomDataSet_GetEncapsulatedDocumentExample(DicomElement element, bool child, DicomDataSet ds, string sFileDocumentOut) { try { DicomEncapsulatedDocument encapsulatedDocument = new DicomEncapsulatedDocument(); //New encapsulated document DicomCodeSequenceItem conceptNameCodeSequence = new DicomCodeSequenceItem(); //New code sequence item ds.GetEncapsulatedDocument(element, child, sFileDocumentOut, encapsulatedDocument, conceptNameCodeSequence); //Load the encapsulated document from the data set string sMsg; sMsg = string.Format("Encapsulated Document Extracted: {0}", sFileDocumentOut); DumpEncapsulatedDocumentTags(sMsg, encapsulatedDocument, conceptNameCodeSequence); //Print out all the attributes } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
void DumpEncapsulatedDocumentTags(string sMsgIn, DicomEncapsulatedDocument encapsulatedDocument, DicomCodeSequenceItem conceptNameCodeSequence) { try { //Print out all of the attributes for the encapsulated document string sMimeTypes = string.Empty; string[] sListOfMimeTypes = encapsulatedDocument.GetListOfMimeTypes(); foreach (string s in sListOfMimeTypes) { sMimeTypes = sMimeTypes + s + ","; } string sMsg1 = string.Format("{0}\n\nuType: {1}\nInstanceNumber: {2}\nContentDate: {3}\nContentTime: {4}\nAcquisitionDateTime: {5}\nBurnedInAnnotation: {6}\nDocumentTitle: {7}\nVerificationFlag: {8}\nHL7InstanceIdentifier: {9}\nMIMETypeOfEncapsulatedDocument: {10}\nListOfMIMETypes: {11}\n\n", sMsgIn, encapsulatedDocument.Type.ToString(), encapsulatedDocument.InstanceNumber, encapsulatedDocument.ContentDate.ToString(), encapsulatedDocument.ContentTime.ToString(), encapsulatedDocument.AcquisitionDateTime.ToString(), encapsulatedDocument.BurnedInAnnotation, encapsulatedDocument.DocumentTitle, encapsulatedDocument.VerificationFlag, encapsulatedDocument.HL7InstanceIdentifier, encapsulatedDocument.MimeTypeOfEncapsulatedDocument, sMimeTypes ); // ConceptNameCodeSequence string sMsg2 = string.Format("CodeValue: {0}\nCodingSchemeDesignator: {1}\nCodingSchemeVersion: {2}\nCodeMeaning: {3}\nContextIdentifier: {4}\nMappingResource: {5}\nContextGroupVersion: {6}\nContextGroupLocalVersion: {7}\nContextGroupExtensionCreatorUID: {8}", conceptNameCodeSequence.CodeValue, conceptNameCodeSequence.CodingSchemeDesignator, conceptNameCodeSequence.CodingSchemeVersion, conceptNameCodeSequence.CodeMeaning, conceptNameCodeSequence.ContextIdentifier, conceptNameCodeSequence.MappingResource, conceptNameCodeSequence.ContextGroupVersion.ToString(), conceptNameCodeSequence.ContextGroupLocalVersion.ToString(), conceptNameCodeSequence.ContextGroupExtensionCreatorUID ); MessageBox.Show(sMsg1 + sMsg2); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
void DicomDataSet_SetEncapsulatedDocumentExample(DicomElement element, bool child, DicomDataSet ds, string sFileDocumentIn) { try { //Create a new DICOM Encapsulated Document DicomEncapsulatedDocument encapsulatedDocument = new DicomEncapsulatedDocument(); //Set the attributes of the encapsulated document encapsulatedDocument.Type = DicomEncapsulatedDocumentType.Pdf; //Type == Pdf encapsulatedDocument.InstanceNumber = 123; encapsulatedDocument.ContentDate = new DicomDateValue(2015, 1, 1); encapsulatedDocument.ContentTime = new DicomTimeValue(12, 30, 00, 1); encapsulatedDocument.AcquisitionDateTime = new DicomDateTimeValue(2015, 1, 1, 12, 30, 00, 01, -3); encapsulatedDocument.BurnedInAnnotation = "YES"; encapsulatedDocument.DocumentTitle = sFileDocumentIn; encapsulatedDocument.VerificationFlag = "UNVERIFIED"; encapsulatedDocument.HL7InstanceIdentifier = string.Empty; //Mime type of the document (ignored) encapsulatedDocument.MimeTypeOfEncapsulatedDocument = "***** This is ignored when calling SetEncapsulatedDocument *****"; //Mime types of the document string[] sListOfMimeTypes = new string[] { "image/jpeg", "application/pdf" }; encapsulatedDocument.SetListOfMimeTypes(sListOfMimeTypes); DicomCodeSequenceItem conceptNameCodeSequence = new DicomCodeSequenceItem(); conceptNameCodeSequence.CodingSchemeDesignator = "LN"; conceptNameCodeSequence.CodeValue = "12345"; conceptNameCodeSequence.CodeMeaning = "Sample Code Meaning"; //Set the document into the data set ds.SetEncapsulatedDocument(element, child, sFileDocumentIn, encapsulatedDocument, conceptNameCodeSequence); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }