zer*_*kms 5 .net c# screen-scraping image-manipulation winforms
解释我需要什么有点难,但我会尝试:
我需要编写应用程序(winform),这将是对图像/其他形式背后的某种过滤器.除了一个例外 - 所有形式后面应该看起来像红色(例如)颜色,它必须被替换为任何其他指定的颜色,例如白色.
所以让我们想象一下,我用几行文字打开了Word Word.用红色和黑色字母.因此,当我将我的应用程序放在此文本上方时 - 它应该"过滤"红色符号并将其填充为白色.
所以我理解这个任务:我必须在表单后面捕捉区域,然后处理它(替换颜色)并在我的表单体上绘制这个图像.
解决方案的任何链接或关键字?
UPD:
所以 - 这是我的最终解决方案:
谢谢所有人;-)
UPD 2: 示例http://dl.dropbox.com/u/4486681/result.png
UPD 3:这是来源
您可以使用以下代码创建桌面快照:
public Bitmap CaptureScreen()
{
Bitmap b = new Bitmap(SystemInformation.VirtualScreen.Width, SystemInformation.VirtualScreen.Height);
Graphics g = Graphics.FromImage(b);
g.CopyFromScreen(0, 0, 0, 0, b.Size);
g.Dispose();
return b;
}
Run Code Online (Sandbox Code Playgroud)
将尺寸和位置替换为表单的坐标。这样您就可以获得表单背后内容的位图。然后您可以对该位图进行颜色替换。
请注意,由于 ClearType 等设置和其他抗锯齿机制,您在进行颜色替换时还必须考虑“中间像素”。否则事情会看起来很有趣:-)
| 归档时间: |
|
| 查看次数: |
444 次 |
| 最近记录: |