我正在尝试绘制由纹理打包器创建的精灵(一个大位图,其中包含每个精灵的宽度、高度、位置、纹理矩形等信息)目前尚不清楚如何绘制精灵以防它应该旋转 90 度。我尝试旋转画布但没有成功(精灵没有出现在正确的位置)
这就是我绘制常规(未旋转)精灵的方式:
Rect srcRect = <a rect in the big bitmap> (for example left=0, top=0, right=100, bottom=80)
Rect destRect = new Rect(spriteOffsetX, spriteOffsetY, spriteOffset.x + spriteWidth, spriteOffset.y + spriteHeight);
canvas.drawBitmap(bitmap, srcRect, destRect, null);
使用旋转的精灵我旋转画布
canvas.rotate(-90f, canvas.getWidth() / 2.0f, canvas.getHeight() / 2.0f);
并以与常规(未旋转)精灵相同的方式绘制精灵。但它出现在错误的位置。
有人可以帮助解决这个问题吗?