Multi line label/area/pane in Java with Justified text [closed]

拜拜、爱过 提交于 2019-12-11 14:35:39

问题


I have an interesting task. Consider a String contentwith unknown length. I'd like to display content with a Font font with Justified text. I need to know what height this would take up if I specify the width. I want to display this text in the middle of the screen but it must have a width of width.

Hence, I would like to do something such as the following.

//create a JTextPane or JTextArea
pane.setText(content);
pane.setFont(font);
//set the width of the pane here
//get the height of the full text block if its justified
pane.setLocation(screenWidth/2 - width/2, screenHeight/2, height/2);

How can I do this?


回答1:


Normally, justification is done the other way around.

The text has a fixed height, and you adjust the width of the text in one of the following ways:

  • Add spaces between the words. Easier, but not visually appealing.
  • Add space between the letters. This is called kerning.

If you adjust the height so that the width is correct, every line in your text will have a different height.



来源:https://stackoverflow.com/questions/14105362/multi-line-label-area-pane-in-java-with-justified-text

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!