pとかaとかtableとか、個別のタグごとにSourceFormatterを適用したいなと考えています。なんでかと言うと、例えばTableのtdタグなんかは、1文字しかない場合なんかは自分は1行で書いてしまった方が見やすいです。でもSourceFormatter#setIndentAllElement(true)をしてしまうと、そんな考えも無いので、ちょっとこの辺は使いづらいなと。
そこで、Sourceクラスをずっと見ていたらこんな記述が・・・
public SourceFormatter getSourceFormatter(){ return new SourceFormatter(this); }
なんだ、SourceFormatterを動的にnewしているだけ??だったら、Sourceから取り出した各Elementクラスを使ってnew SourceFormatter(element);見たいにすればいいんじゃ・・・
例: Source src = new Source("html文字列"); List list = src.getChildElements(); Element elem = (Element)list.get(n); SourceFormatter f = new SourceFormatter(elem); f.setIndentString(" ");
でもこれだめ。ここでnewしたらインデントの位置が初期化されてしまうので。何かいい方法ないかなぁ・・・