- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
是否可以使用 Chrome 开发工具远程调试器抓取打开窗口的屏幕截图?
例如,我正在连接到远程调试端口并且我有这个弹出一个空窗口的代码:
private void sendWindowPop(int width, int height) throws
IOException {
hsc.send("{\"method\": \"Runtime.evaluate\", \"id\": "
+ hsc.nextInt()
+ ", \"params\": {"
+ "\"expression\":
\"window.open('about:blank','name','toolbar=0,scrollbars=0,"
+ "location=0,status=0,menubar=0,resizable=0,width="
+ width
+ ",height="
+ height
+ "');\""
+ "}}");
(hsc 是我在 http://localhost:9222 处与调试器的连接)
然后,我用这个加载我的目标 URL:
private void loadPage(String uriString) throws IOException {
hsc.send("{\"method\": \"Page.open\", \"id\": " +
hsc.nextInt() + ", \"params\": {\"url\": \"" + uriString + "\"}}");
hsc.waitFor(ChromeNotifications.PAGE_LOADEVENTFIRED, DEFAULT_TIMEOUT_MILLIS);
}
上面的代码工作正常,首先弹出一个窗口然后加载网址。理想情况下,我想做的下一件事是抓取屏幕截图加载的网页。现在,这些浏览器窗口会弹出xvfb虚拟桌面,我可以用ImageMagick的导入工具抓取目标窗口的屏幕截图,但仅当它位于前景。
这是一个问题,因为这个应用程序被设计为运行在与弹出到虚拟桌面的多个窗口并行。任何窗口重叠我的目标窗口只会给我一个黑色屏幕截图,因为 Xfvb 只渲染可见的内容。
我还查看了 API 引用 chrome.tabs.captureVisibleTab。运气不好,它无法捕获不可见的内容。
有没有办法,使用远程调试器,抓取一个屏幕截图开窗?
(仅供引用,我的 ImageMagick 导入命令是这样的)
DISPLAY=:0.0 import -window "Google - Chromium" screenshot.png
我在哪里打开 URL http://www.google.com在我的 chromium 浏览器中使用上面的 loadPage() 。只要弹出的“Google - Chromium”窗口畅通无阻且有焦点,它就可以正常工作。将另一个窗口放在它的一部分上,我得到一个未渲染的大黑色区域。
谢谢!
最佳答案
Chrome 远程调试协议(protocol)现在支持 Page.captureScreenshot 功能
这是 CoffeeScript 中的一个例子
screenshot: (name, callback)=>
safeName = name.replace(/[^()^a-z0-9._-]/gi, '_') + ".png"
png_File = "./_screenshots".append_To_Process_Cwd_Path().folder_Create()
.path_Combine(safeName)
@chrome._chrome.Page.captureScreenshot (err, image)->
require('fs').writeFile png_File, image.data, 'base64',(err)->
callback()
关于java - 使用 Chrome 开发者工具获取 Chrome 的屏幕截图?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9040979/
所以我刚刚开始编写 iPhone 应用程序,一个潜在的雇主问我,“你的开发者句柄是什么?”他所说的“开发者句柄”到底是什么意思? 最佳答案 很可能您的应用程序在 iTunes 商店中列出的名称。这可以
我刚刚编译并运行了 hello world 应用程序,它运行良好。我通读了 android 文档中的一堆内容,内容涉及 android 的差异组件以及它们如何协同工作。现在我想制作一些链接到各种操作的
我不是 Android 开发人员,我试图了解他们在图形资源方面需要什么来制作可在许多 Android 设备上运行的应用程序。 我已经(尝试)阅读此页 http://developer.android.
关闭。这个问题是off-topic .它目前不接受答案。 想改进这个问题吗? Update the question所以它是on-topic用于堆栈溢出。 关闭 9 年前。 Improve this
如何编写程序来实现滑动 MUITableCell 的功能。我已经有一个我一直在使用的 MUITableCell 的子类。我是否只处理其中的滑动,就像处理 View 一样? 最佳答案 您需要实现此方法:
堆栈溢出, 是否有其他人在 Facebook 上遇到阻止注册为 Facebook 开发人员的能力的错误?该按钮对我显示为灰色。 当我尝试单击按钮将“否”切换为"is"时,没有任何功能。 我在互联网和
我正在尝试为 iOS Developer PageControl Sample 实现建议的优化。 .这是我在 PhoneContentController 中使用的代码: // A possible
您好,我写了一段代码来使用 Pubnub channel 发布 json: pubnubMessage = new Pubnub("demo", "demo"); Suppor
我正在熟悉 iOS 上的 SQLite。我正在尝试进行简单的用户注册,但是年龄值 (NSInteger) 总是变成一些大的负数,例如 -1073752692。这是我的注册码: - (User*
关闭。这个问题是opinion-based .它目前不接受答案。 想要改进这个问题? 更新问题,以便 editing this post 可以用事实和引用来回答它. 关闭 6 年前。 Improv
我的问题是,当我检查位置服务和数据是否关闭时,我的手机不会弹出没有启用数据或位置访问的通知,就像如果其中一个为假,它会显示通知。此功能在我的华为 P8 Lite 上不起作用,但在我的 Nexus 模拟
我正在开发一个需要集成 Paypal API 的 php 项目。我选择了 REST API。但我有一个企业账户(沙盒)。是否可以使用此帐户类型调用 REST API? 最佳答案 您需要使用任何有效的
我 6 个月前在 http://developer.paypal.com 上创建了一个应用程序.我已经创建了一些帐户以在沙盒模式下进行测试。昨天我检查了http://developer.paypal.
我很难理解 UIViewController 中的几个方法,但首先我会说出我认为它们的用途(忽略界面生成器,因为我没有使用它): -init:初始化在低内存情况下不需要释放的非 View 相关的东西(
我在构建我的应用程序时达到了 youtube api 配额限制,所以我向请求添加了一个开发人员 key ,现在我收到 403 错误:无效的开发人员 key 。 我曾多次尝试重新创建我的项目和 api
我搜索了http://espn.go.com/apis/devcenter/但找不到任何可以创建 API key 的地方。我还在 ESPN 创建了一个帐户,但没有运气。 最佳答案 4 个月前未公开 (
我阅读了处理此类问题的不同主题,但我仍然没有答案。这是我的问题: 在我的头文件中,我有这个: int cl, ch, _a = a, _b = b;\ __asm__ ("smull %0,
我实际上正在使用fbconnect,并且我正在尝试获取代表一个月前的unix时间。我对 1970 年以来的事情感到非常困惑。因为有人给我指出了正确的方向? 最佳答案 与 Unix epoch ,时间“
是否有任何工具可以让我监控内存使用和泄漏?例如,我想跟踪手动释放对象与启用 ARC 时自动释放对象时的内存使用情况。 最佳答案 它被称为 Instruments,您可以从 Product -> Pro
我正在使用 AllRoundAutomatation 的 Pl/sql 开发人员,现在我遇到了一个非常有趣的问题,我只想为 scoll up 配置 CTRL+UP 组合键!但我做不到,我该怎么做? 注
我是一名优秀的程序员,十分优秀!