仿微信图片编辑软件,涂鸦、裁剪、添加文本等常规操作

1、需求
在做一个野外地质数据采集软件开发的过程中,有时候需要进行拍照保存,在此,我们直接通过Intent调用系统的拍照功能;然后,调用系统的裁剪功能,可以按照需要的大小进行裁剪;但是但是但是。。。。。。业主爸爸觉得都太简单、太粗糙、无法添加文字、无法进行画线条也就是涂鸦,奈何时间比较紧凑,时间很赶*(其实是实力不够)*,就需要在网上找一个框架,然后自己进行改动即可。网上的框架大多是图片数据的加载,关于编辑的却很少,即使有也是侧重于贴图、美化,这些功能的导入就显得很多余,也完全没有必要,于是,继续找,找啊找,最后找到一个博客大佬的博客,在此表示感谢,我觉得很好的解决了我都需要,然后自己根据需要也叠加了一部分。

2、参考博客(套用)
大佬的博客链接在此,欢迎各位前去一探究竟。大佬在前人的基础之上,将kotlin写好的Imaging库的代码改为了java部分,在此表示感谢啊,本项目还未使用Kotlin语言。
前人亦就是Imaging库的作者的博客链接我也贴上,Kotlin语言的项目可以去研究、扩展,同时对自定义控件以及手势操作感兴趣的同学也可以好好研究一下。

3、存在的问题
1、原作者在手势操作的过程中,首先监控单指操作ACTION_DOWN,然后监控双指操作。其中,当我们处于 涂鸦 模式下时,单手点击图片并不滑动涂鸦,这时会在屏幕的左上角产生一个涂鸦点,由于作者在设计时候,涂鸦的画笔Width设置较小,不是很容易察觉(作者也没有设置画笔大小的功能)。如果改变画笔大小,则左上角的点很明显,需要解决。

4、优化
其实上面的功能已经很强大了,基本上和微信的图片编辑功能类似了,奈何为了堵住甲方爸爸的嘴,我又添加控件,可以自己设置画笔的宽度、以及文本的大小;同时,增加判断,解决了单指按下不滑动也会产生涂鸦的问题。

5、未解决的问题
在设置画笔之后,在涂鸦模式下,可以改变涂鸦路径的大小,但是问题是画笔的大小不变,最后至只是改变了路径的结果,奈何时间太紧,没有继续进行debug(应该是画笔设置吧),只能留着后期再来进行完善吧。

6、图片展示
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
7、jar包
调用参考上文提到的大佬的博客即可,直接调用就好了,点击跳转进行下载

已经设置为 0积分,可以免费下载,方便使用,于此同时,我也将一些文件进行了删除,仅仅保留了裁剪的相关的东西。

8、调用

                        Intent intent = new Intent(this, IMGEditActivity.class);
                        String uri_path = getFilePathByUri(this, data.getData());
                        Uri uri = Uri.fromFile(new File(uri_path));
                        System.out.println(uri.toString());
                        intent.putExtra(IMGEditActivity.EXTRA_IMAGE_URI, uri);  //图片的uri
                        //intent.putExtra(IMGEditActivity.EXTRA_IMAGE_SAVE_PATH,);  //输出文件的路径
                        startActivity(intent);
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值