目   录

推荐网址

抠图片上的某一角下来

8.2.2 Bitmap引起的OOM问题

8.3.1 三个绘图工具类详解

画线条

8.3.16 Canvas API详解(Part 1)

1.translate(平移)

2.rotate(旋转)

3.scale(缩放)

4.skew(倾斜)

Android Matrix 详解


推荐网址

【菜鸟教程】8.2.1 Bitmap(位图)全解析 Part 1
https://www.runoob.com/w3cnote/android-tutorial-bitmap1.html

1.Android自定义控件
https://blog.csdn.net/yuanheng19930119/article/details/88055225

2.自定义控件其实很简单
https://blog.csdn.net/aigestudio/article/details/41212583?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-2

3.Android Matrix 详解
https://www.jianshu.com/p/5e30db034596

4.android matrix 最全方法详解与进阶
https://blog.csdn.net/cquwentao/article/details/51445269

5.Android动画
https://blog.csdn.net/zhangbijun1230/article/details/80262359

抠图片上的某一角下来

Bitmap bitmap1 = BitmapFactory.decodeResource(getResources(), R.mipmap.pic_meizi);
Bitmap bitmap2 = Bitmap.createBitmap(bitmap1,100,100,200,200);
img_bg = (ImageView) findViewById(R.id.img_bg);
img_bg.setImageBitmap(bitmap2);

8.2.2 Bitmap引起的OOM问题

https://www.runoob.com/w3cnote/android-tutorial-bitmap2.html

8.3.1 三个绘图工具类详解

https://www.runoob.com/w3cnote/android-tutorial-drawable-tool.html

画线条

【菜鸟教程】8.3.2 绘图类实战示例

https://www.runoob.com/w3cnote/android-tutorial-bitmap-demo.html

/*** Created by Jay on 2015/10/15 0015.*/
public class MyView extends View{private Paint mPaint;  //绘制线条的Pathprivate Path mPath;      //记录用户绘制的Pathprivate Canvas mCanvas;  //内存中创建的Canvasprivate Bitmap mBitmap;  //缓存绘制的内容private int mLastX;private int mLastY;public MyView(Context context) {super(context);init();}public MyView(Context context, AttributeSet attrs) {super(context, attrs);init();}public MyView(Context context, AttributeSet attrs, int defStyleAttr) {super(context, attrs, defStyleAttr);init();}private void init(){mPath = new Path();mPaint = new Paint();   //初始化画笔mPaint.setColor(Color.GREEN);mPaint.setAntiAlias(true);mPaint.setDither(true);mPaint.setStyle(Paint.Style.STROKE);mPaint.setStrokeJoin(Paint.Join.ROUND); //结合处为圆角mPaint.setStrokeCap(Paint.Cap.ROUND); // 设置转弯处为圆角mPaint.setStrokeWidth(20);   // 设置画笔宽度}@Overrideprotected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {super.onMeasure(widthMeasureSpec, heightMeasureSpec);int width = getMeasuredWidth();int height = getMeasuredHeight();// 初始化bitmap,CanvasmBitmap = Bitmap.createBitmap(width, height, Bitmap.Config.ARGB_8888);mCanvas = new Canvas(mBitmap);}//重写该方法,在这里绘图@Overrideprotected void onDraw(Canvas canvas) {drawPath();canvas.drawBitmap(mBitmap, 0, 0, null);}//绘制线条private void drawPath(){mCanvas.drawPath(mPath, mPaint);}@Overridepublic boolean onTouchEvent(MotionEvent event) {int action = event.getAction();int x = (int) event.getX();int y = (int) event.getY();switch (action){case MotionEvent.ACTION_DOWN:mLastX = x;mLastY = y;mPath.moveTo(mLastX, mLastY);break;case MotionEvent.ACTION_MOVE:int dx = Math.abs(x - mLastX);int dy = Math.abs(y - mLastY);if (dx > 3 || dy > 3)mPath.lineTo(x, y);mLastX = x;mLastY = y;break;}invalidate();return true;}
}

8.3.16 Canvas API详解(Part 1)

【菜鸟教程】https://www.runoob.com/w3cnote/android-tutorial-canvas-api1.html

1.translate(平移)

2.rotate(旋转)

3.scale(缩放)

4.skew(倾斜)

Android Matrix 详解

https://www.jianshu.com/p/5e30db034596

