2012-01-02 14 views
1

画像をストレッチモードで描画すると、実際の座標と描画を取得する関数を使ってマウスクリックイベントのマウス座標を変換しますon-paintイベントをオーバーライドし、paintイベントGraphicsを使用してイメージを作成します。 画像ボックスはストレッチするように設定されているので、picturebox.DrawtoBitmapファンクションを使用して画像を保存しようとすると、小さいサイズの画像しか得られません。余分な部分は黒色で埋め尽くされています。ユーザーからの画像を保存描画されたPictureBoxのSizeMode = stretch in C#winforms

+0

を。 Graphics.ScaleTransformはあなたの友人です。 –

答えて

7

あなたはこの試みることができます:あなたは、ピクチャボックスにそれを描画する方法を知っているなら、あなたは、任意の*ビットマップ*にそれを描画する方法を知っている

using (Bitmap bmp = new Bitmap(pictureBox1.ClientSize.Width, 
           pictureBox1.ClientSize.Height)) { 
    using (Graphics g = Graphics.FromImage(bmp)) { 
    g.DrawImage(yourBitmap, 
       new Rectangle(0, 0, bmp.Width, bmp.Height), 
       new Rectangle(0, 0, yourImage.Width, yourImage.Height), 
       GraphicsUnit.Pixel); 
    } 
    bmp.Save(@"c:\yourfile.png", ImageFormat.Png); 
} 
関連する問題