- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我在使用 DEVMODE 结构的 dmColor 字段时遇到问题。
我的默认打印机是彩色打印机,如果我通过控制面板将打印机属性的颜色默认输出为黑白,则 DEVMODE.dmColor 字段始终返回 DMCOLOR_COLOR 而不是 DMCOLOR_MONOCHROME。
即使我将打印机默认为黑白打印机,DEVMODE.dmColor 仍然始终返回 DMCOLOR_COLOR
所有其他 DEVMODE 字段(例如 dmDeviceName、dmCopies、dmDuplex 等)都可以正常工作。我还尝试使用 DeviceCapability 函数查询 DC_COLORDEVICE,微软文档表示,如果设备支持颜色,则应返回 1,如果不支持颜色,则应返回 0,如果发生错误,则应返回 -1。此函数始终返回 -1,但 GetLastError 返回的错误代码会转换为“操作成功完成”。
我在 Windows Vista 下运行,并且在 DEVMODE.dmFields 中指定了 DM_COLOR,有谁知道为什么会发生这种情况?
最佳答案
我已经解决了这个问题,似乎颜色设置以及其他设置都存储在 DEVMODE 结构下方的专用驱动器数据部分中。私有(private)数据的大小存储在DEVMODE.dmDriverExtra中。将从打印机属性对话框返回的专用驱动程序数据复制到打印设备已解决该问题。
关于delphi - 读写 DEVMODE.dmColor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3706108/
我在使用 DEVMODE 结构的 dmColor 字段时遇到问题。 我的默认打印机是彩色打印机,如果我通过控制面板将打印机属性的颜色默认输出为黑白,则 DEVMODE.dmColor 字段始终返回 D
我是一名优秀的程序员,十分优秀!