引用System.Drawing.Imaging 命名空间的文档
Encoder 类使用户能够扩展 GDI+ 以支持任何图像格式。
然而,我找不到任何文档、示例或其他任何东西来解释我将如何实现我自己的自定义文件格式——大多数搜索返回大量关于传递 EncoderParameters 的信息,但没有关于实现我们自己的编码器的信息?
理想情况下,我希望能够在 C# 中实现这一点,但如果需要的话,我准备清理我的 ATL :)
有没有人遇到过任何文档或能够提供有关如何处理此问题的任何指示?
更新:
我可能应该提到到目前为止我尝试过的事情,但无济于事:
- 查找ImageCodecInfo类中返回的 GUID以查看它是否是普通的 COM 接口(但似乎不是),目的是查看实现的接口,或者查看它是否只是一个注册表项。
- 进入Image.FromFile方法发现它只是 gdiplus.dll 的包装器
- 很多谷歌搜索,似乎提供了很多使用现有的例子并指定你自己的 ImageEncoderParamerters;以及少数人通过其他方式实现自己的 编解码器的案例。
- 甚至在新闻中问过://microsoft.public.win32.programmer.gdi