最近在做一个画板功能,大致的不同颜色画笔、不同粗细已经实现。

参照的是该教程:android-drawing-app

现在要做的功能是,从相册或者相机导入图像,然后在上面涂涂画画,由于橡皮擦的功能其实是一个白色的paint来实现的。因此用了橡皮擦,底层的图像也被画上白色了。想要的效果是橡皮擦只对新画上去的线条有作用,并不影响导入的图像。

网上大致查找资料,好像可以使用两个图层来实现,导入的图像作为最底层,新画的线条在上一层,因此橡皮擦也不会影响到最底层的图像。

导入的图片(bitmap为导入的图片):

drawCanvas.drawBitmap(bitmap, 0, 0, null);

橡皮擦功能:

public void setErase(boolean isErase) {

this.isErase = isErase;

if (isErase) {

drawPaint.setColor(Color.WHITE);

// drawPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_OUT));

} else {

drawPaint.setColor(tempColor);

drawPaint.setXfermode(null);

}

请问如何设置两个图层,并让后续的线条只操作在第二个图层上?这里有点卡住了。或者有类似功能的demo吗?

十分感谢

android画布橡皮,Android 图片涂鸦橡皮擦功能相关推荐

  1. android 橡皮擦功能吗,android,安卓开发_Android 图片涂鸦橡皮擦功能,android,安卓开发 - phpStudy...

    Android 图片涂鸦橡皮擦功能 最近在做一个画板功能,大致的不同颜色画笔.不同粗细已经实现. 参照的是该教程:android-drawing-app 现在要做的功能是,从相册或者相机导入图像,然后 ...

  2. Android实现拍照相册图片上传功能

    更改头像功能不像修改信息一样直接提交参数就可以,需要上传图片文件 我就直接贴代码了首先给出布局文件 <ImageViewandroid:id="@+id/iv"android ...

  3. android 微信相册功能,Android仿微信选择图片和拍照功能

    本文实例为大家分享了 Android微信选择图片的具体代码,和微信拍照功能,供大家参考,具体内容如下 1.Android6.0系统,对于权限的使用都是需要申请,选择图片和拍照需要申请Manifest. ...

  4. android 画布叠加,Android实现图片叠加效果的两种方法

    本文实例讲述了Android实现图片叠加效果的两种方法.分享给大家供大家参考,具体如下: 效果图: 第一种: 第二种: 第一种是通过canvas画出来的效果: public void first(Vi ...

  5. android 画布旋转,Android自定义View叶子旋转完整版(六)

    上一篇实现多叶子飘动旋转,今天完成最后的功能. 1.添加右侧旋转枫叶 2.添加滑动条效果,显示百分比 3.修复叶子飘出边框问题 1.添加右侧旋转叶子 Bitmap turnBitmap = ((Bit ...

  6. Android高仿微信图片多选功能

    1.概述 关于手机图片加载器,在当今像素随随便便破千万的时代,一张图片占据的内存都相当可观,作为高大尚程序猿的我们,有必要掌握图片的压缩,缓存等处理,以到达纵使你有万张照片,纵使你的像素再高,我们也能 ...

  7. android 画布叠加,Android自定义图形,图形的拼接、叠加、相容

    直接上Xfermode子类: AvoidXfermode  指定了一个颜色和容差,强制Paint避免在它上面绘图(或者只在它上面绘图). PixelXorXfermode  当覆盖已有的颜色时,应用一 ...

  8. android 画布 轨迹,Android 多点触控,绘制滑动轨迹和十字光标

    这个测试项,要捕捉当前有几个触摸点,当前触摸点坐标,滑动事件在x轴.y轴方向的速度等信息,在触摸时跟随触摸点会出现十字光标,绘制出滑动轨迹. 首先绘制出暗色格子背景,采用了自定义View,较为简单,核 ...

  9. android画布裁剪,Android 2D Graphics学习(二)、Canvas篇2、Canvas裁剪和Region、RegionIterator...

    请先阅读: canvas 还提供裁剪的功能. 裁剪功能由Canvas提供的一系列的clip...方法 和quickReject方法来完成. 前面已经提到,真正提供可绘制区域的是Canvas内部的mut ...

  10. android画布旋转,Android Canvas 平移、缩放、旋转的理解

    自己用了很久对这个几个方法,用了好多次了,但对它们的原理概念都还是没仔细理解清楚,真是太菜了. View和canvas并不是同一个东西,可以这样想象,我们的View是固定的,相当于与一个画框,画框范围 ...

最新文章

  1. nyoj 685查找字符串
  2. TCP/IP / 四次挥手之状态转换图、过程说明和原因
  3. 归约操作java8_使用Java 8进行分组,转换和归约
  4. 清新BLOG-CMS博客主题源码
  5. 硬核 | 亚洲诚信@FreeBuf企业安全俱乐部,实力诠释“S/MIME可信企业安全邮件解决方案”...
  6. 查找-动态查找表-二叉排序树
  7. 年薪10万的前端一定会用的19 个 JavaScript 简写方法!
  8. VS2013/2012 下无法打开 源 文件“stdafx.h”的解决方法
  9. 构建应用状态时,你应该避免不必要的复杂性
  10. 《沟通的技术——让交流、会议与演讲更有效》一第一部分 建导准备
  11. 一脸懵逼学习Hive的使用以及常用语法(Hive语法即Hql语法)
  12. html原生listview,Html中使用M$控件系列之 ListView 篇
  13. java大数据和python大数据的全面对比,哪个更主流?
  14. gradle报错this sometimes occurs after a network connection timeout.解决
  15. VS2015 密钥 专业版和企业版
  16. python编程实例教程-Python程序设计实例教程
  17. HP打印机驱动程序下载
  18. 数字二阶低通滤波器公式推导及代码实现
  19. Linux常用命令——telnet命令
  20. atl offsetofclass

热门文章

  1. Android字体的适配问题
  2. 软帝出品2019阿里面试题大全(含答案解析)
  3. 小米C++开发笔试真题
  4. insgram 网页分享_instagram网页版登陆使用图文教程
  5. 《猎头局中局》作者萧东楼访谈摘录
  6. 2.10 MapReduce文件合并
  7. Win Form图形编程实践——打砖块
  8. mysql group by COLUMN desc问题
  9. 【游记】CQOI2021
  10. 常见的java毕业设计_php毕业设计题目汇总