垂直对齐java中的文本未正确显示

时间:2017-06-30 23:01:30

标签: java html css swing

我正在使用this问题的答案,以便对我的JLabel文字进行自动换行,而我正在使用的代码就是这样:

label.setText("<html style=\"vertical-align:middle;\">"+label.getText()+"</html>");

但标签显示错误的文字。例如,如果标签的文字是“大坏狼”,我看到的是:

<html style="vertical-align:middle;">the big bad wolf</html>

为什么标签不接受我的风格?
更新:以下是我要尝试的示例: enter image description here

1 个答案:

答案 0 :(得分:1)

尝试

private String warpWithHtmlTags(String...strings) {

    StringBuilder sb = new StringBuilder("<html>");
    sb.append("<div style = \"text-align: center;\">");

    for(String s : strings) {

        sb.append("<p>")
          .append(s)
          .append("</p>");
    }

    sb.append("</div></html>");
    return sb.toString();
}

测试:

  String text = warpWithHtmlTags("line one", "longer line two", "even longer line three");
  JLabel label = new JLabel(text);