Android复习14【高级编程:推荐网址、抠图片上的某一角下来、Bitmap引起的OOM问题、三个绘图工具类详解、画线条、Canvas API详解(平移、旋转、缩放、倾斜)、矩阵详解】相关推荐

  1. Android基础入门教程——8.3.1 三个绘图工具类详解

    Android基础入门教程--8.3.1 三个绘图工具类详解 标签(空格分隔): Android基础入门教程 本节引言: 上两小节我们学习了Drawable以及Bitmap,都是加载好图片的,而本节我 ...

  2. 三个绘图工具类详解Paint(画笔)Canvas(画布)Path(路径)

    1)Paint(画笔): 就是画笔,用于设置绘制风格,如:线宽(笔触粗细),颜色,透明度和填充风格等 直接使用无参构造方法 就可以创建Paint实例: Paint paint = new Paint( ...

  3. C#高级编程——C#扩展方法+接口,定义统一的搜索接口,基于Unity(三)——图文详解加源码

    C#高级编程--C#扩展方法+接口,定义统一的搜索接口,基于Unity(三)--图文详解加源码 前言

  4. android开发高级开发,Android多媒体开发高级编程 (Shawn Van Every) pdf扫描版

    <android多媒体开发高级编程--为智能手机和平板电脑开发图形.音乐.视频和富媒体应用>使用清晰.直观的示例介绍了android sdk中丰富的多媒体功能,有助于您开发能够创建.播放和 ...

  5. android编程高级教程 pdf,Android多媒体开发高级编程

    在多媒体功能方面,今天的手机同时是照相机.相册.摄像机.电影播放器.音乐播放器.听写机,且可能具备更多功能. 特别是,Android在SDK中具有非常丰富的功能,本书将试图通过讨论和实例对该SDK进行 ...

  6. Android Web应用高级编程

    为什么80%的码农都做不了架构师?>>>    基本信息 原书名: Pro Android Web Apps: Develop for Android using HTML5, CS ...

  7. Unity 触屏手势控制Camera平移旋转缩放

    Unity 触屏手势控制Camera平移旋转缩放 实现思路 单点触屏,位移增量控制相机平移: 两点触屏,两点位移控制相机前后移动(缩放):两点中一点不位移控制相机绕点旋转: 实现需要的API Touc ...

  8. 三维坐标要建一个4*4的矩阵?平移 旋转 缩放

    移植不知道三维物体的旋转平移缩放和矩阵的关系.找到这篇文章借鉴一下. 转自:https://blog.csdn.net/ALLENJIAO/article/details/80348362 怎么平移一 ...

  9. Unity矩阵平移旋转缩放Matrix4x4

    Unity中的矩阵(Matrix4x4) 最近在研究帧同步定点数物理系统中需要自定义定点数矩阵,所以在这里分享下基础的矩阵案例旋转.平移.缩放.(注意这里本文中的transform组件式基于unity ...

最新文章

  1. 年纪最小90后,他们在北大教AI
  2. python脚本自动发邮件功能
  3. Eclipse + Apache Axis2 发布RESTful WebService(一)基础知识
  4. postgresql中装gis插件_使用PostGIS_高级扩展插件使用_开发进阶_云原生数仓 AnalyticDB PostgreSQL - 阿里云...
  5. java mysql curd_javaweb中为mysql的curd多个值的语句
  6. java onkeydown_java笔记 js onkeypress与onkeydown 事件区别详细说明
  7. 何时使用.First以及何时将.FirstOrDefault与LINQ结合使用?
  8. 一图区分1.85mm/2.4mm/2.92mm/3.5mm/SMA射频接头
  9. java毕业生设计资源循环利用计算机源码+系统+mysql+调试部署+lw
  10. 乔戈里推荐的新版Java学习路线,开源!
  11. hankerrank 刷题二( Python 基础)
  12. Linux 4.19.111 供电(power supply )子系统
  13. 搭建Orthanc服务器-DICOM服务器
  14. 油溶性Cu,Mn共掺杂量子点ZnS量子点,ZnSe量子点,ZnInS量子点光转换材料
  15. Exiting on user Command
  16. 履带式机械臂小车的制作分享
  17. 2017华师在线计算机作业,华师2017春《计算机动画》在线作业
  18. 如何对音频文件进行剪辑
  19. python建站与java建站有何不同_Python与JAVA有何区别?
  20. word 文档标题样式相同、行距效果不同的解决办法

热门文章

  1. linux如何更改服务器时间格式,Linux中date命令,格式化输出,时间设置
  2. html传输php连接mysql数据库_解析HTML、JS与PHP之间的数据传输
  3. mysql segmentation fault_mysql Segmentation fault的问题,求教
  4. 面试 linux 进程通讯,【转】LINUX驱动的经典面试问题...
  5. matlab 连通分支,(完整版)图的连通性判断matlab实验报告
  6. pythondir什么意思_Python之dir()与__dict__的区别
  7. word公式插件_添加office小插件,让办公更高效
  8. linux 线程优先级的高低和执行顺序的关系,混乱的Linux内核实时线程优先级
  9. 工程制图 (立体投影)
  10. 研究生一年级,非计算机专业,自学机器学习现实吗?