有没有一种很好的方法来读取RAW图像文件(特别是Canon CR2和Adobe DNG文件)作为GDI +位图的速度相当快?
我找到了一个在WPF下运行的示例,该示例将使用任何已安装的图像编解码器读取图像,然后将其显示在图像控件中.我修改了这个例子,通过将WPF图像写入MemoryStream并从中创建Bitmap来创建GDI +位图.但这个过程很慢!非常慢!在我的电脑上打开一张简单的图像需要大约10秒钟.此解决方案还需要对WPF程序集的引用,这感觉不对,特别是因为我想在ASP.NET项目中运行代码.
有些程序会对图像进行批量转换,但我更愿意在请求时动态转换图像.
那么,有什么建议吗?
引用System.Drawing.Imaging命名空间的文档
Encoder类使用户能够扩展GDI +以支持任何图像格式.
然而,我找不到任何文档,示例或其他任何解释我如何实现自己的自定义文件格式的内容 - 大多数搜索返回有关传递EncoderParameters的大量信息,但没有实现我们自己的编码器的信息?
理想情况下,我希望能够在C#中实现这一点,但如果需要,我准备将我的ATL清除掉:)
有没有人遇到任何文档或能够提供有关如何处理此问题的任何指示?
更新:
我应该提到我迄今为止尝试过的事情,但无济于事: