Android生成带圆角的Bitmap图片
本文实例讲述了Android生成带圆角的Bitmap图片。分享给大家供大家参考。具体如下:
有时候我们在开发Android应用时,会遇到圆角图片的问题,那么,我们如何在Android中用代码来生成圆角Bitmap图片呢?下面这段代码也许能够帮到你。
该方法主要用到了drawRoundRect来画圆角矩形,然后通过drawBitmap来画图片。
//生成圆角图片 public static Bitmap GetRoundedCornerBitmap(Bitmap bitmap) { try { Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888); Canvas canvas = new Canvas(output); final Paint paint = new Paint(); final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight()); final RectF rectF = new RectF(new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight())); final float roundPx = 14; paint.setAntiAlias(true); canvas.drawARGB(0, 0, 0, 0); paint.setColor(Color.BLACK); canvas.drawRoundRect(rectF, roundPx, roundPx, paint); paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN)); final Rect src = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight()); canvas.drawBitmap(bitmap, src, rect, paint); return output; } catch (Exception e) { return bitmap; } }
希望本文所述对大家的Android程序设计有所帮助。
相关推荐
-
android 实现圆角图片解决方案
现在我们就来看看怎么样把图片的四角都变成圆形的,为什么要这样做那,如果要是这样界面就会非常的美观,下面我们就来看看代码吧. java代码: 复制代码 代码如下: public static Bitmap toRoundCorner(Bitmap bitmap, int pixels) { Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), Config.ARGB_8888); Canvas canv
-
Android关于Glide的使用(高斯模糊、加载监听、圆角图片)
高斯模糊.加载监听.圆角图片这些相信大家都很熟悉,那如何实现这些效果,请大家参考本文进行学习. 1.引用 compile 'com.github.bumptech.glide:glide:3.7.0' 2.加载图片 2.1 基本加载 Glide.with(context) .load(url) .into(imageView); 2.2 设置加载中和加载失败的情况 Glide.with(context) .load(url) .placeholder(R.drawable.loa
-
Android自定义view实现圆形、圆角和椭圆图片(BitmapShader图形渲染)
一.前言 Android实现圆角矩形,圆形或者椭圆等图形,一般主要是个自定义View加上使用Xfermode实现的.实现圆角图片的方法其实不少,常见的就是利用Xfermode,Shader.本文直接继承ImageView,使用BitmapShader方法来实现圆形.圆角和椭圆的绘制,等大家看我本文的方法后,其他的类似形状也就都能举一反三来来画出来了. 二.效果图: 三.BitmapShader简介 BitmapShader是Shader的子类,可以通过Paint.setShader(Shader
-
android图片圆角、图片去色处理示例
Android中图片处理 用来对Android中的项目图片进行处理 复制代码 代码如下: package com.zhanggeng.contact.tools; import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException; import android
-
Android如何设置圆角图片
在开发过程中有时需要将图片显示成圆角图片,一般我们可以通过在xml中设置drawable shape即可,但今天我给出另一种方法,用java代码动态去设置圆角,顺便做个简单的笔记. 主要原理是使用系统自带api: RoundedBitmapDrawableFactory 先上效果图: 由于比较简单,直接给出实现方式: public class MainActivity extends AppCompatActivity { private ImageView mImgRectRound; pri
-
Android中使用BitmapShader类来制作各种图片的圆角
public BitmapShader(Bitmap bitmap,Shader.TileMode tileX,Shader.TileMode tileY) 调用这个类来产生一个画有一个位图的渲染器(Shader). bitmap:在渲染器内使用的位图 (1)tileX:The tiling mode for x to draw the bitmap in. 在位图上X方向花砖模式 (2)tileY:The tiling mode for y to draw the bitmap in.
-
Android开发实现图片圆角的方法
本文讲述了Android开发实现图片圆角的方法.分享给大家供大家参考,具体如下: Bitmap myCoolBitmap = ... ; // <-- Your bitmap you want rounded int w = myCoolBitmap.getWidth(), h = myCoolBitmap.getHeight(); Bitmap rounder = Bitmap.createBitmap(w,h,Bitmap.Config.ARGB_8888); Canvas canvas =
-
Android图片特效:黑白特效、圆角效果、高斯模糊
1.黑白效果 复制代码 代码如下: /** * 将彩色图转换为黑白图 * * @param 位图 * @return 返回转换好的位图 */ public static Bitmap convertToBlackWhite(Bitmap bmp) { int width = bmp.getWidth(); // 获取位图的宽 int height = bmp.getHeight(); // 获取位图的高 int[] pi
-
android 设置圆角图片实现代码
复制代码 代码如下: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/layout" android:orientation="vertical" android:layout_wi
-
Android生成带圆角的Bitmap图片
本文实例讲述了Android生成带圆角的Bitmap图片.分享给大家供大家参考.具体如下: 有时候我们在开发Android应用时,会遇到圆角图片的问题,那么,我们如何在Android中用代码来生成圆角Bitmap图片呢?下面这段代码也许能够帮到你. 该方法主要用到了drawRoundRect来画圆角矩形,然后通过drawBitmap来画图片. //生成圆角图片 public static Bitmap GetRoundedCornerBitmap(Bitmap bitmap) { try { B
-
php实现生成带二维码图片并强制下载功能
本文主要和大家分享php生成带二维码图片并强制下载实现代码,希望能帮助到大家实现一个自己的二维码. /* 下载二维码 */ public function 测试(){ // 接收传递的参数 $data['keys'] = [ 'b01id'=>trim(I('get.b01id')), 'b02id'=>trim(I('get.b02id')), 'b03id'=>trim(I('get.b03id')), 'brid'=>trim(I('get.brid')), 'unicon'
-
Android 性能优化系列之bitmap图片优化
背景 Android开发中,加载图片过多.过大很容易引起OutOfMemoryError异常,即我们常见的内存溢出.因为Android对单个应用施加内存限制,默认分配的内存只有几M(具体视不同系统而定).而载入的图片如果是JPG之类的压缩格式(JPG支持最高级别的压缩,不过该压缩是有损的),在内存中展开会占用大量的内存空间,也就容易形成内存溢出.那么高效的加载Bitmap是很重要的事情.Bitmap在Android中指的是一张图片,图片的格式有.jpg .jpg .webp 等常见的格式. 如何
-
Android自定义带圆角的ImageView
最近有一个实现一个带有圆角的ImageView的需求,在网上找了找三方,虽然Demo都是正确的,但是移植过来就不可以了,因为请求链接的时候用的是xUtils中Bitmap来进行解析的,这样就总是会报类型转换异常的错误. 就这样只能自己定义一个了. Demo: package com.yizooo.yizooo.ui; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Bi
-
使用GD库生成带阴影文字的图片
最近使用GD库来进行微信公共账号的图片生成,研究了一下GD库文字阴影效果的生成同时也发现了GD库的强大. GD库,是php处理图形的扩展库,GD库提供了一系列用来处理图片的API,使用GD库可以处理图片,或者生成图片. 在网站上GD库通常用来生成缩略图,或者用来对图片加水印,或者用来生成汉字验证码,或者对网站数据生成报表等. GD库的安装什么的网上都有,现在很多虚拟空间也都支持,这里就不再赘述.下面通过我实际应用代码的实例和相关的注释为大家介绍一下GD库的使用方法. 原图: 生成效果图: 代码如
-
Android中实现圆角图片的几种方法
Android中实现圆角图片有多种姿势,不知你解锁了几种? 方法一:setXfermode法 此种方式就是再new一个相同尺寸的bitmap,然后使用paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));先画圆角矩形,再画原始bitmap,然后就得到了一个圆角的bitmap了. public static Bitmap getRoundedCornerBitmap(Bitmap bitmap, float roundPx) { Bitmap
-
详解android 通过uri获取bitmap图片并压缩
详解android 通过uri获取bitmap图片并压缩 很多人在调用图库选择图片时会在onActivityResult中用Media.getBitmap来获取返回的图片,如下: Uri mImageCaptureUri = data.getData(); Bitmap photoBmp = null; if (mImageCaptureUri != null) { photoBmp = MediaStore.Images.Media.getBitmap(ac.getContentResolve
-
Android基于Fresco实现圆角和圆形图片
Fresco是FaceBook开源的Android平台图片加载库,可以从网络,从本地文件系统,本地资源加载图片 Fresco本身已经实现了圆角以及圆形图片的功能. <!--圆形图片,一般用作头像--> <com.facebook.drawee.view.SimpleDraweeView android:id="@+id/iv_avatar" android:layout_width="40dp" android:layout
-
如何基于原生javaScript生成带图片的二维码
这篇文章主要介绍了如何基于原生javaScript生成带图片的二维码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 使用链接生成二维码主要是使用qr.js或者其他,把链接转化为二维码的形式,在使用canvas时需要设置画布的尺寸,生成的颜色. <div class="qr_code"> <img src="" id="imgcode" /> <canvas ref=
随机推荐
- Mysql 5.7.18安装方法及启动MySQL服务的过程详解
- 通过命令行创建vue项目的方法
- java 实现单链表逆转详解及实例代码
- asp.net(c#)实现从sqlserver存取二进制图片的代码
- js实现弹窗居中的简单实例
- 第四章之BootStrap表单与图片
- Android中的Handler与多线程应用实例
- php简单的会话类代码
- php使用curl发送json格式数据实例
- JS实现很酷的EMAIL地址添加功能实例
- ViewPager打造轮播图Banner/引导页Guide
- javascript操作Cookie(设置、读取、删除)方法详解
- expect实现单台、多台服务器批量scp传输文件
- 原生js结合html5制作简易的双色子游戏
- 浅谈ASP.NET MVC应用程序的安全性
- Python实现把utf-8格式的文件转换成gbk格式的文件
- 简介Nginx中的location匹配规则
- Microsoft Access 数据库常规规格
- jquery移动listbox的值原理及代码
- Android开发实现在Wifi下获取本地IP地址的方法