在24位网络摄像头馈送上覆盖透明背景的文本



我正在使用DirectShow。Net库显示来自网络摄像头的提要。我用ISampleGrabber接口创建了捕获图,该接口使用了一个包含指向视频帧缓冲区的指针的回调。我用这个指针来创建一个。net位图和图形对象,我用Graphics. drawstring方法来覆盖一些红色文本。它接受一个Brush对象参数。当我绘制文本时,它会以多种颜色显示,而不是红色。画笔是正确的,因为我使用的是预设的Brush . red。目前,我认为这是由于刷子以32bpp的格式绘制,而网络摄像头的图像是24bpp。我可以创建一个临时的24bpp位图,在上面绘制文本,然后将其覆盖在视频帧上,但这不会给我一个透明背景的文本。

任何想法?(简单的更可取)

谢谢

我认为有一个解决方案:用32bpp创建一个新的位图,使用这个位图图形在它的"Graphics.FromImage(ourNewBitmap).Draw(theWebcam24Image)"上绘制网络摄像头图像,并使用相同的图形来绘制字符串,然后创建一个新的24位图并绘制我们生成的位图,然后将最后生成的图像附加到网络摄像头。

最新更新