缩放
本指南展示了如何使用 Zoom API。
JxBrowser 允许缩放一个网页或所有网页的内容,当一个网页缩放级别被更改时将获得通知,覆盖默认缩放级别等。
想要使用适用于所有网页的全局缩放,请使用 ZoomLevels
类。 您可以从 Profile
中获取此类的一个实例。 例如:
ZoomLevels zoomLevels = profile.zoomLevels();
val zoomLevels = profile.zoomLevels()
如果您使用 Engine.zoomLevels()
那么您将获得与默认配置文件关联的 ZoomLevels 实例。
要控制 Browser
实例中加载的网页的缩放,请使用 Zoom
类。
默认缩放级别
所有网页的默认缩放级别为 100%。 要更改默认缩放级别,请使用 ZoomLevels.defaultLevel(ZoomLevel)
方法。
以下代码将所有网页的默认缩放级别设置为 150%:
zoomLevels.defaultLevel(ZoomLevel.P_150);
zoomLevels.defaultLevel(ZoomLevel.P_150)
控制缩放
您可以使用 Zoom
类或在具有触摸屏的环境中使用触摸手势以编程方式缩放 Browser
中加载的网页内容。
缩放级别为每个主机单独配置。 如果您为http://www.a.com
网页设置缩放级别,则它不会为 http://www.b.com
网页更改。
想要更改缩放级别,您需要等到网页完全加载。
放大
需要在当前加载的网页上执行放大,请使用以下方法:
zoom.in();
zoom.in()
缩小
需要缩小当前加载的网页,请使用以下方法:
zoom.out();
zoom.out()
设置缩放级别
以下代码将加载网页的缩放级别设置为 200%:
zoom.level(ZoomLevel.P_200);
zoom.level(ZoomLevel.P_200)
重置缩放
需要将缩放级别重置为默认值,请使用以下代码:
zoom.reset();
zoom.reset()
禁用缩放
您可以使用 Zoom.disable()
方法禁用 Browser
中加载的所有网页的缩放。 此方法禁用缩放功能并将缩放级别重置为默认值。 之后,所有通过 JxBrowser Zoom API 以编程方式更改缩放级别以及在触摸屏设备上使用触摸手势的尝试都将被忽略。
例如:
zoom.disable();
zoom.disable()
缩放事件
要在更改特定网页的缩放级别时获取通知,请使用ZoomChanged
事件。 例如:
zoomLevels.on(ZoomLevelChanged.class, event -> {
Host host = event.host();
ZoomLevel zoomLevel = event.level();
});
zoomLevels.on(ZoomLevelChanged::class.java) { event ->
val host = event.host()
val zoomLevel = event.level()
}
双指缩放
目前 JxBrowser 不支持在 macOS 上通过双指缩放触控板手势进行缩放。