【问题标题】:Gdiplus::Image from screen (C++)Gdiplus::屏幕上的图像 (C++)
【发布时间】:2021-10-28 02:46:58
【问题描述】:

如果可能,我将如何将Gdiplus::Image 设置为当前显示的内容 HDC/HWND(即截图)?

我已经尝试了几件事,但我不会让它工作。请帮忙! :)

【问题讨论】:

  • 这个视频解释了(用实际代码)如何从屏幕上截取屏幕截图并保存为 bmp:youtu.be/2fmzooBKp8A 然后您可以随后将其转换为 GDIPlus::Image。
  • 有没有什么办法可以在没有 OpenCV 的情况下做到这一点?
  • Opencv 不需要。在链接中,屏幕截图被转换为 HBITMAP。然后使用 Bitmap::FromHBITMAP 直接转换为 GDI 对象。
  • 请澄清您的具体问题或提供更多详细信息以准确突出您的需求。正如目前所写的那样,很难准确地说出你在问什么。

标签: c++ visual-studio screenshot gdi+ gdi


【解决方案1】:

只需获取 gdiplus 图形上下文并为您的图像调用 DrawImage:

HDC dc = ...;
Gdiplus::Image image = ...;
Graphics graphics(dc);
dc.DrawImage(image,x,y);

documentation中有很多DrawImage版本;选择适合您需要的。

【讨论】:

    猜你喜欢
    • 2020-12-14
    • 1970-01-01
    • 2010-12-04
    • 1970-01-01
    • 1970-01-01
    • 2011-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多