请教:如何在一幅BMP图片上面叠加文字,然后再保存成另外一幅BMP, 请使用数字图像变换的方式来解决,不要使用DC

eastnofail 2005-12-21 09:41:53
由于程序是运行在服务器上,很有可能没有安装显卡驱动,如果使用DC的话,会出现惨不忍睹的结果.

所以必须使用数字图像处理的方式,那位兄弟有过经验的?多谢指教!
...全文
240 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
seaiam 2005-12-22
  • 打赏
  • 举报
回复
那是因为你的BMP图像的bitCounts 与你从服务器上得到的DC的bitCounts不相等的原因造成的(我猜是24位图画到8位(或更低)DC上),
建议你用CreateDIBSection 替代 CreateCompatibleDC试试看
eastnofail 2005-12-21
  • 打赏
  • 举报
回复
因为目前是使用CreateCompatibleDC读取BMP图派那,然后在上面TextOut文字,然后再读取点阵,然后再保存为BMP,这样做在我的机器上运行结果正常,但是放到服务器(没有装显卡驱动)上面运行,发现结果生成的BMP图片丢失了大部分颜色,所以猜测CreateCompatibleDC跟显卡是息息相关的.

我先按照楼上的说法试试
Featured 2005-12-21
  • 打赏
  • 举报
回复
数字图像处理都是借助矩阵,
如果你硬要在矩阵中这样做,倒也不是不可以,
就是很笨拙:取得字模,然后依次替换矩阵中对应位置的点。

其实用DC更方便,直接TextOut多好
另外DC是在内存中的,跟显卡驱动没有关系。
放心使用吧

teli_eurydice 2005-12-21
  • 打赏
  • 举报
回复
DC 我会,其他的不会,呵呵

另外显卡驱动跟 DC 有区别吗,呵呵,不知道

19,468

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