Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 如何更改使用chrome.tabs.captureVisibleTab(chrome扩展)捕获的选项卡的大小_Html_Google Chrome_Google Chrome Extension - Fatal编程技术网

Html 如何更改使用chrome.tabs.captureVisibleTab(chrome扩展)捕获的选项卡的大小

Html 如何更改使用chrome.tabs.captureVisibleTab(chrome扩展)捕获的选项卡的大小,html,google-chrome,google-chrome-extension,Html,Google Chrome,Google Chrome Extension,我正在使用以下代码捕获所选选项卡的屏幕截图 chrome.tabs.captureVisibleTab( undefined, function( data ) { display( data ) }); API说可以更改选项卡()的大小,但我不知道怎么做。目前,所有的屏幕截图都是全尺寸(1440x900)的,但我只需要它们的缩略图大小 有人知道如何使用这个API来实现这一点吗 谢谢。Chrome API实际上没有提供captureVisibleTab的图像大小。这个函数所做的,基本上就是你所

我正在使用以下代码捕获所选选项卡的屏幕截图

chrome.tabs.captureVisibleTab( undefined, function( data ) { display( data ) });
API说可以更改选项卡()的大小,但我不知道怎么做。目前,所有的屏幕截图都是全尺寸(1440x900)的,但我只需要它们的缩略图大小

有人知道如何使用这个API来实现这一点吗


谢谢。

Chrome API实际上没有提供captureVisibleTab的图像大小。这个函数所做的,基本上就是你所看到的,就是你从那个标签上得到的图像

如果要调整该选项卡的图像大小。您可以使用HTML5画布。

您可以将图像加载到画布中,然后从该画布调整图像大小,并对其执行任何操作。您可以使用
drawImage

根据drawImage的参数,可以调整其大小,也可以使用其他画布功能进行剪裁或裁剪

然后,在完成图像大小调整后,可以使用
toDataURL
将其转换回原图,以便使用或存储


谢谢Mohamed,“质量”参数的作用是什么?它看起来像我需要设置的东西,但我不知道如何设置。我认为质量是从1到100,因为它是一个整数。这是一个可选的字段,但是如果你想创建缩略图,那么用它来控制质量是很好的,因为它是在C++中完成的,并且使用画布调整它。关于堆叠溢出还有另一个问题,即如何使用Canvas调整图像的大小,使其具有高质量。但我建议使用Chrome的扩展API来降低质量,并使用Canvas来调整大小: