如何在字符串BOLD中制作一些字母

时间:2015-03-15 16:59:36

标签: java string fonts

我正在寻找一种简单的方法,使标签中的某些字母变为粗体。 我有一个这样的字符串:

String r = "y = "+output0+" "+output1+"sin(x) "+output2+"cos(x)";

和标签:

Label s = new Label(r);

我需要制作" y"和" sin(x),cos(x)"胆大。我尝试使用HTML,但它没有工作(也许我使用它错了)。如果我为该标签设置了字体,那么整个标签都是粗体(包括那些输出),这不是我需要的。

2 个答案:

答案 0 :(得分:3)

您可以在JLabel和其他一些Java组件中使用html样式。如果您使用<html>开始撰写文本并以</html>结尾,则会呈现JLabel中的html代码。

这可以解决您的问题:

JLabel myLabel = new JLabel(); 
// The following line is required to make this JLabel's text not bold as JLabel's text is bold be default.
myLabel.setFont(myLabel.getFont().deriveFont(Font.PLAIN)); 
myLabel.setText("<html><strong>y</strong> = " + output0 + " " + output1 + "<strong>sin(x)</strong> " + output2 + "<strong>cos(x)</strong></html>");

答案 1 :(得分:0)

尝试使用HTML(您必须使用<html>开始字符串并以</html>结束):

new Jlabel("<html>Normal text. <strong>This is bold.</strong></html>")

解释! <html>告诉Java呈现HTML(超文本标记语言),<strong>告诉HTML内部文本非常重要,通常用粗体表示。