List icon 目录

缩放

本指南展示了如何使用 Zoom API。

JxBrowser 允许缩放网页内容或所有网页内容,获取网页缩放级别更改时的通知,覆盖默认的缩放级别等。

要使用适用于所有网页的全局缩放,请使用 ZoomLevels 类。可以通过 Profile 获取此类的实例。例如:

Java
Kotlin
var zoomLevels = profile.zoomLevels();
val zoomLevels = profile.zoomLevels()

如果您使用 Engine.zoomLevels() 那么您将获得与默认 Profile 关联的 ZoomLevels 实例。

要控制加载在 Browser 实例中的网页的缩放,请使用 Zoom 类。

默认缩放级别

所有网页的默认缩放级别为 100%。要更改默认缩放级别,请使用 ZoomLevels.defaultLevel(ZoomLevel) 方法。

以下代码将所有网页的默认缩放级别设置为 150%:

Java
Kotlin
zoomLevels.defaultLevel(ZoomLevel.P_150);
zoomLevels.defaultLevel = ZoomLevel.P_150

控制缩放

您可以使用 Zoom 类在程序中对加载在 Browser 中的网页内容进行缩放,或者在具有触摸屏的环境中使用触摸手势进行缩放。

缩放级别为每个主机单独配置。如果您为 http://www.a.com 网页设置了缩放级别,则 http://www.b.com 网页的缩放级别将不会改变。

要更改缩放级别,您需要等待网页完全加载。

放大

要在当前加载的网页上执行放大操作,请使用以下方法:

Java
Kotlin
zoom.in();
zoom.`in`()

缩小

要在当前加载的网页上执行缩小操作,请使用以下方法:

Java
Kotlin
zoom.out();
zoom.out()

设置缩放级别

以下代码将已加载网页的缩放级别设置为 200%:

Java
Kotlin
zoom.level(ZoomLevel.P_200);
zoom.level = ZoomLevel.P_200

重置缩放

要将缩放级别重置为默认值,请使用以下代码:

Java
Kotlin
zoom.reset();
zoom.reset()

禁用缩放

您可以使用 Zoom.disable() 方法禁用 Browser 中加载的所有网页的缩放功能。此方法禁用缩放功能并将缩放级别重置为默认值。之后,所有通过 JxBrowser 缩放 API 进行的程序化缩放尝试以及在触摸屏设备上使用的触摸手势将被忽略。

例如:

Java
Kotlin
zoom.disable();
zoom.disable()

缩放事件

要在特定网页的缩放级别发生变化时获取通知,请使用 ZoomChanged 事件。例如:

Java
Kotlin
zoomLevels.on(ZoomLevelChanged.class, event -> {
    var host = event.host();
    var zoomLevel = event.level();
});
zoomLevels.subscribe<ZoomLevelChanged> { event ->
    val host = event.host()
    val zoomLevel = event.level()
}

双指缩放

目前 JxBrowser 不支持 macOS 上通过捏合缩放触控板手势来进行缩放。