グラフィックス オブジェクトがどのように描画されるのか理解できません。次の関数があるとします。
private void DrawLineOnOverlay()
{
using (var g = pictureBox.CreateGraphics())
{
g.DrawLine(OverlayPen, cursorStartx, cursorStarty, cursorEndx, cursorEndy);
}
}
すでにこれを行っている pictureBox コントロールに単純な線を描画するには:
pictureBox.Image = BitmapToBeLoaded; // Load an 8-bit indexed Bitmap
私の理解では、ロードされた画像とグラフィックスオブジェクトを使用して描画されたピクセルの両方がまったく同じ画像の一部であるということです:pictureBox.Image
でもこれは:
Bitmap graphic = pictureBox.Image;
if (graphic != null )
{
graphic = new Bitmap (pictureBox.Image);
graphic.Save( "C:\\packed.png", ImageFormat.Png);
}
機能しません: 保存された画像には、画像の上に赤で描かれた線が表示されません。なぜこれ?なにが問題ですか?