android 画图
在画图的时候,图片如果旋转或缩放之后,总是会出现那些华丽的锯齿。其实Android自带了解决方式。
方法一:给Paint加上抗锯齿标志。然后将Paint对象作为参数传给canvas的绘制方法。
Java代码
paint.setAntiAlias(true);
方法二:给Canvas加上抗锯齿标志。
有些地方不能用paint的,就直接给canvas加抗锯齿,更方便。
Java代码
canvas.setDrawFilter(new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG|Paint.FILTER_BITMAP_FLAG));
测试代码如下:
Java代码
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.graphics.PaintFlagsDrawFilter;
import android.view.View;
public class MyView extends View {
private PaintFlagsDrawFilter pfd;
private Paint mPaint = new Paint();
private Matrix matrix = new Matrix();;
private Bitmap bmp;
public MyView(Context context) {
super(context);
initialize();
}
private void initialize() {
pfd = new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG|Paint.FILTER_BITMAP_FLAG);
mPaint.setAntiAlias(true);
matrix.setRotate(30);
matrix.postScale(0.5f, 0.5f);
bmp = BitmapFactory.decodeResource(getResources(), R.drawable.show);
}
@Override
public void dispatchDraw(Canvas canvas) {
canvas.translate(100, 0);
canvas.drawBitmap(bmp, matrix, null);
canvas.translate(0, 250);
canvas.drawBitmap(bmp, matrix, mPaint);
canvas.setDrawFilter(pfd);
canvas.translate(0, 250);
canvas.drawBitmap(bmp, matrix, null);
}
}
下图是效果:
android 画图相关推荐
- Android画图最基本的三个对象(Color,Paint,Canvas)
Android画图最基本的三个对象(Color,Paint,Canvas) 三个类都存放在 android.graphics包下 1) Color :颜色对象,相当于现实生活中的 '调料' 2) Pa ...
- Android画图学习总结(四)——Animation(中)
在Android画图学习总结(四)--Animation(上)中详细介绍了Tween Animation的定义.使用,由于篇幅有限,很多中重要的方面没有说明,这篇文章一方面做个完整的总结说明,另外一方 ...
- Android画图方式
本文转载编辑自http://blog.chinaunix.net/u3/99423/showart_2203599.html Android画图方式 Android里面的画图分为2D和3D两种: 2D ...
- android 画图一
学习Android 有一段时间了,看完了Android SDK中的大部分文档,但是始终感觉自己还缺少很多,后来发现,Android SDK中只是介绍了Google自己开发的那一部分如何使用,Andro ...
- 【摘录】Android画图之抗锯齿
在画图的时候,图片如果旋转或缩放之后,总是会出现那些华丽的锯齿.其实Android自带了解决方式. 方法一:给Paint加上抗锯齿标志.然后将Paint对象作为参数传给canvas的绘制方法. ...
- Android学习笔记(四):android画图之paint之setXfermode
2019独角兽企业重金招聘Python工程师标准>>> setXfermode 设置两张图片相交时的模式 我们知道 在正常的情况下,在已有的图像上绘图将会在其上面添加一层新的形状. ...
- Android 画图方式
Android apk 里面的画图分为2D和3D两种:2D是由Skia 来实现的,也就是我们在框架图上看到的SGL,SGL也会调用部分opengl 的内容来实现简单的3D效果:3D部分是由OpenGL ...
- android 画图便宜,10个最好用的绘画App,赶紧mark
版权声明 本文首发自原画人微信公共账号:CCGAA-vx 无需授权即可转载,但需保留以上版权声明 大家平时画画,用的最多的当然是板子.不过偶尔开个脑洞,画个头像什么的,还是平板最方便. 所以,今天给大 ...
- android中怎么画图工具,Android画图工具的制作
Android 项目中使用到画图工具,本文记载如何实现,需详细了解cavas和surfaceviw 1 三星pad 三星pad自带的手写笔可以很好的支持画图,集成三星的sdk 以上三星官方提供的库文件 ...
最新文章
- 最古老的100个.com域名
- 42HS48步进电机实验
- 图解用Fiddler做http协议分析入门
- mongodb远程连接配置(亲测)
- c++ 12.一维数组冒泡排序
- antd 获取table选中行数据_Excel数据匹配:函数法+PQ法+PB法
- bootstrap table用法
- Android:答题APP的设计与实现(mysql+jsp+Android)
- vivado和modelsim联合仿真,提示giving up waiting on lock,error:verilog compiler exiting解决方法
- 单点故障--名词解释
- 渗透测试 ( 3 ) --- Metasploit Framework ( MSF )
- 用Linux / C实现基于自动扩/减容线程池+epoll反应堆检测沉寂用户模型的服务器框架(含源码)
- MPLAB常见问题及解决方法
- 性能测试报告编写技巧
- 如何搭建一个个人博客,这么写纯粹是为了通过shen he
- IT女孩又来总结了-2015年终总结
- 安全狗漏洞通告|Linux kernel越界写入漏洞解决方案
- 人类 vs AI:玩梗大作战,看看谁是最后的赢家?
- Day11OSI与TCP/IP协议簇以及物理层
- Autodesk 3ds Max 2013 下载 破解 教程
热门文章
- 2022北林计科学生保研历程
- java消息平台_Java微信公众平台之消息管理
- 基于微前端qiankun的多页签缓存方案实践
- pg中 on conflict 使用与爬坑
- 生活需要创意-精彩的水果创意设计
- Python+Vue计算机毕业设计房屋租赁管理系统p8pvy(源码+程序+LW+部署)
- 中国药典 android,中国药典在线查询_中国药典v2.05.03安卓版
- 谷歌浏览器 抖动 chrome 上下抖动 问题解决
- 核心网在无线通信中的王者地位
- iphone11计算机显示计算过程,iPhone11怎么显示电池百分比