■14660 / inTopicNo.7) |
Re[1]: pictureBoxのグラフをwordに貼り付けたい |
□投稿者/ myugaru (13回)-(2008/02/25(Mon) 05:06:32)
|
2008/02/25(Mon) 06:09:29 編集(投稿者) 2008/02/25(Mon) 05:08:26 編集(投稿者) ■No14623 (おおかべ さん) に返信 まず3つのケースを良くお読みください。
#####ここから
1.背景がWhiteSmokeの図をクリップボードへコピーする方法 グラフを書き始めるときにあらかじめ全体をWhiteSmokeで塗りつぶします。その後グラフを書き、クリップボードへコピーします。 pictureBox1.Image = new Bitmap(150, 150); Graphics g = Graphics.FromImage(pictureBox1.Image); g.Clear(Color.WhiteSmoke); g.DrawEllipse(Pens.Red, 10, 10, 100, 100);//←グラフの例 g.Dispose(); Clipboard.SetDataObject(pictureBox1.Image, true);
2.背景が透明の図をクリップボードへコピーする方法 クリップボードは通常の方法では透明色をサポートしません。これは古来よりWindowsの問題になっております。通常じゃない方法もいくつかありますが、本筋から外れます。出来ないとご理解いただくのがいいです。私の知り合いの画像解析に長けた方がこれについてつい最近記事を書かれております。 http://blog.goo.ne.jp/junki560/e/71f8493d8c810fbcf2dded51e90ece73
3.背景が透明の図をWordへ貼り付ける方法 これは一旦pngファイルへ落としてWordの「挿入→図→ファイルから」で簡単にできます。 pictureBox1.Image = new Bitmap(150, 150); Graphics g = Graphics.FromImage(pictureBox1.Image); g.DrawEllipse(Pens.Red, 10, 10, 100, 100);//←グラフの例 g.Dispose(); pictureBox1.Image.Save("abc.png");//abc.pngができる
#####ここまで
私が想像するに背景色をWhiteSmokeにしたいのではないですか?それなら1で回答になるかと思います。 かずきさんややじゅさんは2、3あたりを踏まえて回答されているように思います。リンク先については2あたりのWindows古来の問題に触れています。2の方向に話を広げると初心者とおっしゃっているおおかべさんには少々きついものになるかと思いますが、たぶんこの話の方向じゃないですよね?どうでしょう? さて今回のご質問を見ますとPictureBoxの背景がSmokeWhiteになると勘違いされているように思います。話のケースでは3のようなロジックになっているのではないでしょうか?PictureBoxのBackColorプロパティはImageには含まれているものではありません。あくまでFormに表示する際にPictureBoxが背景色でバックを塗りつぶすのに使っているにすぎません。 以上ご自分で上のロジックを試しにでよいので作ってみて違いなども確認の上で改めてご質問内容など整理のうえで解決に向けて参考にしてください。
|
|