小编ima*_*oss的帖子

Chrome 扩展程序连接 Chrome 调试器并截取完整屏幕截图

我想使用 Chrome 插件在活动选项卡中截取全尺寸屏幕截图。

我知道有一个名为chrome.tabs.captureVisibleTab ()的函数,但这无助于获得全页屏幕截图。

我知道我们可以从 chrome 获取全页屏幕截图(开发工具 > ctrl+shift+p > 捕获全尺寸屏幕截图)。我想使用此功能或其他功能截取屏幕截图。

使用下面给出的代码,我可以出于我的目的在 Linux 机器上截取整页屏幕截图。但是当我在 Windows 机器上运行该插件时,我得到如下图像: 在此输入图像描述

这是我的代码。从底部开始阅读可能会更有帮助:

chrome.tabs.onUpdated.addListener(attachToDebugger);

function clearDeviceMetricsOverride(tabId, base_64_data) {
  chrome.debugger.sendCommand(
    {
      tabId: tabId,
    },
    "Emulation.clearDeviceMetricsOverride",
    function () {
      postData(base_64_data, tabId);
    }
  );
}


function captureScreenshot(tabId) {
  console.log(`{page}: captureScreenshot: status=aboutTo, tabId=${tabId}`);

  chrome.debugger.sendCommand(
    { tabId: tabId },
    "Page.captureScreenshot",
    {
      format: "jpeg",
      quality: 60,
      fromSurface: false,
    },
    (response) => {
      if (chrome.runtime.lastError) {
        console.log(`{back}: captureScreenshot: status=failed, tabId=${tabId}`);
      } else {
        var dataType = typeof response.data;
        console.log(
          `{back}: …
Run Code Online (Sandbox Code Playgroud)

javascript google-chrome google-chrome-extension google-chrome-devtools

6
推荐指数
1
解决办法
1301
查看次数