c++ - 计算单色 BMP 的 BITMAPINFOHEADER biCompression 值

标签 c++ windows winapi bitmap

希望有人能给出答案,而且不会太复杂。我正在处理 C++ dll(没有 C# 或 .Net,完全静态的 DLL)。

总之,它是构建单色位图的。除了决议,我所有的都在工作。我获得了设备上下文、获取兼容的设备上下文、构建位图、绘制我需要的内容(黑色/白色),然后可以保存。这一切都很好。但是,我不知道如何设置位图的分辨率。

在 C# 下从另一个实用程序进行一些测试时,我可以创建一个位图并设置分辨率。为此,我运行了一个例程来生成相同的文件内容,分辨率的参数从 1 到 300。除了“biCompression”DWORD 属性中的值外,每个图像都完全相同。默认是 96x96 的屏幕分辨率,但对于 300x300 的打印机,甚至一些分辨率为 203x203 的打印机,需要进行明显更改。

最佳答案

你确定吗?对您观察到的行为的描述对我来说听起来很可疑,我会怀疑您用来编写位图的代码或将它们读回的代码。

关于c++ - 计算单色 BMP 的 BITMAPINFOHEADER biCompression 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/602663/

相关文章:

mysql - 在 MS Windows 7 中从 Cmd.exe 运行 MySql 脚本

windows - 如何创建带有不透明子控件(或子窗口)的透明窗口?

c++ - 如何获取USN期刊查询的完整路径?

c++ - 在 if 语句中,cin 如何计算为真?

c++ - 使用 getline() 从文本文件中读入行并将 push_back 读入对象 vector

python - osx 上的 Tkinter/matplotlib 多个事件窗口

C++/具有多个独立窗口的应用程序

c - 如果源代码在 win32 中是 UTF-8 编码的,如何显示 UTF-16 const 字符串?

c++ - 用于新运算符分配的公共(public)内存

c++ - 如何将第三方库(如 protobuf)正确链接到 Qt Creator 项目中?