温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

关于Canvas的旋转和平移

发布时间:2020-05-17 12:46:24 来源:网络 阅读:509 作者:wudilingyun 栏目:移动开发

Drawable newDrawable = getResources().getDrawable(mImageIds[newState])
                .mutate();
Drawable oldDrawable = getResources().getDrawable(mImageIds[oldState])
                .mutate();
Bitmap bitmap = null;

bitmap = Bitmap.createBitmap(width, bitmapHeight,
                    Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
newDrawable.setBounds(0, 0, newDrawable.getIntrinsicWidth(),
                    newDrawable.getIntrinsicHeight());
oldDrawable.setBounds(0, oldBitmapOffset,
                    oldDrawable.getIntrinsicWidth(),
                    oldDrawable.getIntrinsicHeight() + oldBitmapOffset);

//canvas.rotate(orientation+180, width / 2, width / 2);
//canvas.translate(-oldBitmapOffset, 0);

newDrawable.draw(canvas);
oldDrawable.draw(canvas);


canvas看作画布,Drawable看作图画,bitmap看作能显示这幅画的画框大小

canvas旋转平移后,坐标原点也会随之改变。


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI