Glide中有显示svg的例子,链接如下 sample/svg

默认svg显示出来是比较小的,我们需要修改SvgDecoder.java文件,让svg的大小和ImageView一致

public Resource decode(@NonNull InputStream source, int width, int height,

@NonNull Options options)

throws IOException {

try {

Log.e("liang","width:" + width + ",height=" + height);

SVG svg = SVG.getFromInputStream(source);

svg.setDocumentWidth(width); //需要添加部分

svg.setDocumentHeight(height); //需要添加部分

return new SimpleResource<>(svg);

} catch (SVGParseException ex) {

throw new IOException("Cannot load SVG from stream", ex);

}

}

显示svg的ImageView设置android:scaleType="fitXY",其他类型显示都有问题

例子中是显示本地文件和网络文件,我们还可以直接显示内容

private void loadRes() {//显示本地文件

Uri uri = Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE + "://" + getPackageName() + "/"

+ R.raw.a);

requestBuilder.load(uri).into(imageViewRes);

}

private void loadNet() {//显示网络文件

Uri uri = Uri.parse("http://www.clker.com/cliparts/u/Z/2/b/a/6/android-toy-h.svg");

requestBuilder.load(uri).into(imageViewNet);

}

private void loadContent() {//显示svg内容

requestBuilder.load(getSvgString().getBytes()).into(imageViewRes);

}

private String getSvgString(){

return "\n" +

"

\\\\ce{N2 + 3H2 <=>[高温、加压][催化剂] 2NH3}\n" +

"\n" +

"\n" +

"\n" +

"\n" +

"\n" +

"\n" +

"\n" +

"\n" +

"\n" +

" \n" +

" \n" +

" \n" +

" \n" +

"\n" +

" \n" +

" \n" +

"\n" +

"\n" +

" \n" +

"\n" +

"\n" +

"催\n" +

"\n" +

"化\n" +

"\n" +

"\n" +

"剂\n" +

"\n" +

"\n" +

"\n" +

"\n" +

"\n" +

"高\n" +

"\n" +

"温\n" +

"\n" +

"\n" +

"、\n" +

"\n" +

"\n" +

"加\n" +

"\n" +

"\n" +

"压\n" +

"\n" +

"\n" +

"\n" +

"\n" +

" \n" +

"\n" +

" \n" +

" \n" +

" \n" +

"\n" +

"\n" +

"\n";

}

android 显示svg图片,Android显示SVG相关推荐

  1. img 服务器上的图片不显示图片,img显示服务器图片不显示

    img显示服务器图片不显示 内容精选 换一换 您可根据需求自定义下发消息内容,例如新增场景:终端用户发送"应用魔方"时,聊天机器人自动回复该产品介绍给用户.在"ChatB ...

  2. linux qt显示gif图片,QT显示GIF图片

    在QT中要显示GIF图片,不能通过单单的添加部件来完成. 还需要手动的编写程序. 工具:QT Creator 新建一个工程,我们先在designer中,添加一个QLabel部件. 如下图: 将QLab ...

  3. img显示服务器本地图片,img显示服务器图片不显示

    img显示服务器图片不显示 内容精选 换一换 这是因为该弹性云服务器已被其他用户使用VNC方式登录.VNC方式登录弹性云服务器时,同一时刻仅支持一个用户登录.如果多个用户同时登录,除第一个用户可正常登 ...

  4. img显示保存在服务器中的图片,img显示服务器图片不显示

    img显示服务器图片不显示 内容精选 换一换 训练模板分类模型后,需要对模板分类器和模板图片进行评估和考察.您可以通过上传测试图片,在线评估模板分类情况和模板的文字识别情况,保证能在多个模板情况下正确 ...

  5. 16、控件使用之图标动画显示和图片动画显示

    控件使用之图标动画显示和图片动画显示 1.用到的控件 2.添加控件 2.1.添加[动画图标显示]控件 2.2.添加[增量调节]控件 2.3.添加[动画图片显示]控件 3.保存工程及生成文件 4.下载文 ...

  6. 分时显示不同图片,显示不同的问候语

    [案例] 分时显示不同图片,显示不同的问候语 要求: 根据不同的时间,页面显示不同的图片,同时显示不同的问候语. 1:如果是早上时间打开页面,显示上午好,显示上午图片: 2:如果是下午时间打开页面,显 ...

  7. 案例1 分时显示不同图片,显示不同的问候语

    案例: <!-- 案例 分时显示不同图片,显示不同问候语 --><div>123</div><img src="" alt="& ...

  8. 【Android 安装包优化】Android 中使用 SVG 图片 ( Android 5.0 以下的矢量图方案 | 矢量图生成为 PNG 图片 )

    文章目录 一.Android 5.0 以下的矢量图方案 二.矢量图生成为 PNG 图片 三.完整的 build.gradle 构建脚本 四.编译效果 五.参考资料 一.Android 5.0 以下的矢 ...

  9. android 代码添加图片不显示,Android开发 从代码里设置Drawable图片不显示的问题

    问题描述 我们从代码里获得Drawable在设置给View时会发现,图片不显示的问题.比如如下代码: Drawable drawable = getResources().getDrawable(R. ...

  10. Android界面背景图片不显示---三星手机

    前短时间遇见的一个问题,应用中的一个activity背景图片加载不上,也就是不显示.其他手机都可以,就三星的一款手机不行. 布局界面: <RelativeLayout xmlns:android ...

最新文章

  1. 安全绳使用方法图解_电暖器的使用方法与安全注意事项
  2. 黑马程序员Linux系统开发视频之线程共享资源与非共享资源
  3. XIII Open Grodno SU Championship
  4. 认识 linux sysfs文件系统
  5. 分布式消息系统:Kafka
  6. android学汇资料总整理
  7. 介绍Angular的注入服务
  8. javax.net.ssl.SSLException: java.lang.RuntimeException: Could not generate DH keypair
  9. 《机器学习与数据科学(基于R的统计学习方法)》——2.8 读取JSON文件
  10. Introduction to Conditional Random Fields
  11. 2. main函数和启动例程
  12. VTD场景搭建指南-搭建一个最简单的场景
  13. Win10下 QT的安装配置 (亲测可用)
  14. OSEK OS标准简介(转)
  15. input反应慢 vue_vue 输入框速度慢的问题
  16. 示例程序:关于双目视觉,标定,立体匹配(视差算法),点云,双目三维重建的原理以及代码
  17. word没保存?如何找回未保存的word文档
  18. 8位无符号比较器设计
  19. node+express+mock
  20. 软件测试流程及流程管理

热门文章

  1. matlab 地震波过滤器设计
  2. oppoa5系统服务器是什么,oppoa52处理器是什么?oppoa52是5g手机吗?
  3. 视频一键识别生成字幕2
  4. linux驱动之I2C子系统
  5. 5个值得信赖的微信小程序,好用到任你挑选!
  6. 谁在说谎c语言编译,C趣味程序百例(15)谁在说谎
  7. qt解析joystick飞行摇杆按键信息
  8. 计算机下记账凭证处理流程,第一节 电算化会计核算基本流程
  9. MyEclipse10.1正式版官网下载(附Win+Llinux激活方法、汉化包)
  10. 健康的荷斯坦奶牛 Healthy Holsteins