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
### 回答1: "failed to resolve: jp.wasabeef:glide-transformations:4.0.0" 是一个编译错误,意味着程序无法解决这个特定的依赖项。 这个错误通常出现在使用了依赖管理工具如Gradle或Maven时。它表明在项目构建过程,无法正确找到并下载所需的依赖项。 有几个常见的原因会导致这个错误出现。首先,可能是因为你所使用的库的版本与你在构建文件指定的版本不一致。在这种情况下,你需要确认库的最新版本,并更新你的构建文件。 其次,可能是因为库的地址错误或库不存在。你可以在Gradle或Maven的存储库搜索以确定库是否存在,并检查库的名称和地址是否与你在构建文件使用的版本一致。 最后,可能是由于网络连接错误,导致构建工具无法从存储库下载依赖项。在这种情况下,你可以尝试使用代理或更改你的网络配置来解决问题。 总之,当你遇到"failed to resolve"的错误时,你需要检查构建文件的依赖项的版本、地址以及你的网络连接,以确保能够成功解决依赖项。 ### 回答2: 在使用 Glide 图片加载库时出现了 "failed to resolve: jp.wasabeef:glide-transformations:4.0.0" 的错误。这个错误是由于 Gradle 无法解析指定的 Glide 图片转换库版本号4.0.0。 要解决这个问题,可以尝试以下几种方法: 1. 检查版本号:先确保正确的使用了最新版本的 Glide 和转换库。可以打开项目的 build.gradle 文件,查看 Glide 和转换库的版本号,确保二者兼容。 2. 检查依赖项:检查项目的 build.gradle 文件是否正确添加了依赖项。需要确保在 dependencies 块添加了正确的 Glide 和转换库依赖项,例如: ``` implementation 'com.github.bumptech.glide:glide:4.12.0' implementation 'jp.wasabeef:glide-transformations:4.3.0' ``` 3. 更新仓库:如果以上两个步骤都没问题,可能是 Gradle 无法从默认的 Maven 仓库解析到转换库。可以尝试添加 `maven { url 'https://jitpack.io' }` 到项目的 build.gradle 文件的 repositories 块,确保 Gradle 可以解析 jitpack 仓库的依赖。例如: ``` allprojects { repositories { // 其他仓库 maven { url 'https://jitpack.io' } } } ``` 4. 清理缓存:有时 Gradle 缓存可能会引起问题,可以尝试清理 Gradle 缓存并重新构建项目。可以通过在命令行运行 `./gradlew clean` 或者在 Android Studio 点击 "Build" -> "Clean Project" 来清理缓存。 以上是解决 "failed to resolve: jp.wasabeef:glide-transformations:4.0.0" 错误的一些常见方法。根据具体情况选取适合的解决方案,希望能帮到你。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值