2009年8月10日月曜日

[.NET]コントロールをビットマップにコピー

ControlにDrawToBitmapというメソッドがあります。このメソッド表示している画像をそのままbitmapに保存することができます。

で、実験してみました。コードはこんな感じ。

/// <summary>
/// ビットマップを取得する
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button2_Click(object senderEventArgs e)
{
    int w = this.Size.Width;
    int h = this.Size.Height;
    using (Bitmap bmp = new Bitmap(wh))
    {
        this.DrawToBitmap(bmpthis.Bounds);
        Clipboard.SetImage(bmp);
    }
}


コレを応用すればWebBrowserで適当なサイトを開き画像に保存みたいなことができるじゃなぁい。と思いやってみたのですが、結果は真っ白画像。WebBrowserでは当メソッドの機能が抑止されているようです。
いろんなテクニックを駆使すれば実現できるそうなのですが。。。また今度調べてみようと思います。

0 件のコメント: