android bitmap保存本地背景是黑色的 解决方法

前言

最近在项目种有个电子签名功能 需要客户手写签名 然后保存本地 上传云端

 //获取bitmapBitmap bitmapFromView = mSignatureView.getBitmapFromView();BitmapUtil.saveImageToGallery(this, bitmapFromView);

压缩为JPEG格式
saveImageToGallery 方法我做了修改 之前用的Bitmap.CompressFormat.JPEG

压缩为WEBP无损格式
核心修改内容就是修改bitmap的压缩图像的格式Bitmap.CompressFormat.WEBP_LOSSLESS

查看源码可以看到CompressFormat 枚举类

 public enum CompressFormat {/*** 压缩为JPEG格式* 压缩到最小尺寸*/JPEG          (0),/***压缩为PNG格式。*/PNG           (1),/***压缩为WEBP格式。*/WEBP          (2),/***压缩为WEBP有损格式*/WEBP_LOSSY    (3),/***压缩为WEBP无损格式。*/WEBP_LOSSLESS (4);CompressFormat(int nativeInt) {this.nativeInt = nativeInt;}final int nativeInt;}
 /*** 保存图片到相册** @param context 应用程序上下文* @param bmp     需要保存的 bitmap*/public static void saveImageToGallery(Context context, Bitmap bmp) {File appDir = new File(Environment.getExternalStorageDirectory(), "Pictures");if (!appDir.exists()) {appDir.mkdirs();}String fileName = "photo_" + System.currentTimeMillis() + ".png";File file = new File(appDir, fileName);try {FileOutputStream fos = new FileOutputStream(file);bmp.compress(Bitmap.CompressFormat.WEBP_LOSSLESS, 100, fos);fos.flush();fos.close();} catch (Exception e) {e.printStackTrace();}MediaScannerConnection.scanFile(context, new String[]{file.toString()}, null, null);}

实现效果

1

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/265820.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

STM32-定时器输入捕获

目录 一、输入捕获简介 二、频率测量方法 三、输入捕获框图 四、输入捕获通道 五、输入捕获基本结构 六、PWMI基本结构 七、开发步骤 八、输入捕获库函数 九、实验 9.1 输入捕获测频率 9.2 PWMI模式测频率和占空比 一、输入捕获简介 >IC(Input Capture&…

GD32F30X-RT-Thread学习-线程管理

1. 软硬件平台 GD32F307E-START Board开发板MDK-ARM Keil 2.RT-Thread Nano 3.RT-Thread 内核学习-线程管理 ​ 在多线程操作系统中,可以把一个复杂的应用分解成多个小的、可调度的、序列化的程序单元,当合理地划分任务并正确地执行时,这…

计算机网络(三) | 数据链路层 PPP协议、广播CSMA/CD协议、集线器、交换器、扩展and高速以太网

文章目录 1 数据链路基本概念和问题1.1 基本概念1.2 基本问题(1)封装成帧(2)透明传输(3)差错控制 2.数据链路层协议2.1 点对点 PPP协议2.1.1 需要实现的2.1.2 PPP组成2.1.3 帧格式2.1.4 工作流程 2.2 广播 …

tamcat乱码

学习springmvc时tamcat乱码 ①、启动时tomcat控制台乱码 解决方法是:1、先把idea设置里的默认字节码改成utf-8 ​ 2、把idea显示编码改成utf-8,在末尾加上( -Dfile.encodingUTF-8) ​ 3、最后重启idea 加上这个 -Dfile.encodingU…

基于Java swing的医院信息管理系统(Java毕业设计)

大家好,我是DeBug,很高兴你能来阅读!作为一名热爱编程的程序员,我希望通过这些教学笔记与大家分享我的编程经验和知识。在这里,我将会结合实际项目经验,分享编程技巧、最佳实践以及解决问题的方法。无论你是…

ffmpeg过滤器filter理论与实战

文章目录 前言一、DirectShow1、简介2、程序基本结构3、架构 二、过滤器1、视频过滤器 -vf2、音频过滤器 -af3、过滤器链(Filterchain)4、过滤器图(Filtergraph)①、基本语法②、Filtergraph 的分类 5、结构体间的关系图 三、过滤…

论文怎么改才能降低重复率

一、引言:智能工具助力,轻松降低论文重复率 论文的重复率是学术写作中的重要问题,如何有效降低重复率成为了许多研究者的关注焦点。如今,智能工具的发展为我们提供了更多选择。本文将介绍几种实用的智能工具,包括快码…

P14 Linux进程间通信——消息队列.........

目录 前言 01 消息队列 02 如何创建队列 小结 前言 🎬 个人主页:ChenPi 🐻推荐专栏1: 《Linux C应用编程(概念类)_ChenPi的博客-CSDN博客》✨✨✨ 🔥 推荐专栏2: 《C_ChenPi的博客-CSDN博客》…

spider小案例~https://industry.cfi.cn/BCA0A4127A4128A4141.html

一、获取列表页信息 通过抓包发现列表页信息非正常返回,列表信息如下图: 通过观察发现列表页信息是通过unes函数进行处理的,我们接下来去看下该函数 该函数是对列表页的信息先全局替换"~"为"%u",然后再通过…

Linux基础指令(2)

今天我们继续来学我们有关于Linux的指令,今天的指令要比上次多多了。开始我们的学习吧。 man手册 先来看标题,手册我们第一时间想到的就是手册的查阅功能,我们都知道在我们上小学的时候,如果遇到不会的字,我们会通过…

2023年度盘点:智能汽车、自动驾驶、车联网必读书单

【文末送书】今天推荐几本自动驾驶领域优质书籍 前言 2023年,智能驾驶和新能源汽车行业仍然有着肉眼可见的新进展。自动驾驶技术继续尝试从辅助驾驶向自动驾驶的过渡,更重要的是相关技术成本的下降。根据《全球电动汽车展望2023》等行业报告&#xff0c…

目标检测——R-FCN算法解读

论文:R-FCN: Object Detection via Region-based Fully Convolutional Networks 作者:Jifeng Dai, Yi Li, Kaiming He and Jian Sun 链接:https://arxiv.org/pdf/1605.06409v2.pdf 代码:https://github.com/daijifeng001/r-fcn 文…