加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

如何更改WinRT WebView的缩放级别?

发布时间:2020-12-14 05:36:29 所属栏目:Windows 来源:网络整理
导读:如何更改WinRT Webview的缩放级别? 如果我给它焦点,我可以使用键盘CTRL和CTRL放大/缩小 – 但这可以通过代码实现吗? 注意:将WebView放在ScrollViewer中,让缩放,不是我想要的. 解决方法 不幸的是,我认为没有办法直接在托管代码中执行此操作.但是,如果您拥
如何更改WinRT Webview的缩放级别?

如果我给它焦点,我可以使用键盘CTRL和CTRL放大/缩小 –
但这可以通过代码实现吗?

注意:将WebView放在ScrollViewer中,让缩放,不是我想要的.

解决方法

不幸的是,我认为没有办法直接在托管代码中执行此操作.但是,如果您拥有内容或者可以注入一些css /脚本,则有一种解决方法.

在您的HTML中,添加此css:

<style type="text/css">
body
{
zoom:100%;
}
</style>

在你的HTML中还包括一个这样的脚本块:

function setZoomLevel(newZoom) {
    document.styleSheets[0]['rules'][0].style['zoom'] = newZoom;
}

在您的C#代码中,添加一个帮助方法:

private void SetZoomLevel(int level)
{
    string slevel = string.Format("{0}%",level);
    webBrowser.InvokeScript("setZoomLevel",slevel);
}

在C#代码中,您现在可以通过调用以下内容来调整缩放级别:

SetZoomLevel(200);

这是我能找到的最好的,不幸的是,如果你不能注入一个样式和一些脚本它就行不通.

注意:虽然这确实缩放内容的方式与调整缩放滑块非常相似,但桌面浏览器中的缩放滑块不受影响.因此,如果你调用SetZoomLevel(200);上面然后将滑块设置为200%,你实际上会看到400%.这应该不是WebView中的问题,因为没有滑块.

希望有人能提出更好的答案.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读