Android中图片剪切开源项目glide-transformations的基本使用(总结)

需求:圆形ImageView,矩形ImageView,矩形带圆角ImageView,模糊ImageView等等。

方法:使用第三方开发项目——glide-transformations,从名字上可以看出来这是和Glide配合使用的,类似于Glide的插件。

GitHub地址:https://github.com/wasabeef/glide-transformations

效果图如下:

使用步骤:

1、添加远程依赖库:

/*图片加载框架*/
implementation 'com.github.bumptech.glide:glide:3.7.0'
/*处理图片工具*/
implementation 'jp.wasabeef:glide-transformations:3.3.0'

2、布局文件如下:(和平常一样创建ImageView即可)

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:gravity="center_horizontal"
    xmlns:android="http://schemas.android.com/apk/res/android">

    <ImageView
        android:id="@+id/Main_ivCropSquare"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:scaleType="fitXY"
        android:layout_marginTop="10dp"
        android:src="@drawable/img2"/>

    <ImageView
        android:id="@+id/Main_ivRoundCorner"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:scaleType="fitXY"
        android:layout_marginTop="10dp"
        android:src="@drawable/img2"/>

    <ImageView
        android:id="@+id/Main_ivCircle"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:scaleType="fitXY"
        android:layout_marginTop="10dp"
        android:src="@drawable/img2"/>

    <ImageView
        android:id="@+id/Main_ivBlur"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:scaleType="fitXY"
        android:layout_marginTop="10dp"
        android:src="@drawable/img2"/>

    <ImageView
        android:id="@+id/Main_ivCropGroup"
        android:layout_width="100dp"
        android:layout_height="100dp"
        android:scaleType="fitXY"
        android:layout_marginTop="10dp"
        android:src="@drawable/img2"/>
    
</LinearLayout>

3、如何在Activity中使用呢?

//普通矩形
Glide.with(mContext).load(R.drawable.img2)
        .apply(bitmapTransform(new CropSquareTransformation()))
        .into(ivCropSquare);
//长方形带圆角
Glide.with(mContext).load(R.drawable.img2)
        .apply(bitmapTransform(new RoundedCornersTransformation(10, 3)))
        .into(ivRoundCorner);
//圆形
Glide.with(mContext).load(R.drawable.img2)
        .apply(bitmapTransform(new CircleCrop()))
        .into(ivCircle);
//模糊效果
Glide.with(mContext).load(R.drawable.img2)
        .apply(bitmapTransform(new BlurTransformation()))
        .into(ivBlur);
//组合效果(可以把前面的效果组合一起)
MultiTransformation multi = new MultiTransformation(
        new BlurTransformation(25),
        new RoundedCornersTransformation(50, 0, RoundedCornersTransformation.CornerType.BOTTOM));
Glide.with(mContext).load(R.drawable.img2)
        .apply(bitmapTransform(multi))
        .into(ivCropGroup);

PS,还有很多其他效果,比如:

ToonFilterTransformation
SepiaFilterTransformation
ContrastFilterTransformation
InvertFilterTransformation
PixelationFilterTransformation
SketchFilterTransformation
SwirlFilterTransformation
BrightnessFilterTransformation
KuwaharaFilterTransformation
VignetteFilterTransformation
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值