[英]fo-dicom JPEG Image Compression from MemoryStream
我正在寻找加载 dicom 图像并将其保存为 jpeg,如 fo-dicom 文档中的以下代码所示:
var image = new DicomImage(@"test.dcm");
image.RenderImage().AsBitmap().Save(@"test.jpg");
但是,我从 MemoryStream 打开 dicom 文件,我想将 jpeg 保存为字节数组。 fo-dicom 可以做到这一点吗?
private byte[] JpegBytesFromDicomStream(Stream stream)
{
byte[] result;
// Open image from Stream using DicomFile class
DicomFile file = DicomFile.Open(stream);
DicomImage image = new DicomImage(file.Dataset);
using (IImage renderedImage = image.RenderImage())
{
Bitmap bitmap = renderedImage.AsSharedBitmap();
// Copy image to byte array using MemoryStream
using (MemoryStream targetStream = new MemoryStream())
{
bitmap.Save(targetStream, ImageFormat.Jpeg);
result = targetStream.ToArray();
}
}
return result;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.