VC++中如何将图片放置在优化校准的特定位置

Posted

技术标签:

【中文标题】VC++中如何将图片放置在优化校准的特定位置【英文标题】:How to Place the image at specific location of the Picture Conrol in VC++ 【发布时间】:2012-12-01 12:01:16 【问题描述】:

我正在尝试在实时视频上叠加图像。使用的 IDE 是 Visual Studio Professional 2010。代码是用 C++ 开发的。当我尝试在实时视频上叠加图像时,我正在使用句柄加载图像即

                           HANDLE hBitmap;            

         hBitmap = LoadImage(NULL, L"C:\\Users\\User\\Documents\\Visual Studio 2010\\Projects\\BMP_Image.bmp",IMAGE_BITMAP, 0,0, LR_LOADFROMFILE );

我正在使用 Alpha 混合机制将图像叠加到视频上。我遇到的问题是,图像在视频上连续叠加了五次。

我传递一个图片控件的ID,放在rc文件中的对话框中,用来加载直播视频并显示。我没有在代码中使用任何 MFC。视频使用 Direct 2D 机制渲染

视频分辨率为 640*480,位图图像分辨率为 128*128。如果我拿这张位图,视频会在视频上产生五次叠加的图像..

我使用 GetWindowRect() 和 ScreentoClient() 获得了对话框的坐标。但我想要图片控件的坐标。

我有以下疑问:

如何获取图片控件的坐标???

如何将图片放置在图片控件的特定位置???

期待您尽早的积极回应……


问候,

维韦克

【问题讨论】:

【参考方案1】:

您可以使用以下函数来检索图片控件的句柄:

::GetDlgItem( hWnd of your dialog, Id of your picture control)

通过检索它的句柄,您可以获得其他信息,例如它的位置、大小和

::GetWindowRect(hWnd, &rc)

如果您通过一些 API 调用(例如 StretchBlt)覆盖图像,则可以将其放置在您想要的任何位置。

【讨论】:

以上是关于VC++中如何将图片放置在优化校准的特定位置的主要内容,如果未能解决你的问题,请参考以下文章

如何在 JavaFX 中使用 HBox 将某些元素放置在画布上的特定位置? [关闭]

如何将窗口应用程序 python/tkinter 放置在屏幕上的特定位置?

Xtion 垂直位置使用(校准)与 Skeleton

计算优化校准中图像的正确位置,并正确绘制背景(在 MFC 对话框中)

将文本放置在图像中特定位置的简单方法?

LATEX强制放置表格图片在固定的位置