リッチテキストボックスの画像データをビットマップ形式で保存するには?

解決


こういち  2009-11-26 23:55:22  No: 146580

こんにちは。リッチテキストボックスに画像などのイメージを表示しているのですが、
このデータをビットマップ形式等でファイルに保存するにはどうすればよいでしょうか?
試しに、以下のようにクリップボード経由でできるかどうか試してみましたが、

Dim img As Image

RichTextBox1.SelectAll()
RichTextBox1.Copy()
img = Clipboard.GetImage()

しかし、最後の行を実行しても、imgはNothingになってしまい、画像を取得することができません。
どのようにすればリッチテキストボックスの画像を保存できるか、ご教示頂きたく、よろしくお願いいたします。


Hongliang  2009-11-27 06:16:42  No: 146581

どう保存したいのでしょうか?
・リッチテキストボックス全体を一枚の画像として保存したい
・個別のイメージをそれぞれ画像として保存したい
・とにかく今のリッチテキストボックスの状態を保存したい、別に画像として残したいわけではない

それから、画像「などのイメージ」らしいですが、画像以外のイメージって何を指しているのでしょうか?


こういち  2009-11-27 15:24:34  No: 146582

Hongliang 様
リッチテキストボックス内の画像部分のみを画像として保存したいと考えています。
(上記の例ではリッチテキストボックス全体が画像という想定をしていました。)

しかしながら、以下サイトを参考に、リッチテキストボックスのRtfの内容を直接見て、画像の部分({\pict 〜 })より
WMFの内容をバイナリファイルにすればWMF形式のファイルとなり、最終的にはこれをビットマップに変換すれば
よさそうであることが分かりました。
http://social.msdn.microsoft.com/Forums/ja-JP/vcgeneralja/thread/95739584-5d75-4ecd-8d3b-c42bad38d24a

ここからは自分で調べたいと思います。
また疑問点が出てきたら別途質問させていただきます。
ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加