如何在Java swing jtextpane的元素后面绘制自定义背景?

问题描述 投票:0回答:1
我知道Java Swing的HTML HTML渲染器非常基本并且已经过时了(我想自添加以来没有收到任何更新,这是可悲的TBH),但是我使用它来显示一个非常简单的HTML,该html由无序列表组成和一些标签。问题在于我能够使用CSS样式更改代码标签的背景,但是未实现

<code>

属性。我如何在我的代码标签周围绘制圆形边框,以使它们看起来不错?我还尝试挖掘
border-radius
软件包,但是代码似乎很抽象,我看不到魔术发生的位置。
样本:
javax.swing.text.*

这就是现在的外观:

基本上,我希望它具有与stackoverflow上相同的形状。 look 如果您对更好的渲染器或完全不同的技术有任何其他建议来显示数据,请随时告诉我。我知道一个叫做cssbox

的东西,但似乎也没有实现。


在Javafx中似乎有一定的能力(不是核心Java摇摆,但也许可以组合)?

https://codingtechroom.com/question/display-html5-in-swing

页面上说: 可以使用各种组件来完成Java Swing应用程序中的HTML5内容。尽管Swing并非本地支持HTML5渲染,但您可以将JeditorPane用于基本HTML或集成Javafx WebView以进行完整的HTML5功能。
java html swing
1个回答
0
投票

StringBuilder fullHtml = new StringBuilder(); fullHtml.append("<html>"); fullHtml.append("<head>"); fullHtml.append("<style>"); fullHtml.append("code {"); fullHtml.append("background: ").append(ColorUtils.colorToHex(UIManager.getColor("InstanceItem.defaultColor"))).append(";") // this line has no effect .append("border-radius: 10px;"); fullHtml.append("}"); fullHtml.append("</head>"); fullHtml.append("<body>"); fullHtml.append(html); fullHtml.append("</body>"); fullHtml.append("</html>");

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.