投稿者 KOZ  (社会人) 投稿日時 2023/11/10 11:48:35
StringFormatFlags.DirectionRightToLeft   は、アラビア語などの右から左に書く言語を表示するために使います。
右寄せの場合は次のように指定してください。

Dim sf As New StringFormat() 
sf.Alignment = StringAlignment.Far

これでもいいんですが、文字を書くときは、TextRenderer を使ったほうがいいです。

Dim rct As New Rectangle(10, 10, cs.Width, cs.Height * 2)
Dim flags = TextFormatFlags.Right Or TextFormatFlags.NoPrefix Or TextFormatFlags.WordBreak
TextRenderer.DrawText(g, str, addFnt, rct, Color.Black, flags)