以编程方式检测Swing HTML标记是否正确呈现

时间:2018-05-04 17:52:49

标签: java html swing fonts jlabel

有没有办法检测在JLabel中呈现的(合成正确的)HTML是否已成功呈现,并且正在显示所有预期的字形

我有以下HTML字符串:

<html><h3>Title</h3><ul><li><b>S</b>tuff</li><li><b>S</b>taff</li><li><b>S</b>tiff</li></ul></html>

呈现:

标题

  • 取值凝灰岩
  • 取值塔夫
  • 取值 TIFF

但是,在应用程序中,JLabel中的相同HTML呈现为: an example

可以看出,没有任何内容bold,我的自定义HTML解析器可以检查HTML issues,并且它检测到String正确,然后正确解析&#34;&#34;,并渲染字形,但bold字形被其默认的plain字形替换。

有没有办法以编程方式检测到没有使用雕文,并搜索雕文,并替换它?

另外值得注意的是:

  • 类似的问题没有产生重大结果。我可以确认HTML始终是正确的,即使使用&#34;测试HTML&#34;,也会出现问题。
  • 字体包含粗体
  • 其他HTML标记正在其他地方正确呈现(p,i,h等)
  • HTML来自其他供应商,不应更改/处理/定义< / LI>

1 个答案:

答案 0 :(得分:1)

默认情况下,JLabel文本已经是粗体。你不能加倍加粗,你只能解开它并重新制作它。

尝试:

<html><body style="font-weight: normal"><h3>Title</h3><ul><li><b>S</b>tuff</li><li><b>S</b>taff</li><li><b>S</b>tiff</li></ul></body></html>