掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
画像拡大時のタイルを円滑化 (ID:40791)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
yamaさん、ありがとうございます。投稿が前後していて失礼しました。 転写する先の位置とサイズは指定できるわけですから確かに事前に切り取っておけばできるかもしれないと次のように試してみました。 TBitMapを切り取って準備できたのですがそれをTGPBitMapに入れる方法がわかりませんので教えてください。 初心者で申し訳ありませんがよろしくお願いします。 procedure TForm1.Button3Click(Sender: TObject); var graphics : TGPGraphics; Jpg0: TJpegImage; bmp0,bmp1:tbitmap; tgpbmp: TGPBitmap; w0,h0,w1,h1: double; l0,t0,l1,t1: double; begin Jpg0 :=TJpegImage.Create ; jpg0.LoadFromFile('C:\test.jpg'); Bmp0 :=TBitmap.Create; Bmp0.Assign(jpg0); jpg0.Free; //BitBltで切り取ってBmp1に描画 l0:=10; t0:=10; w0:=10; h0:=10; //原画の抜き取り位置とサイズ bmp1:=TBitmap.Create; bmp1.width:=w0; bmp1.Height:=h0; BitBlt(bmp1.Canvas.Handle,0,0,w0,h0,bmp0.Canvas.Handle,l0, t0,SRCCOPY); bmp0.Free; // *********************TGPbmpにbmp1をAssignしたい***************************** tgpbmp := TGPBitmap.Create; //????????????????????????? bmp1.free; graphics := TGPGraphics.Create(Canvas.Handle); try l1:=50; t1:=50; w1:=100; h1:=100; graphics.SetInterpolationMode(InterpolationModeNearestNeighbor); graphics.DrawImage(tgpbmp, MakeRect(l1, t1, w1, h1)); finally tgpbmp.Free; graphics.Free; end; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.