|
||
解説: オリジナルの画像を読み込み、それを 1/2 にした画像を並べて違いを確認してみます。 StretchDraw メソッドを使うと、指定エリア内にイメージが収まるように描画できます。 使用例: 例では、Image1 に読み込んだ画像を Image2 に縮小して表示しています。 コンポーネントは、 Image1 と Image2、Button を適当に置きます。画像が重ならないように適度に離して配置してください。 OnClick イベントハンドラで Image1 に画像を読み込んでいます。 画像ファイル("sample.bmp")は適当なものを用意して、実行ファイルと同じフォルダに置いてください。 読み込んだ Image1 の画像を Image2 に StretchDraw します。 StretchDraw は、元の画像を間引いて表示するため画質がひどく劣化します。キャプチャした画像などで試すとよく分かりますが、文字が判読できないこともあります。 StrechDraw メソッドは、状況に応じて使うのが良いかもしれません。 //------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { // 画像を読み込む Image1->AutoSize = true; Image1->Picture->Bitmap->LoadFromFile("sample.bmp"); // Image2 へ 1/2 に縮小した画像をコピー Image2->Height = Image1->Picture->Height / 2; Image2->Width = Image1->Picture->Width / 2; Image2->Canvas->StretchDraw(Rect(0, 0, Image2->Width, Image2->Height), Image1->Picture->Bitmap); } //------------------------------------------------------------------- |