我在这里看到了很多关于在 swing 应用程序中显示 HTML 内容的问题。但是没有一个库支持 html5(我买不起 JxBrowser)。
我有一些本地存储的 html5 网页,我想在我的 Swing 应用程序中显示它们。一个想法是将 firefox 或 chrome 嵌入到我的 java 应用程序中并删除控件。
如何在我的 Swing 应用程序中显示 html5 内容?
您应该研究完全支持 HTML5 并用纯 Java 编写的新 JavaFX 浏览器。您可以轻松地将其集成到任何 Swing 应用程序中 - 参见官方说明: http ://docs.oracle.com/javafx/2/swing/swing-fx-interoperability.htm
但我想这可能会迫使你使用 JDK7+ 来完全支持各种操作系统。
很抱歉破坏了这个旧线程。但是,今天这仍然是一个非常相关的问题,所以我想我会加入额外的信息和选项。
同意上面关于WebKit的评论。它内置于 Java 中,速度快,而且免费,而且非常易于使用。Oracle 在这方面的教程/示例是我在他们的网站上看到的最好和最清晰的一些(您将很快启动并运行一个基本的 Java 网页显示应用程序): https ://docs.oracle.com/ javafx/2/webview/jfxpub-webview.htm
WebKit 实际上只有 1 个限制/限制:它是 JavaFX,您不能将其直接嵌入到 Swing 或 AWT 控件中。但是,您可以将 JavaFX 场景嵌入到 Swing JPanel(或其他容器)中,以便您的 Swing 应用程序可以显示 HTML5。
而且,由于 Oracle 现在将 JavaFX(以及 WebKit)从主 JDK/JRE 中“解耦”,这可能会给想要使用您的 Java 应用程序的人增加额外的步骤。例如,他们可能需要为他们的平台单独下载和安装 JavaFX(它存在)。
参考:Java SE 11:大删除, https ://www.reddit.com/r/programming/comments/9nakq3/java_se_11_the_great_removal/
或者您可以使用 GraalVM(或其他一些打包程序)之类的东西来构建一个独立的应用程序并分发它。
参考:使用 GraalVM 可以做的十件事 - Oleg Šelajev, https://www.youtube.com/watch? v=tEaEAq0L9Pk
无论如何,希望这对某人有所帮助。:)
WebKit 集成在 Java 8中,因此您无需费力。它不断更新。它可用作JavaFX WebView 控件。Java 还带有 Nashorn javascript 引擎,可以从 JavaScript 调用 Java。整体表现非常出色。