2

Bitmap.Canvas プロパティを使用して、TImage でカスタム描画を実行しようとしています。Windows では、次のコードは正しく動作し、青色の塗りつぶしでビットマップ全体をクリアします。

Image1.Bitmap := TBitmap.Create;
 with Image1.Bitmap do
 begin
   width := Round(Image1.Width);
   height := Round(Image1.Height);
   with canvas do
   begin
     BeginScene;
           Clear(TAlphaColorRec.Blue);
     EndScene;
   end;
  end;

Android では、ビットマップはまだ青で塗りつぶされていますが、TImage 内で金切り声を上げていました。Android デバイスでこれを行うにはどうすればよいですか?

4

4 に答える 4

0

まず、Image1 は設計時のコンポーネントです。そのためのビットマップを作成する必要はありません。必要に応じてサイズを変更できます。これが問題だったと思います

このコードは、Androidで完璧に機能しました

/////////////////////////////////////////////// /////////

image1.bitmap.SetSize(512,512);
if image1.bitmap.Canvas.BeginScene() then
try
  image1.bitmap.Canvas.Clear(TAlphaColorRec.Blue);
finally
  image1.bitmap.Canvas.EndScene;
end;

/////////////////////////////////////////////// /////////

于 2013-09-29T07:26:21.657 に答える