ハロー、
GDI+で両端揃えのテキストを描画したいです。このテキストに下線が引かれると、DrawString メソッドで問題が発生し
ます。 - このメソッドに、空白を含む文字列と下線付きの形式を指定すると、スペースに幅がないため、何も描画されません。
- 正当化されたテキストがある場合、おそらくスペースは通常よりも広くなります。
特別な幅の下線付きスペースを描画する解決策が見つかりませんでした。
ご協力いただきありがとうございます。
ハロー、
GDI+で両端揃えのテキストを描画したいです。このテキストに下線が引かれると、DrawString メソッドで問題が発生し
ます。 - このメソッドに、空白を含む文字列と下線付きの形式を指定すると、スペースに幅がないため、何も描画されません。
- 正当化されたテキストがある場合、おそらくスペースは通常よりも広くなります。
特別な幅の下線付きスペースを描画する解決策が見つかりませんでした。
ご協力いただきありがとうございます。
GDI+ は末尾の空白まで下線を描画します。これは通常、GDI TextOut の動作と比較して望ましいことです。ただし、DrawString に渡す文字列に非表示の非空白文字 (U+200B ゼロ幅スペースや U+007F などの制御文字など) を追加すると、最後の文字はスペースではなくなり、すべてのスペースになります。下線が引かれています。これは、行の長さを自分で計算しようとするよりも脆弱ではありません。
これは特に驚くことではありません。それが私が期待する動作です。GDI+ は、テキストの文字列とインラインで表示されるスペースに対して、期待どおりに下線を描画します。問題は、空白のみを含む文字列には長さがなく、したがって下線が付かないことです。
では、問題は、なぜ下線付きの空白を描く必要があるのかということです。何が問題なのDrawLine
ですか?