请教C#截屏:可以直接截屏成一张黑白(或灰度)的图吗?

Carlven2012 2021-02-21 02:15:59
如题,主要是想加快速度,只要截图成黑白就可以,不用彩色的。
...全文
324 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
assky124 2021-02-22
  • 打赏
  • 举报
回复
先截图,然后用ColorMatrix 处理下彩色
SDHU 2021-02-22
  • 打赏
  • 举报
回复
应该不能直接截成灰度图吧,除非是再把彩图像素做灰度处理,效率肯定更慢一点。 如果只是想加快效率,可以降低图像质量,分辨率试试。
Carlven2012 2021-02-22
  • 打赏
  • 举报
回复
引用 3 楼 wanghui0380 的回复:
达不到你要求的“加快速度”,在应用层面,无论谁来做其实都是从dc获取,原始dc本来就是彩色的,所以只能说复制dc数据的时候,进行转换计算弃掉通道值达到灰度效果,所以说“加快cpu速度”是伪需求,“加快IO速度”到是真需求 https://social.msdn.microsoft.com/Forums/vstudio/en-US/1a856813-a746-4c1a-ac15-a4314f6eb349/quick-image-conversion-to-8bpp?forum=csharpgeneral 你看到了彩色转灰度是没问题的,但是他需要做转换计算(因为你的DC源就是彩色,所以要重新计算,所以如果你说的加快速度指加快cpu,我们说在应用层面没机会)
https://bbs.csdn.net/topics/70101545 谢谢。 您看下这个题主的代码。我之前也试过,可以是黑白。 但我可能想要的是灰度图,就是中间有过度的。 这个截图出来只有黑白两个色,没有中间细节看不清是啥。 能在此基础上改进吗?
Carlven2012 2021-02-22
  • 打赏
  • 举报
回复
引用 1 楼 87585 的回复:
应该不能直接截成灰度图吧,除非是再把彩图像素做灰度处理,效率肯定更慢一点。 如果只是想加快效率,可以降低图像质量,分辨率试试。
谢谢,请看这个: https://bbs.csdn.net/topics/70101545 我试过,截图出来可以是黑白,但是只有黑和白,没有中间灰度过度。 要是有中间过度,也就是灰度图就好了。
wanghui0380 2021-02-22
  • 打赏
  • 举报
回复
达不到你要求的“加快速度”,在应用层面,无论谁来做其实都是从dc获取,原始dc本来就是彩色的,所以只能说复制dc数据的时候,进行转换计算弃掉通道值达到灰度效果,所以说“加快cpu速度”是伪需求,“加快IO速度”到是真需求 https://social.msdn.microsoft.com/Forums/vstudio/en-US/1a856813-a746-4c1a-ac15-a4314f6eb349/quick-image-conversion-to-8bpp?forum=csharpgeneral 你看到了彩色转灰度是没问题的,但是他需要做转换计算(因为你的DC源就是彩色,所以要重新计算,所以如果你说的加快速度指加快cpu,我们说在应用层面没机会)

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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