gpt4 book ai didi

c# - Windows 窗体 Web 浏览器控制缩放级别

转载 作者:太空狗 更新时间:2023-10-30 00:06:49 26 4
gpt4 key购买 nike

我正在使用 Web 浏览器控件在我的应用程序中显示一些即时生成的 HTML 文档。

问题是,在我的机器上,文件显示有点放大。在其他同事的电脑上,一切看起来“正常”。它必须是某种本地设置,但我找不到在哪里更改它。

我可以按 CTRL + 滚轮来缩小,但不保留缩放级别。据我所知,没有简单的方法以编程方式设置预定义的缩放级别。

这可能不太可能,但我担心它与 Internet Explorer(我从未使用过)及其设置有关。不幸的是,更改控件类型不是一个可行的选择。

非常感谢任何帮助,谢谢。

最佳答案

Problem is, on my machine said documents are displayed kinda zoomed in.

Internet Explorer 遵循窗口缩放设置。因此,您将在缩放比例为 100 的系统上的 WebBrowser 控件上看到的大小与您在缩放比例为 150 的系统上的 WebBrowser 控件上看到的大小不同, 而两个 WebBrowser 控件都设置为 100% 缩放。

原因是缩放。比例因子与 Windows 比例因子除以 100 或 physicalScreenHeight/logicalScreenHeight 相同。

As far as I can see, there's no easy way to set the predefined zoom level programmatically.

其实是有的。要更改 Web 浏览器控件的缩放级别,您可以获得 IWebBrowser2来自 WebBrowser.ActiveXInstance 的实例属性,然后使用其 ExecWB方法,以这种方式设置缩放:

int OLECMDID_OPTICAL_ZOOM = 63;
int OLECMDEXECOPT_DONTPROMPTUSER = 2;
dynamic iwb2 = webBrowser1.ActiveXInstance;
object zoom = 200; //The value should be between 10 , 1000
iwb2.ExecWB(OLECMDID_OPTICAL_ZOOM, OLECMDEXECOPT_DONTPROMPTUSER, zoom, zoom);

您还可以添加对 Microsoft Internet Controls (SHDocVw.dll) 的引用并将 WebBrowser.ActiveXInstance 转换为 SHDocVw.WebBrowser 并使用 ExecWB 方法。但是上面的代码在没有添加任何引用的情况下就达到了目的。

Web 浏览器缩放与 CSS3 缩放完全不同。但是您可能想知道如何设置文档正文缩放:webBrowser1.Document.Body.Style = "zoom:200%";

上述所有代码都应在文档完成后运行。

关于c# - Windows 窗体 Web 浏览器控制缩放级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52217916/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com