引用System.Drawing.Imaging命名空间的文档
Encoder类使用户能够扩展GDI +以支持任何图像格式.
然而,我找不到任何文档,示例或其他任何解释我如何实现自己的自定义文件格式的内容 - 大多数搜索返回有关传递EncoderParameters的大量信息,但没有实现我们自己的编码器的信息?
理想情况下,我希望能够在C#中实现这一点,但如果需要,我准备将我的ATL清除掉:)
有没有人遇到任何文档或能够提供有关如何处理此问题的任何指示?
更新:
我应该提到我迄今为止尝试过的事情,但无济于事:
我有一个jp2的字节数组,如何将其转换为JPG
文件?谢谢
谢谢所有的答案.我做了一些分歧,几乎成功了.我是这样做的:
using (var reader = command.ExecuteReader())
{
while (reader.Read())
{
String id = (String)reader["ID"];
blob = (byte[])reader["Data"];
using (MemoryStream ms = new MemoryStream(blob))
{
FIBITMAP dib = FreeImage.LoadFromStream(ms);
if (dib.IsNull)
{
continue;
}
string jpgName = getJpgName(id);
FreeImage.Save(FREE_IMAGE_FORMAT.FIF_JPEG, dib, jpgName, FREE_IMAGE_SAVE_FLAGS.JPEG_QUALITYNORMAL);
}
}
}
Run Code Online (Sandbox Code Playgroud)
我byte[]
从数据库中读取.现在又出现了另一个问题; 存在内存泄漏!有人可以把它拿出来吗?