因此,我已经能够拍摄多页TIFF文件并将其转换为单个jpeg图像,但它会使TIFF变平。通过弄平它,我的意思是它只返回第一页。我们的目标是检索TIFF(通过内存流),打开TIFF的每个页面并将其附加到新的jpeg(或任何网页图像)。从而创建一个长的图像,在没有插件的帮助下在网上查看。我确实安装了MODI.dll,但我不确定如何在这种情况下使用它,但它是一个选项。 (使用的FileHandler)C#:如何通过MemoryStream将多页TIFF转换为一个长图像?
源代码:
#region multi-page tiff to single page jpeg var byteFiles = dfSelectedDocument.File.FileBytes; // <-- FileBytes is a byte[] or byte array source. byte[] jpegBytes; using(var inStream = new MemoryStream(byteFiles)) using(var outStream = new MemoryStream()) { System.Drawing.Image.FromStream(inStream).Save(outStream, ImageFormat.Jpeg); jpegBytes = outStream.ToArray(); } context.Response.ContentType = "image/JPEG"; context.Response.AddHeader("content-disposition", string.Format("attachment;filename=\"{0}\"", dfSelectedDocument.File.FileName.Replace(".tiff", ".jpg")) ); context.Response.Buffer = true; context.Response.BinaryWrite(jpegBytes); #endregion
我可以从源头设置TIFF的压缩(或缺少压缩)。有一个类被调用来检索TIFF或PDF。它返回一个字节[],这是我使用FileHandler的原因。 –