[リストへもどる]
一括表示

投稿時間:2002/10/31(Thu) 18:08
投稿者名:えむぴー
Eメール:
URL :
タイトル:
画像ファイルに余白を作成する
こんにちは、質問がありますのでよろしくお願いします。

VB上フォームのピクチャーボックスに画像ファイル
(例えば100px×100pxのサイズのJPG)があります。
それを保存することは出来たのですが、保存する際に
その画像ファイルに指定した色・指定した大きさの余白を
付けて保存したいのです。

例えば、150px×150pxに結局したい場合、画像ファイル自体
は100px×100pxなので、上下左右の余白に50px分に、指定
した色(例えば白)の余白を付けて保存したいのです。

できますでしょうか?
記述は当ホームページのJPG保存の所を参考に作成しています。
お願いします。

投稿時間:2002/10/31(Thu) 18:38
投稿者名:Say
Eメール:
URL :
タイトル:
Re: 画像ファイルに余白を作成する
150×150の真っ白なPictureBoxを用意し、PaintPictureやBitBltで
PictureBoxの中央に画像を転送した後で保存してはいかがでしょう?

投稿時間:2002/10/31(Thu) 19:38
投稿者名:えむぴー
Eメール:
URL :
タイトル:
Re^2: 画像ファイルに余白を作成する
> 150×150の真っ白なPictureBoxを用意し、PaintPictureやBitBltで
> PictureBoxの中央に画像を転送した後で保存してはいかがでしょう?
ご返答有難うございます。

早速、フォーム上に新しいPictureBox3を用意しました。
ですが、今現在100×1000のPictureBox2の画像を
どうやったらPictureBox3の縦横とも中央揃えに転送したら良いのか
が分かりません。
初心者で申し訳ございません。

そのあたりの方法も教えていただければ幸いです。

投稿時間:2002/10/31(Thu) 22:27
投稿者名:Say
Eメール:
URL :
タイトル:
Re^3: 画像ファイルに余白を作成する
> ですが、今現在100×1000のPictureBox2の画像を

元画像は100×100でなく、100×1000なのですか?
トリミングするか、Y方向に縮小する必要があります。
縮小する場合APIを使うなら、BitBltでなくStretchBltを使ってください。

描画開始点座標は、たとえば
余白追加後の画像の幅から中に配置する画像の幅を引き、
半分にしたものが左端の座標になります。
同様に上端座標も出せます。

投稿時間:2002/11/01(Fri) 09:57
投稿者名:えむぴー
Eメール:
URL :
タイトル:
Re^4: 画像ファイルに余白を作成する

> 元画像は100×100でなく、100×1000なのですか?
すいません。「1000」は打ち間違いでした。
100×100の画像です。

当ホームページのVB簡易リファレンスから、下記の記述を
コピペしました。

Form1.PaintPicture Picture1.Picture, 0, 0, , , 0, 0

この記述の考え方を教えて頂ければ幸いです。
例えば一つ目の0は何を表すとか、三つ目の値は何を表すかなど。

質問してばかりでスイマセン。よろしくお願いします。

投稿時間:2002/11/01(Fri) 16:23
投稿者名:Say
Eメール:
URL :
タイトル:
Re^5: 画像ファイルに余白を作成する
> Form1.PaintPicture Picture1.Picture, 0, 0, , , 0, 0
>
> この記述の考え方を教えて頂ければ幸いです。
> 例えば一つ目の0は何を表すとか、三つ目の値は何を表すかなど。

まずヘルプでPaintPictureメソッドについて調べてください。
その上でわからない部分があったら再質問してください。

ヘルプが使える環境にない場合、少々使いにくいですがMSDN ライブラリ OnLine
http://www.microsoft.com/japan/developer/library/default.asp
で調べることもできます。