gpt4 book ai didi

android - 通用图像加载器 : Crop center image loading synchronously (no imageview) (Android, UIL)

转载 作者:行者123 更新时间:2023-11-29 21:08:06 25 4
gpt4 key购买 nike

我正在使用 Universal Image Loader 来:

  • 同步加载图片

  • 固定方向

  • 裁剪中心(这不起作用)

  • 以低内存占用完成所有这些

如果可以使用 Universal Image Loader,我不想自己缩放位图。我问这个问题的原因是因为我不知道 Universal Image Loader 是否可行。

我不想(或不需要)使用 ImageView 来加载位图我只需要一个位图,但可以即时将其裁剪居中。 UIL可以吗?我已经解决了 GH 上的问题和 SO 上的问题,但找不到相关示例。

这是代码:

private Bitmap getBitmap(Uri uri, int width, int height) {
DisplayImageOptions options = new DisplayImageOptions.Builder()
.considerExifParams(true)
.cacheOnDisk(true)
.build();
ImageSize size = new ImageSize(width, height);
return mImageLoader.loadImageSync(uri.toString(), size, options);
}

谢谢大家!

最佳答案

我认为这就是 BitmapProcessor 的用途(尽管我自己没有使用过该库)。

这是我会做的:

// preProcessor gets to work before image gets cached, so cache will contain the cropped
// version
[...Builder...].preProcessor(new BitmapProcessor() {
public Bitmap process (Bitmap src) {
// Roughly assuming that the bitmap is bigger than the needed dimensions
// but you get the idea
int xOffset = (src.getWidth() - width) / 2;
int yOffset = (src.getHeight() - height) / 2;
Bitmap result = Bitmap.createBitmap(src, xOffset, yOffset, width, height);
// not sure whether this is necessary or the calling logic does it
// my guess is it does 'cause it's a simple check [if (src != result) src.recycle();]
// and the lib is rather smart altogether. Check the docs, they probably mention this
src.recycle();
return result;
}
})

关于android - 通用图像加载器 : Crop center image loading synchronously (no imageview) (Android, UIL),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23858730/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com