0

私は小さなデザインプロジェクトに取り組んでいます。その一部には、単語の文字が左右でちょうど接触するように、特定のフォントでテキストを書き出すことが含まれていました。

これを次のように実装することを考えました。2文字のGlyphVectorsを作成し、vector.getOutline()を使用してShapeオブジェクトを作成してから、Areaオブジェクトを作成してそれらを交差させます。

この方法で私が見逃しているのは、交差点が空になるまで2番目の文字を右にシフトする機能だけです。

これを行う方法はありますか、それとも別のアプローチを使用する必要がありますか?

TIA

eta:わかりました、AffineTransformを使用できることがわかりました。さて、2文字の交差によって作成されたエリアのサイズ(表面積)を知る方法はありますか?

4

1 に答える 1

0

これをどの程度正確にしますか?ピクセルの精度は、ベクトルの精度よりもはるかに簡単に達成できます。線形化を検討しましたか(通常は

public PathIterator getPathIterator(AffineTransform at, double flatness)

)アウトラインの場合、すべてのポイント間で反対方向に検索しますか?これは、ベクトル精度ではありませんが、最も明白な解決策のようです。

于 2012-06-29T05:03:10.280 に答える