Chrome 如何获取浏览器缩放级别(通过触摸板或鼠标滚轮)

问题描述 投票:0回答:1

我正在尝试使用 JS 获取浏览器的缩放级别。 不是内置缩放(通过使用命令和 + 或 -),而是用户使用触摸板或鼠标滚轮调整窗口大小时的缩放。

我尝试使用 Chrome API

chrome.tabs.getZoom()
,但这会获取缩放选项大小。

另外

devicePixelRatio
只获取 DPI 并且始终为 2。

我需要这个,因为我正在网页中绘制一个区域,我将用画布裁剪该区域。我能够获得正确的选项卡窗口屏幕截图(无论是否放大),但如果放大(使用触摸板或鼠标滚轮),裁剪就会关闭

javascript google-chrome-extension browser
1个回答
0
投票

如果我理解正确的话...

您不知道文档正文何时被缩放,并且冒着裁剪失败的风险,您正在寻找一种正确计算裁剪尺寸/区域的方法,对吗?

如果这是问题所在,那么我会这样做:

给定... W = 你的框架/窗口 ID,然后:

var B=W.contentWindow.document.body;


var Z=W.contentWindow.getComputedStyle(B,null).getPropertyValue('zoom');


// Assuming you are cropping a rectangle then...


Crop_X1*=Z;

Crop_Y1*=Z;

Crop_X2*=Z; 

Crop_Y2*=Z;

换句话说,只需将获取的裁剪坐标乘以缩放系数即可。

© www.soinside.com 2019 - 2024. All rights reserved.