如何在Compact Framework上将转换为1ppp的位图存储为单色bmp文件
本文关键字:1ppp 位图 单色 文件 bmp 存储 转换 Compact Framework | 更新日期: 2023-09-27 18:21:06
在成功地将24位位图转换为1位位图后,我遇到了一个问题,即当我将位图存储为文件时,它又是24位的,而不是1位(单色)图像。
我需要它真正是一个1位位图文件,以便将其发送到蓝牙打印机。
关于如何做到这一点,有什么想法或代码片段吗?
编辑:目前,我正在使用以下代码来保存位图:
System.Drawing.Bitmap.Save("Path'FileName.bmp",
System.Drawing.Imaging.ImageFormat.Bmp)
在互联网上,我看到了在Compact Framework上实现这一点的几种方法:
- 在这个关于使用Compact Framework保存1pp的相关SO问题中,有另一个Win32 API解决方案可用于将1pp数据保存到磁盘
-
使用PixelFormat枚举进行转换,但这可能在Compact Framework上不起作用 - 使用Win32 API进行转换,对代码进行全面解释,并提供完整的zip项目。这应该适用于Compact Framework,但我不能100%确定那里是否所有的API都可用
我手头没有CF安装,否则我会在发布之前尝试这些解决方案。
看看这个。
您可以将位图创建为
new Bitmap(width, height, PixelFormat.Format1bppIndexed);
然后使用CCD_ 2方法对像素进行操作并保存。
编辑:如前所述,不幸的是,CF不支持此功能。