问题标签 [screenshot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
8588 浏览

iphone - 捕获包含状态栏的 iPhone 屏幕?

我正在寻找一种在包含顶部状态栏的 iPhone 上捕获屏幕截图的方法,我目前正在使用以下代码:

上面的代码成功截取了 iPhone UIView 的屏幕截图,但不包括顶部状态栏(取而代之的是一个空白的 20px 空间)。

0 投票
2 回答
1216 浏览

php - imagegrabwindow 打开两个窗口并抓取错误的屏幕截图

我想在本地 Vista 机器上使用 PHP 截取屏幕截图。对于初学者,我只想设置标准示例:

当我运行脚本(命令行)时,它会打开两个 IE 窗口。一个(第一个)保持为空,第二个转到指定的 URL。截取并保存屏幕截图并关闭第一个窗口。转到 URL 的窗口保持打开状态。屏幕截图本身取自第一个空的 IE 窗口。

如何定位第二个窗口?

-- 编辑#1 -- 在 Breakthrough 的所有帮助之后,它仍然无法在我的系统上运行。:( 现在我将尝试使用:http: //iecapt.sourceforge.net/http://cutycapt.sourceforge.net/两者在初步测试期间似乎都有效。我仍然对一个“真正的”PHP 解决方案。

0 投票
1 回答
324 浏览

java - 在java中检测屏幕的重绘区域

我正在创建一个小程序,它将执行类似屏幕共享的操作。为此,我正在使用 Robot 类来捕获屏幕区域。我想在第一次屏幕截图后捕获脏/重绘区域。我认为 RepaintManager 管理器可以用于此。但我不知道如何使用它。我是新手,所以 java 代码会很有帮助。谢谢

0 投票
3 回答
3231 浏览

qt - 带有 OpenGL 的 Qt MDI 应用程序:如何获取有效的屏幕截图?

我有一个用 Qt 编写的MDI应用程序。一些子窗口包括QGLWidgets,即OpenGL 上下文。其中最突出的是使用 OpenGL 顶点和片段着色器来可视化他们的数据。

我需要以编程方式捕获应用程序主窗口的屏幕截图,当然包括所有碰巧可见的子窗口。起初听起来很容易(“肯定被问过很多次,所以让我们用谷歌搜索吧!”),但仔细观察后似乎有点棘手......

现在这是我到目前为止所尝试的:

  1. QPixmap::grabWidget不适用于使用着色器程序的子窗口,显然是因为重定向上下文似乎不支持必要的 OpenGL 扩展。(渲染代码检查关联的上下文是否支持所需的扩展,如果不支持则拒绝继续。)
  2. QPixmap::grabWindow默默地让所有 OpenGL 上下文为空——即使是那些只使用基本原语的上下文。
  3. QGLWidget::grabFrameBuffer有效,但仅捕获特定子窗口的 OpenGL 上下文,而我想获取整个应用程序(基本上是Alt+PrtScr在 Windows 中执行的操作)。

我还尝试先执行#2,然后为所有子窗口迭代#3,只需将#3 的结果复制到#2 中图像的正确位置。这工作得很好,直到我让一些子窗口重叠——在这种情况下,来自#3 的图像会覆盖子窗口框架等。所以这种方法可能需要更多的代码来处理所有令人讨厌的极端情况......

一些额外的背景:一旦我得到截图,我将把其中的几个放在一个序列中以创建一个视频——可能使用ffmpeg这使得这个问题成为我上一个问题(第一部分)的延续;只是该应用程序已从单上下文独立 OpenGL 程序演变为使用 Qt 进行整体窗口和 UI 小部件的东西,并将图形嵌入子窗口中。

虽然我当然更喜欢一个不错的 Qt-ish 跨平台解决方案,但我也愿意考虑使用 Windows 特定的 hack。(这应该是可能的,因为我可以看到Alt+PrtScr做非常正确的事情。)

那么,有什么建议吗?

0 投票
4 回答
4421 浏览

wpf - 快速截屏和视频录制

有没有人致力于将屏幕捕获到视频流(存储在本地文件或发送到网络)?

我了解它是如何完成的,并且有几个测试解决方案可以工作——但我们很难实现良好的性能。我们需要在 CPU 已经被大量使用的计算机上捕获大约 4 兆像素的不断变化的文本和矢量图形屏幕空间。

通过将未压缩的 BMP 帧发送到网络可以实现可接受的(尽管远非预期)性能,但由于许多原因,至少一些现场压缩很重要。

关于如何使用尽可能少的处理能力进行编码的任何建议:可能是一个非常快的编解码器?或者一些避免在内存中复制图像的技巧?使用 DirectX 捕获屏幕(大部分屏幕都在 WPF 中)值得吗?

0 投票
3 回答
473 浏览

actionscript-3 - 如何获取 SWF 的屏幕截图并使用 AS3 将其下载到用户桌面?

有谁知道如何在 AS3 中截屏并将其下载到桌面?我知道马里奥·克林根曼 (Mario Klingenman ) 在 AS2 中有一个很棒的 BitmapDataExporter,但它在 AS3 中不起作用。

0 投票
2 回答
303 浏览

windows - 当应用程序尝试截屏时引起注意(Windows)

当另一个进程尝试进行任何屏幕捕获时,我需要我的应用程序引起注意。那可行吗?

0 投票
4 回答
13075 浏览

selenium - selenium.captureEntirePageScreenshot 不起作用,但 selenium.captureScreenshot 有效

我正在使用 Eclipse 和 Selenium RC 使用 TestNG 运行 Selenium。我使用了命令:

但出现以下错误:



有人可以建议为什么会发生此错误吗?我已经尝试过以下方法:

1)用“background=#CCFFDD”替换“”(字符串kwargs参数)

2) 在 Firefox 中以 chrome 模式运行

3)将路径更改为以下值,我仍然收到错误:“\test.jpg”、“c:\test.jpg”、“c:\test.png”、“c:\folder1\test .png", (folder1 存在) "c:\folder1\test.jpg",

4) 尝试使用 - selenium.captureScreenshot("\test.png"); 它工作正常,但不能解决我的目的,我不想使用awt。

有人可以建议可能出了什么问题吗?

谢谢,
穆根

0 投票
3 回答
297 浏览

excel - 与世界另一端的设计师合作

我正在尝试与坐在世界另一端的平面设计师合作。我们唯一的通讯媒介是电话线。每次她对页面上的元素进行哪怕一分钟的更改,她都必须截取屏幕截图、保存并邮寄——直到现在都是手动操作。

您可以猜到,这会让人非常恼火,并且会严重阻碍项目的进展。

我的想法是创建一个带有宏的简单 .xls 文件,该宏将捕获特定的热键组合(以全局方式),这样她就可以从她的 photoshop / illustrator 中按 ctrl+shift+q (或其他)。 xls 文件打开并最小化(以及监听组合键的宏),这个组合键将捕获屏幕截图并将其作为附件发送到 Outlook/Thunderbird,等待发送按钮。

我的问题是这是否是实现这一目标的最佳(和免费)方法,如果是,那么我们如何让 excel 宏监听全局热键、捕获屏幕截图和邮件?

0 投票
1 回答
1309 浏览

c# - 屏幕截图上的 GDI+ 一般错误

我的内部 Winform 应用程序有以下异常扩展。我的问题是我得到一个generic GDI+错误ss.save("C:\\HelpMe.jpg", ImageFormat.Jpeg);

它不是每次都有效,然后出错。有时它会连续工作几次。

这可能是一个“锁定”问题吗?我还应该看什么和/或做错了什么。

我这样称呼它-->