java画图抗锯齿_Android编程画图之抗锯齿解决方法
本文实例分析了Android编程画图之抗锯齿解决方法。分享给大家供大家参考,具体如下:
在画图的时候,图片如果旋转或缩放之后,总是会出现那些华丽的锯齿。其实Android自带了解决方式。
方法一:给Paint加上抗锯齿标志。然后将Paint对象作为参数传给canvas的绘制方法。
paint.setAntiAlias(true);
方法二:给Canvas加上抗锯齿标志。
有些地方不能用paint的,就直接给canvas加抗锯齿,更方便。
canvas.setDrawFilter(new PaintFlagsDrawFilter(0, Paint.ANTI_ALIAS_FLAG|Paint.FILTER_BITMAP_FLAG));
测试代码如下:
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程序设计有所帮助。
java画图抗锯齿_Android编程画图之抗锯齿解决方法相关推荐
- linux没有jre文件夹,linux上配置jdk时,java命令提示没有此文件或文件夹的解决方法...
linux上配置jdk时,java命令提示没有此文件或文件夹的解决方法 出现这个问题可能有以下几种原因: 1.对该文件没有执行的权限. 2.我们的机器是64位的,而下载的jdk是32位的. 我就是后一 ...
- Java中url传递中文参数取值乱码的解决方法
Java中url传递中文参数取值乱码的解决方法 参考文章: (1)Java中url传递中文参数取值乱码的解决方法 (2)https://www.cnblogs.com/liwenjuan/p/3211 ...
- Java读带有BOM的UTF-8文件乱码原因及解决方法(转)
转载:http://www.linuxidc.com/Linux/2012-12/76707.htm 最近在处理文件时发现了同样类型的文件使用的编码可能是不同的.所以想将文件的格式统一一下(因为UTF ...
- Java读取UTF-8格式txt文件第一行出现乱码及解决;Java读带有BOM的UTF-8文件乱码原因及解决方法(转载)...
原文地址:http://blog.csdn.net/jackpk/article/details/5702964/ Java读取UTF-8的txt文件第一行出现乱码"?"及解决 t ...
- Java读带有BOM的UTF-8文件乱码原因及解决方法
Java读带有BOM的UTF-8文件乱码原因及解决方法 Java读带有BOM的UTF-8文件乱码原因及解决方法 - daimojingdeyu - ITeye技术网站 Java读带有BOM的UTF-8 ...
- java并发编程之 并发问题及解决方法
一.并发问题的根源 首先,我们要知道并发要解决的是什么问题?并发要解决的是单进程情况下硬件资源无法充分利用的问题.而造成这一问题的主要原因是CPU-内存-磁盘三者之间速度差异实在太大.如果将CPU的速 ...
- android获取随机颜色_Android编程实现随机生成颜色的方法示例
本文实例讲述了Android编程实现随机生成颜色的方法.分享给大家供大家参考,具体如下: 网上有个ColorPicker开源项目,选择颜色值.而在这里我想实现的是动态修改一个view的背景色. 开一个 ...
- ant 时 --java.lang.NoSuchMethodError: org.apache.tools.ant.util.FileUtils.getFileUtils 解决方法
使用ant 时, 有可能出现java.lang.NoSuchMethodError: org.apache.tools.ant.util.FileUtils.getFileUtils的错误 但是直接命 ...
- java json utf-8_java读取json数据发生中文乱码的解决方法
java读取json数据发生中文乱码的解决方法 发布时间:2020-06-21 15:58:48 来源:亿速云 阅读:268 作者:鸽子 java读取json数据出现乱码的代码://从json文件中读 ...
- java 小程序查看器 启动:未初始化小程序 解决方法
欢迎大家转载,为保留作者成果,转载请注明出处,http://blog.csdn.net/netluoriver,有些文件在资源中也可以下载!如果你没有积分,可以联系我索要! 在运行java程序的时候突 ...
最新文章
- 从零开始学习Kafka
- DBSAN密度聚类算法
- 光纤收发器具体是怎么分类的?
- oracle修改物化视图字段,获取物化视图字段的修改矢量(一)
- Linux 高可用(HA)集群之keepalived
- 西安交大计算机考研分数线2020院线,西安交通大学2020考研复试分数线已公布
- C++类和对象的概念
- 圆通快递单号yt开头_乡镇快递取件二次收费,四川省消委会点名这些快递公司...
- 小米蓝牙耳机驱动_硬核拆解——小米蓝牙耳机
- QT信号与槽机制与事件机制的区别
- mp4安装Linux,linux centos mp4box 安装教程
- 影片相继撤档“520”,在线票务平台等待下一个“黄金档”
- vue上线后图片不显示_解决Vue打包后访问图片/图标不显示的问题
- APS系统的实施步骤,外行人都能看懂
- [谨记]女人面前莫谈年龄
- 临时或永久修改cgroup和Cgroup 入门教程:cpuset
- uniapp组件-Card卡片
- UTC LocalDateTime 根据时区转换
- oracle opm系统,ORACLE EBS OPM标准功能培训资料-OPM库存-V1.0
- 宏名字不规范,与结构体的成员重名