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したらインデントの位置が初期化されてしまうので。何かいい方法ないかなぁ・・・