画面サイズに基づいて画像をスケーリングできるようにしたい。通常のJavaアプレットでは、次のようなことをします....
int windowWidth = 1280;
int windowHeight = 720;
Image image;
public void paint(Graphics g)
{
g.drawImage(image, x, y, windowWidth / 4, windowHeight / 16, null);
}
私はしばらくの間答えを探していましたが、見つけたものはすべて奇妙な結果になっているようです。私が読んだことから、解像度に依存しないピクセルで何かをする必要があるかもしれませんが、100%確信が持てません。
私が避けようとしているのは、さまざまな画面密度のためにまったく新しい画像とアイコンのセットを作成しなければならないことです。上で示した方法は、問題なくデスクトップ アプリのサイズを変更できます。
編集:
これは、Androidで画像を描画するために使用しているものです。
Matrix matrix = new Matrix();
Bitmap image;
Constuctor....()
{
image = BitmapFactory.decodeResource(context.getResources(), R.drawable.play);
}
public void render(Canvas c)
{
c.drawBitmap(image, matrix, null);
}