【问题标题】:How store a bitmap converted to 1bpp to a monochrome bmp file on the Compact Framework?如何将转换为 1bpp 的位图存储到 Compact Framework 上的单色 bmp 文件中?
【发布时间】:2020-11-23 18:19:30
【问题描述】:

在将 24 位位图成功转换为 1 位位图后,我遇到的问题是,当我将位图存储为文件时,它又是 24 位而不是 1 位(单色)图像。

我需要它是一个真正的 1 位位图文件,以便将其发送到蓝牙打印机。

关于如何做到这一点的任何想法或代码-sn-ps?

编辑:目前,我正在使用以下代码来保存位图:

System.Drawing.Bitmap.Save("Path\FileName.bmp", 
                           System.Drawing.Imaging.ImageFormat.Bmp) 

【问题讨论】:

  • 你有任何代码显示你现在是如何保存它的吗?
  • @Joachim,我使用 Bitmap-Class-Save-Method 保存位图。 System.Drawing.Bitmap.Save("Path\FileName.bmp", System.Drawing.Imaging.ImageFormat.Bmp)
  • Uwe,欢迎来到 SO。请知道您可以编辑您的问题。我现在给你添加这个。
  • @Abel 感谢您的支持和翻译!! :-)

标签: c# .net compact-framework


【解决方案1】:

在 Internet 上,我看到了在 Compact Framework 上执行此操作的几种方法:

我没有方便的 CF 安装,否则我会在发布之前尝试解决方案。

【讨论】:

  • 第一个解决方案我回来后看看我。我下周要去旅行。在我在这里发帖之前,我已经尝试过的第三个选项没有成功。即使位图不幸的是使用 Bitmap.Save 方法存储的存储 24 位颜色深度。
【解决方案2】:

签出this

您可以将位图创建为

new Bitmap(width, height, PixelFormat.Format1bppIndexed);

然后使用Save 方法操作像素并保存它。

编辑:正如所指出的,不幸的是,这在 CF 中不受支持。

【讨论】:

  • 正如评论线程the other answer 中提到的,PixelFormat.Format1bppIndexed 在 Compact Framework 下不可用。
猜你喜欢
  • 2011-04-27
  • 2012-07-12
  • 1970-01-01
  • 2014-10-16
  • 2013-02-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-02-28
相关资源
最近更新 更多