android图像绘制(二)画布上放大缩小问题

android中图像在画布上放大缩小时,图像的边框大小没有改变!

原图如下:

放大后:原来图片的边框没有改变,位置依旧!

所以如果要放置图片的位置的话,就需要做相应的位置移动才可以!

采用如下代码(全屏放置图片):
复制代码 代码如下:
Matrix matrix = new Matrix();
matrix.postScale(canvas.getWidth()*1.01f/bmpBg.getWidth(), canvas.getHeight()*1.01f/bmpBg.getHeight(), bmpBg.getWidth() / 2, bmpBg.getHeight() / 2);
matrix.postTranslate( (canvas.getWidth()-bmpBg.getWidth()) / 2, (canvas.getHeight()-bmpBg.getHeight()) / 2);
canvas.drawBitmap(bmpBg, matrix, paint);

时间: 2024-09-29 14:12:39

android图像绘制(二)画布上放大缩小问题的相关文章

android图像绘制(二)画布上放大缩小问题_Android

android中图像在画布上放大缩小时,图像的边框大小没有改变! 原图如下: 放大后:原来图片的边框没有改变,位置依旧! 所以如果要放置图片的位置的话,就需要做相应的位置移动才可以! 采用如下代码(全屏放置图片): 复制代码 代码如下: Matrix matrix = new Matrix(); matrix.postScale(canvas.getWidth()*1.01f/bmpBg.getWidth(), canvas.getHeight()*1.01f/bmpBg.getHeight()

android图像绘制(五)画布保存为指定格式/大小的图片_Android

将图片进行编辑(放缩,涂鸦等),最后保存成指定格式.大小的图片. 先贴代码: 复制代码 代码如下: Bitmap bmp = Bitmap.createBitmap(480, 800, Config.ARGB_8888); Canvas canvas = new Canvas(bmp); canvas.drawBitmap(this.bmp, matrix, paint); canvas.save(Canvas.ALL_SAVE_FLAG); canvas.restore(); File fil

android图像绘制(五)画布保存为指定格式/大小的图片

将图片进行编辑(放缩,涂鸦等),最后保存成指定格式.大小的图片. 先贴代码: 复制代码 代码如下: Bitmap bmp = Bitmap.createBitmap(480, 800, Config.ARGB_8888); Canvas canvas = new Canvas(bmp); canvas.drawBitmap(this.bmp, matrix, paint); canvas.save(Canvas.ALL_SAVE_FLAG); canvas.restore(); File fil

android图像绘制(三)画布刷屏问题记录_Android

在canvas中绘制动态图的时候,如果使用了一个固定的背景图片,只有一个小小的精灵在移动! 这样的情况下却不得不在没帧中重新绘制背景图片,使得效率降低!尝试过各种方法,最终还是失败了! 如果有人有好的方法,可以提供一下,谢谢! 以下是在探索过程的一些分享: 1.一篇关于图片重新绘制的文章,不过只能是适用于精灵在固定位置变化,背景是没有变化的! 如果使用在移动的精灵上,将会使得整个屏幕都布满了精灵的移动图片,bug. 地址:Android SurfaceView 绘图覆盖刷新及脏矩形刷新方法 2.

android图像绘制(三)画布刷屏问题记录

在canvas中绘制动态图的时候,如果使用了一个固定的背景图片,只有一个小小的精灵在移动! 这样的情况下却不得不在没帧中重新绘制背景图片,使得效率降低!尝试过各种方法,最终还是失败了! 如果有人有好的方法,可以提供一下,谢谢! 以下是在探索过程的一些分享: 1.一篇关于图片重新绘制的文章,不过只能是适用于精灵在固定位置变化,背景是没有变化的! 如果使用在移动的精灵上,将会使得整个屏幕都布满了精灵的移动图片,bug. 地址:Android SurfaceView 绘图覆盖刷新及脏矩形刷新方法 2.

c++-如何在windows系统下使用C++模拟触控板上放大缩小的功能

问题描述 如何在windows系统下使用C++模拟触控板上放大缩小的功能 比如在某个网页界面上,双指聚拢,则页面缩小:双指分离则页面放大. 这个有什么对应的windows消息吗? 如果我已经知道了某个窗口的HWND,能否通过简单的发送消息的形式,达到同样的效果? 或者是能模拟出触控板的行为也可. 解决方案 你可以用spy++看下.一些触摸板式是转换成滚轮消息的. 解决方案二: 这个你查一下windows的消息就知道了,你在触摸屏上执行一个动作,系统是会发送一个消息给你的应用程序的,你只要捕捉到这

HTML5 2D游戏开发:将事物绘制到画布上并让其运动起来

您还将学习利用http://www.aliyun.com/zixun/aggregation/79228.html"> HTML5 实现动画的最佳方式,如何滚动背景,以及如何实现视差,从而模拟三维效果. 图形和动画是任何视频游戏最根本的方面,所以在本文中,我将从 Canvas2D API 的简要介绍开始,对 Snail Bait 的中央动画的实现进行讨论.在本文中,您将学习如何: 将图像和图形基元绘制到画布上 创建流畅的.无闪烁的动画 实现游戏循环 以帧数每秒为单位监视动画的速度 滚动游戏

android图像绘制(七)ClipRect局部绘图/切割原图绘制总结_Android

杂语:看了很多程序猿都有写博客的习惯,看来我也得练练,不管写的好不好了,学到点什么体会就写写吧. 内容解说:这几天开始学游戏地图制作,今天小小的总结一下Canvas的clipRect()接口的使用. 1)选取要在画布上绘制(刷新)的区域,如图以(x, y)为起点坐标.宽w.高h的区域 2)选择要绘制的图片,不一定是刚好宽高为(w,h),大图就需要切割了(本例子绘制绿色区域) 3)将图片绘制到画布上,使得绿色区域与白色方块重合 4)最后效果图 代码解说: 复制代码 代码如下: canvas.sav

android图像绘制(七)ClipRect局部绘图/切割原图绘制总结

杂语:看了很多程序猿都有写博客的习惯,看来我也得练练,不管写的好不好了,学到点什么体会就写写吧. 内容解说:这几天开始学游戏地图制作,今天小小的总结一下Canvas的clipRect()接口的使用. 1)选取要在画布上绘制(刷新)的区域,如图以(x, y)为起点坐标.宽w.高h的区域 2)选择要绘制的图片,不一定是刚好宽高为(w,h),大图就需要切割了(本例子绘制绿色区域) 3)将图片绘制到画布上,使得绿色区域与白色方块重合 4)最后效果图 代码解说:复制代码 代码如下:canvas.save(