2017-02-23 9 views
0
String test = "Hello -this is a string of text"; 

このような何か:テキストの文字列は、iTextのに使用されたときはいつでも... は7 TextまたはParagraphそれは"this"イタリックになるだろうか、いくつかはStyleを設定します。スタイルクラスを直接使用してテキストを自動フォーマットする方法はありますか?

プログラムのユーザーが特定の単語イタリックを作りたいだろう、ので、私はこのようなものが必要:

ほとんどTextがitext7を使用して、特定のStyleで表示させるために特殊文字を使用します。

ユーザはTextAreaに入力してStringと定義します。 私はその後、ちょうどTextまたはParagraphその文字列を保持するために作成、保存された文字列を持っている:

  Cell location = new Cell() 
        .add(new Paragraph(test); 

IかかわらTextFlowを使用していますが、JavaFXのCSSを使用してそれがitext7では動作しませんについて。

+3

スプリットは、あなたはの部分に、文字列、それは動作しますが、ではない、この思い付いた、各部分に 'Text'オブジェクトを作成、変更したい部分について対応するスタイルを対応する 'Text'オブジェクトに設定して、すべての' Text'オブジェクトを段落に追加するだけです。 –

答えて

0

私はかなり...

private Paragraph formatText(String string) { 

    Paragraph paragraph = new Paragraph(); 

     Stream.of(string) 
      .map(w -> w.split(" ")) 
      .flatMap(Arrays::stream) 
      .forEach(w -> { 
       Text word; 

       if (w.startsWith("~")) { 
        String replace = w.replace("~", ""); 
        word = new Text(replace); 
        word.setItalic(); 

       } else if (w.startsWith("*")) {     
        String replace = w.replace("*", ""); 
        word = new Text(replace); 
        word.setItalic();  

       } else {      
        word = new Text(w); 
       } 

       paragraph.add(word);      
      }); 

    return paragraph; 

} 
関連する問題