方法: テキストでのアンチエイリアシングの使用

アンチエイリアシングとは、描画されたグラフィックスとテキストのギザギザした境界を滑らかにして、見た目や読みやすさを向上させることを指します。 マネージド GDI+ のクラスでは、低品質のテキストだけでなく、高品質のアンチエイリアシング テキストも表示できます。 通常、品質の高いレンダリングほど、低品質のレンダリングよりも処理時間が長くなります。 テキストの品質レベルを設定するには、GraphicsTextRenderingHint プロパティを TextRenderingHint 列挙体のいずれかの要素に設定します

次のコード例では、2 つの異なる品質設定を使用してテキストを描画しています。

FontFamily fontFamily = new FontFamily("Times New Roman");
Font font = new Font(
   fontFamily,
   32,
   FontStyle.Regular,
   GraphicsUnit.Pixel);
SolidBrush solidBrush = new SolidBrush(Color.FromArgb(255, 0, 0, 255));
string string1 = "SingleBitPerPixel";
string string2 = "AntiAlias";

e.Graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel;
e.Graphics.DrawString(string1, font, solidBrush, new PointF(10, 10));

e.Graphics.TextRenderingHint = TextRenderingHint.AntiAlias;
e.Graphics.DrawString(string2, font, solidBrush, new PointF(10, 60));
Dim fontFamily As New FontFamily("Times New Roman")
Dim font As New Font( _
   fontFamily, _
   32, _
   FontStyle.Regular, _
   GraphicsUnit.Pixel)
Dim solidBrush As New SolidBrush(Color.FromArgb(255, 0, 0, 255))
Dim string1 As String = "SingleBitPerPixel"
Dim string2 As String = "AntiAlias"

e.Graphics.TextRenderingHint = TextRenderingHint.SingleBitPerPixel
e.Graphics.DrawString(string1, font, solidBrush, New PointF(10, 10))

e.Graphics.TextRenderingHint = TextRenderingHint.AntiAlias
e.Graphics.DrawString(string2, font, solidBrush, New PointF(10, 60))

次の図は、このコード例の出力を示したものです。

Screenshot that shows text with two different quality settings.

コードのコンパイル

前のコード例は、Windows フォームで使用するために設計されていて、PaintEventHandler のパラメーターである PaintEventArgse を必要とします。

関連項目