Processing

PythonでProcessing textAlign 文字の配置を設定

textAlign()

文字を描画する際の配置を設定する。LEFT、CENTER、RIGHTの各パラメータは、text()関数のx、yパラメータの値に関連して、文字の表示特性を設定する。

オプションの2番目のパラメータを設定することで、テキストを垂直方向に整列できる。BASELINEがデフォルト、使用しない場合は、垂直方向の配置がBASELINEにリセットされる。BOTTOMは、現在のtextDescent()に基づいて行をオフセットする。複数行の場合は最終行が一番下に配置され、その上に前の行が表示される。

text()に width、 height パラメータを指定して使用する場合、BASELINE は無視され、TOP として扱われる。(BASELINEがデフォルト設定のため、テキストはデフォルトでボックスの外側に描画される。BASELINEは、矩形内に描かれたテキストの有用な描画モードではない)。

垂直方向の配置は textAscent() の値に基づくが、多くのフォントでは正しく指定されていない。オフセットが正しく見えるように、手で数ピクセルずつオフセットする必要があるかもしれない。(textAscent()やtextDescent()を何パーセントか使って、フォントのサイズを変えるなどの対応が考えられる)

background(0)
textAlign(RIGHT)
text("123", 50, 30)
textAlign(CENTER)
text("456", 50, 50)
textAlign(LEFT)
text("789", 50, 70)