private void DrawImage(Bitmap sourceBmp) { if (fillOverride != null && fillOverride != Brushes.Transparent) { Bitmap maskedBmp = FastBitmap.GetMask(sourceBmp, fillOverride.Color); g.DrawImage(maskedBmp, 0, 0, maskedBmp.Width, maskedBmp.Height); maskedBmp.Dispose(); } else if (penOverride != null) { Bitmap ghostBmp = FastBitmap.GetGhost(sourceBmp); g.DrawImage(ghostBmp, 0, 0, ghostBmp.Width, ghostBmp.Height); ghostBmp.Dispose(); } else { g.DrawImage(sourceBmp, 0, 0, sourceBmp.Width, sourceBmp.Height); } }