いつもお世話になっております。 ピクチャーボックスに文字列を描画する処理で発生する現象の理由が知りたくて 投稿させて頂きます。 ピクチャーボックスにDrawStringメソッドで文字列を描画する際、描画先となる Imageオブジェクトを事前にFillRectangleメソッドにて塗りつぶした後に描画す るのと、塗りつぶしをせずに描画するのとで、描画される文字の太さが変わるの は何故なんでしょうか。 using System; using System.Drawing; using System.Windows.Forms; namespace Test01 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private PictureBox p = new PictureBox(); private void Form1_Load(object sender, EventArgs e) { this.Size = new Size(300, 200); p.Size = this.ClientSize; p.Location = new Point(0, 0); p.BackColor = Color.White; p.BorderStyle = BorderStyle.FixedSingle; p.MouseClick += new MouseEventHandler(p_MouseClick); this.Controls.Add(p); } private void p_MouseClick(object sender, MouseEventArgs e) { Bitmap c = new Bitmap(p.Width, p.Height); Graphics g = Graphics.FromImage(c); Font f = new Font("MS UI Gothic", 20); if (e.Button == MouseButtons.Left) { g.FillRectangle(Brushes.White, g.VisibleClipBounds); g.DrawString("左ボタンを押しました。", f, Brushes.Black, new Point(20, 20)); } else if (e.Button == MouseButtons.Right) { g.DrawString("右ボタンを押しました。", f, Brushes.Black, new Point(20, 20)); } g.Dispose(); p.Image = c; } } }