• ベストアンサー

VB4.0で画像のサムネイル方法

VB4.0でデジタルカメラで撮った写真のサムネイルを作りたい。 例えば、800×600 100K の画像をwidth="80" height="60" の指定で縮小表示はされますが、 100k の画像を読込まなくては表示されません、 そこで 80×60 1k~2k くらいのサムネイルされた画像をVB4.0で作る方法をご存知の方、教えて下さい。

質問者が選んだベストアンサー

  • ベストアンサー
  • qwerty
  • ベストアンサー率43% (20/46)
回答No.1

こんばんは。 ビットマップのサムネイルでよろしければこんな方法があります。 サイズを800x600固定したピクチャボックス(Picture1)を貼り付け、 AutoRedraw=Trueにします。 strWorkDirに設定したパスにある、サポートされている形式の画像ファイルを strFileNameという変数に読みこみ、 Picture1.PaintPicture _ LoadPicture(strWorkDir & "\" & strFileName), _ 0, 0, Picture1.Width, Picture1.Height として、ピクチャボックスに描画します。 で、読みこんだイメージをビットマップに変換します。 SavePicture Picture1.Image, _ strWorkDir & "\tn-" & strFileName & ".bmp" Picture1.VisibleをFalseにしても動作しますので、 プログレスかなにかをつけておいて実行すれば、 ちょっと見栄えがよくなりますでしょうか。 JPeg画像にサムネイル情報を付加されたいのであれば、Exif形式の フォーマットなどをご理解されなくてはいけないでしょうし、 それをVBでおやりになるにはちょっと大変だと思います。 LeadToolsというコントロールも市販されているようですが、 お金がかかりますし、これではVBでやるという感覚が薄れますよね。 VB5.0Proで確認しましたが、おそらく4.0でも動作すると思います。 #あまりキレイな結果ではありませんでしたが・・・。 ご参考にしていただければ幸いです。

tinu2000
質問者

お礼

ありがとうございました、VBでは出来ないのかな? と不安でした、待ってて良かった(・_・、) 難しそうですが、なんとなく分ります、一行一行勉強しながらやって見ます。 急に目の前が開けた感じです。ありがとうございました。 締切りをもう少し待ってみます。

その他の回答 (1)

  • qwerty
  • ベストアンサー率43% (20/46)
回答No.2

おはようございます。 下のコメントの訂正です。 > サイズを800x600固定したピクチャボックス(Picture1)を貼り付け、 お分かりだと思うのですが、80x60です(汗) スミマセンでした。

tinu2000
質問者

お礼

今頃なんですが(汗)・・・、自分のマイページの中の、お礼コメント率が98%って何だろうと、ずーと思っていました。ここのお礼が無かったんですね。大変失礼しました。qwertyさんのおかげで、サムネイルを作ることが出来て、ベクターでフリーソフトを公開しました。16年も前の事です。さすがにVB4ですので、そのフリーソフトも今は公開中止にしています。本当にありがとうございました。