アルファベットストロークを作る
FontAlphabetStrokeBuilder は、輪郭フォントを使わず、内蔵されたsingle-line定義から直接 FontStrokeGlyph を生成します。
from glyph_motion.lib.font_alphabet_stroke_builder import FontAlphabetStrokeBuilder
from glyph_motion.lib.font_viewer import FontViewer
builder = FontAlphabetStrokeBuilder(
height=40.0,
spacing=5.0,
stroke_division=20,
)
stroke_glyph = builder.build_text(text="ABC")
viewer = FontViewer()
viewer.show_stroke(stroke_glyph=stroke_glyph)
小文字は大文字へ変換して処理されます。空白は一文字分の幅とspacingを進めます。
現在定義されている文字
A B C I L O T X Y Z
未定義文字を渡すと ValueError になります。
stroke_division
内蔵文字は粗い制御点で定義されています。各線分は stroke_division 個の小区間へ等分されます。これにより、後段を変更せずにロボットへ渡す点列密度を調整できます。
文字幅は height * 0.7 です。文字列内の次文字位置は、この幅と spacing の和で決まります。