Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
文字列の代わりにStringBuilderを使用して、GDIを使用して画像に文字列を描画することはどういうわけか可能ですか?StringBuilderを受け入れるGraphics.DrawString()オーバーロードはありません。ただし、通常の文字列を使用すると、GC時間が大幅に増加する場合があります(私の場合、CLRプロファイラーによると52%)。
注:4.0以降、StringBuildersをサポートするXNAFrameworkを使用したくありません。
代替のグラフィックライブラリを使用せずにそれが可能だとは思いません。
.NET 4.0以降、内部でクラスを使用StringBuilderしません(リフレクションを使用しても、オブジェクトを抽出することはできません)。StringString
StringBuilder
String
myStringBuilder.ToString()呼び出しによってパフォーマンスが低下するのは正しいことです。基本的に、呼び出されるたびに文字列のコピーを作成します。しかし、を呼び出すコードではGraphics.DrawString()、それがボトルネックであるとは思えません。
myStringBuilder.ToString()
Graphics.DrawString()