希望有人有答案,并不是太复杂了。我正在研究一个C ++ DLL(没有C#或.Net,完全静态的DLL)。
无论如何,它对构建单色位图的担忧。除了解决方案之外,我所有的工作都在工作。我得到设备上下文,获取兼容设备上下文,构建位图,绘制我需要的(黑/白),并可以保存。这一切都很好。但是,我无法弄清楚如何设置位图的分辨率。
在C#下从另一个实用程序进行一些测试时,我可以创建一个位图并设置分辨率。在这样做的过程中,我运行了一个例程来生成相同的文件内容,参数从1到300用于分辨率。对于“biCompression”DWORD属性中的值,每个图像的出现完全相同。默认情况下屏幕分辨率为96x96,但对于300x300的打印机,甚至一些分辨率为203x203的打印机,需要明显更改。
答案 0 :(得分:1)
您确定不想设置biXPelsPerMeter
和biYPelsPerMeter
吗?这两个字段告诉您X和Y中每米有多少像素,您可以使用它来设置DPI。 biCompression
仅处理位图的压缩类型,例如RLE,JPG,PNG等。
答案 1 :(得分:0)
你绝对确定吗?你观察到的行为的描述对我来说听起来很可疑,我怀疑你用来编写位图的代码或者你的代码将它们读回来。
答案 2 :(得分:0)
感谢您提供输入,但我也会查看biXPelsPerMeter和biYPels。我会仔细检查格式,以及设置的内容......如果是这样,你可能会在我的问题上用第二组眼睛(思想)来击中它。
由于