如何从android或web中的本地缓存加载.svg文件

问题描述 投票:0回答:1

我正在使用滑动来异步加载.png图像。

File file = Glide.with(context).load(location).downloadOnly(1024, 1024).get();

如果是.svg,则会创建该文件,但不会在imageView上加载。

android svg android-glide androidsvg
1个回答
0
投票

ImageView只接受Bitmaps或VectorDrawables。

即使VectorDrawable从它下降,SVG也不是两者之一。

从你的PictureDrawable文件中获取SVG。然后你需要从Bitmap的大小创建一个PictureDrawable并将其交给Canvas

PictureDrawable pictureDrawable = svg.createPictureDrawable();
Bitmap bitmap = Bitmap.createBitmap(pictureDrawable.getIntrinsicWidth(), pictureDrawable.getIntrinsicHeight(), Config.ARGB_8888); 
Canvas canvas = new Canvas(bitmap); 
canvas.drawPicture(pictureDrawable.getPicture()); 
currentBitmap = bitmap;
© www.soinside.com 2019 - 2024. All rights reserved.