dcmdata模块包含以下命令行工具:
cda2dcm:将CDA文件封装成DICOM文件格式
dcm2json:将 DICOM 文件和数据集转换为 JSON
dcm2pdf:从 DICOM 封装的 PDF 中提取 PDF 文件
dcm2xml:将 DICOM 文件和数据集转换为 XML
dcmconv: 转换 DICOM 文件编码
dcmcrle:将 DICOM 文件编码为 RLE 传输语法
dcmdrle:解码 RLE 压缩的 DICOM 文件
dcmdump:转储 DICOM 文件和数据集
dcmftest:测试文件是否使用 DICOM 第 10 部分格式
dcmgpdir:创建一个通用的 DICOMDIR
dcmodify:修改DICOM文件
dump2dcm:将 ASCII 转储转换为 DICOM 文件
img2dcm: 将标准图像格式转换为 DICOM 格式
pdf2dcm:将PDF文件封装成DICOM文件格式
stl2dcm:将STL文件封装成DICOM文件格式
xml2dcm:将 XML 文档转换为 DICOM 文件或数据集
即这些工具只依赖dcmdata模块和基础库
一. DICOM协议
dicom协议中用Encapsulated PDF IOD表示PDF文件
Encapsulated PDF IOD包含的IE和Module
其中和pdf相关的主要是Encapsulated Document Module中的Encapsulated Document(0042,0011)元素
二. 例子使用
dcmtk的pdf2dcm工具,实现将pdf文件转成dcm文件。
1. 使用:
pdf2dcm [选项] pdffile-in dcmfile-out
pdffile-in 要封装的PDF输入文件名
dcmfile-out DICOM 输出文件名
可选参数见官方解释
pdf2dcm 1.pdf 1.dcm
2. 效果
radiant打开1.dcm,不能直接显示,如下图所示。
双击图标,radiant通过打开pdf阅读器来显示pdf内容。
主要的元素
二进制方式查看原始pdf内容,(0042,0011) Encapsulated Document里存的数据就是Pdf文件本身。
三. 源码
vs工程,依赖dcmdata模块
例子主要功能为实现Encapsulated PDF IOD必须的元素
- 插入Encapsulated Document Module必须的元素
- 插入其他Module一些必须的元素