0
ترازبندی (justify) متن فارسی در جاوا
سلام دوستان.
میخوام متن فارسی رو به صورت جاستیفای در jtextpane یا jeditorpane یا موارد مشابه قرار بدم . ولی در بهترین حالت وسط چین میشه متنم و کل خط رو نمیگیره و جاستیفای نمیشه.
هم به صورت styleddoc تست کردم:
justified = doc.addStyle("justified", regular);
StyleConstants.setAlignment(justified, StyleConstants.ALIGN_JUSTIFIED);
و هم به صورت یک فایل html جاستیفای شده که فراخوانی بشه توسط jtextpane ولی هیچ کدوم جواب نداد<htm>
p { text-align:justify; direction:rtl;}
<htm>
ممنون میشم راهنمایی کنید
2 پاسخ
1
سلام به شما دوست عزیز کد زیر رو هم تست کنید
SimpleAttributeSet sa = new SimpleAttributeSet(); StyleConstants.setAlignment(sa, StyleConstants.ALIGN_JUSTIFY); textPane.getStyledDocument().setParagraphAttributes(0,/*document length*/,sa,false);
0
ممنون از شما. ولی متاسفانه همچنان وسط چین میشه به جای جاستیفای.
پنل و تکست پن رو به صورت زیر دارم. نمیدونم مشکلش چیه. متن انگلیسی رو جاستیفای می کنه.
Jpanel panel=new JPanel();
panel.setLayout(new BoxLayout(panel, BoxLayout.Y_AXIS));
panel.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
panel.setBorder(new EmptyBorder(0, 5, 0, 5));//top/right/bot/left
panel.setBackground(Color.WHITE);
panel.setPreferredSize(new Dimension(200,1000));/
JTextPane textPane= new JTextPane();
textPane.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
textPane.setSize(new Dimension(200,500));
textPane.setText(
"متن فارسی");
SimpleAttributeSet sa = new SimpleAttributeSet();
StyleConstants.setAlignment(sa, StyleConstants.ALIGN_JUSTIFIED);
textPane.getStyledDocument().setParagraphAttributes(0,500,sa,false);
panel.add(textPane);