我正在寻找一种将位图用作Glide输入的方法。我甚至不确定是否可能。这是为了调整大小。Glide具有很好的缩放图像增强功能。问题在于我已经将位图资源加载到内存中。我能找到的唯一解决方案是将图像存储到临时文件中,然后将它们作为inputStream / file重新加载到Glide中。有更好的方法实现吗?
在回答之前,请注意...我不是在谈论Glide的输出.. .asBitmap().get()
我知道那个。我需要关于输入的帮助。
这是我的解决方法:
Bitmap bitmapNew=null;
try {
//
ContextWrapper cw = new ContextWrapper(ctx);
File directory = cw.getDir("imageDir", Context.MODE_PRIVATE);
File file=new File(directory,"temp.jpg");
FileOutputStream fos = new FileOutputStream(file);
bitmap.compress(Bitmap.CompressFormat.PNG, 90, fos);
fos.close();
//
bitmapNew = Glide
.with(ctx)
.load(file)
.asBitmap()
.diskCacheStrategy(DiskCacheStrategy.NONE)
.skipMemoryCache(true)
.into( mActualWidth, mActualHeight - heightText)
.get();
file.delete();
} catch (Exception e) {
Logcat.e( "File not found: " + e.getMessage());
}
我希望避免将图像写入内部并再次加载它们。这就是我询问是否有方法可以将输入作为位图的原因。谢谢。