mirror of
https://github.com/gedoor/legado.git
synced 2025-08-10 00:52:30 +00:00
优化
This commit is contained in:
@@ -3,7 +3,7 @@ package io.legado.app.help.glide
|
||||
import android.graphics.Bitmap
|
||||
import androidx.annotation.IntRange
|
||||
import com.bumptech.glide.load.engine.bitmap_recycle.BitmapPool
|
||||
import com.bumptech.glide.load.resource.bitmap.CenterCrop
|
||||
import com.bumptech.glide.load.resource.bitmap.BitmapTransformation
|
||||
import io.legado.app.utils.stackBlur
|
||||
import java.security.MessageDigest
|
||||
|
||||
@@ -13,7 +13,7 @@ import java.security.MessageDigest
|
||||
*/
|
||||
class BlurTransformation(
|
||||
@IntRange(from = 0, to = 25) private val radius: Int
|
||||
) : CenterCrop() {
|
||||
) : BitmapTransformation() {
|
||||
|
||||
override fun transform(
|
||||
pool: BitmapPool,
|
||||
@@ -21,8 +21,7 @@ class BlurTransformation(
|
||||
outWidth: Int,
|
||||
outHeight: Int
|
||||
): Bitmap {
|
||||
val transform = super.transform(pool, toTransform, outWidth, outHeight)
|
||||
return transform.stackBlur(radius)
|
||||
return toTransform.stackBlur(radius)
|
||||
}
|
||||
|
||||
override fun updateDiskCacheKey(messageDigest: MessageDigest) {
|
||||
|
||||
@@ -5,6 +5,7 @@ import android.content.Context
|
||||
import android.graphics.drawable.BitmapDrawable
|
||||
import android.graphics.drawable.Drawable
|
||||
import com.bumptech.glide.RequestBuilder
|
||||
import com.bumptech.glide.load.resource.bitmap.CenterCrop
|
||||
import com.bumptech.glide.load.resource.drawable.DrawableTransitionOptions
|
||||
import com.bumptech.glide.request.RequestOptions
|
||||
import io.legado.app.R
|
||||
@@ -86,14 +87,14 @@ object BookCover {
|
||||
loadOnlyWifi: Boolean = false
|
||||
): RequestBuilder<Drawable> {
|
||||
val loadBlur = ImageLoader.load(context, defaultDrawable)
|
||||
.transform(BlurTransformation(25))
|
||||
.transform(BlurTransformation(25), CenterCrop())
|
||||
return if (AppConfig.useDefaultCover) {
|
||||
loadBlur
|
||||
} else {
|
||||
val options = RequestOptions().set(OkHttpModelLoader.loadOnlyWifiOption, loadOnlyWifi)
|
||||
ImageLoader.load(context, path)
|
||||
.apply(options)
|
||||
.transform(BlurTransformation(25))
|
||||
.transform(BlurTransformation(25), CenterCrop())
|
||||
.transition(DrawableTransitionOptions.withCrossFade(1500))
|
||||
.thumbnail(loadBlur)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user