在画图的时候,图片如果旋转或缩放之后,总是会出现那些华丽的锯齿。其实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 画图相关推荐

  1. Android画图最基本的三个对象(Color,Paint,Canvas)

    Android画图最基本的三个对象(Color,Paint,Canvas) 三个类都存放在 android.graphics包下 1) Color :颜色对象,相当于现实生活中的 '调料' 2) Pa ...

  2. Android画图学习总结(四)——Animation(中)

    在Android画图学习总结(四)--Animation(上)中详细介绍了Tween Animation的定义.使用,由于篇幅有限,很多中重要的方面没有说明,这篇文章一方面做个完整的总结说明,另外一方 ...

  3. Android画图方式

    本文转载编辑自http://blog.chinaunix.net/u3/99423/showart_2203599.html Android画图方式 Android里面的画图分为2D和3D两种: 2D ...

  4. android 画图一

    学习Android 有一段时间了,看完了Android SDK中的大部分文档,但是始终感觉自己还缺少很多,后来发现,Android SDK中只是介绍了Google自己开发的那一部分如何使用,Andro ...

  5. 【摘录】Android画图之抗锯齿

    在画图的时候,图片如果旋转或缩放之后,总是会出现那些华丽的锯齿.其实Android自带了解决方式.     方法一:给Paint加上抗锯齿标志.然后将Paint对象作为参数传给canvas的绘制方法. ...

  6. Android学习笔记(四):android画图之paint之setXfermode

    2019独角兽企业重金招聘Python工程师标准>>> setXfermode 设置两张图片相交时的模式 我们知道 在正常的情况下,在已有的图像上绘图将会在其上面添加一层新的形状. ...

  7. Android 画图方式

    Android apk 里面的画图分为2D和3D两种:2D是由Skia 来实现的,也就是我们在框架图上看到的SGL,SGL也会调用部分opengl 的内容来实现简单的3D效果:3D部分是由OpenGL ...

  8. android 画图便宜,10个最好用的绘画App,赶紧mark

    版权声明 本文首发自原画人微信公共账号:CCGAA-vx 无需授权即可转载,但需保留以上版权声明 大家平时画画,用的最多的当然是板子.不过偶尔开个脑洞,画个头像什么的,还是平板最方便. 所以,今天给大 ...

  9. android中怎么画图工具,Android画图工具的制作

    Android 项目中使用到画图工具,本文记载如何实现,需详细了解cavas和surfaceviw 1 三星pad 三星pad自带的手写笔可以很好的支持画图,集成三星的sdk 以上三星官方提供的库文件 ...

最新文章

  1. 最古老的100个.com域名
  2. 42HS48步进电机实验
  3. 图解用Fiddler做http协议分析入门
  4. mongodb远程连接配置(亲测)
  5. c++ 12.一维数组冒泡排序
  6. antd 获取table选中行数据_Excel数据匹配:函数法+PQ法+PB法
  7. bootstrap table用法
  8. Android:答题APP的设计与实现(mysql+jsp+Android)
  9. vivado和modelsim联合仿真,提示giving up waiting on lock,error:verilog compiler exiting解决方法
  10. 单点故障--名词解释
  11. 渗透测试 ( 3 ) --- Metasploit Framework ( MSF )
  12. 用Linux / C实现基于自动扩/减容线程池+epoll反应堆检测沉寂用户模型的服务器框架(含源码)
  13. MPLAB常见问题及解决方法
  14. 性能测试报告编写技巧
  15. 如何搭建一个个人博客,这么写纯粹是为了通过shen he
  16. IT女孩又来总结了-2015年终总结
  17. 安全狗漏洞通告|Linux kernel越界写入漏洞解决方案
  18. 人类 vs AI:玩梗大作战,看看谁是最后的赢家?
  19. Day11OSI与TCP/IP协议簇以及物理层
  20. Autodesk 3ds Max 2013 下载 破解 教程

热门文章

  1. 2022北林计科学生保研历程
  2. java消息平台_Java微信公众平台之消息管理
  3. 基于微前端qiankun的多页签缓存方案实践
  4. pg中 on conflict 使用与爬坑
  5. 生活需要创意-精彩的水果创意设计
  6. Python+Vue计算机毕业设计房屋租赁管理系统p8pvy(源码+程序+LW+部署)
  7. 中国药典 android,中国药典在线查询_中国药典v2.05.03安卓版
  8. 谷歌浏览器 抖动 chrome 上下抖动 问题解决
  9. 核心网在无线通信中的王者地位
  10. iphone11计算机显示计算过程,iPhone11怎么显示电池百分比