android能用svg格式,关于Android SVG图形:Android SVG图形 – 将当前PNG文件转换为svg格式的缺点...

本文探讨了在Android项目中使用SVG文件的优势,如清晰缩放和APK减小,但提到了在兼容旧设备和转换质量上的挑战。讨论了是否需要将PNG转换为SVG,以及何时选择SVG到PNG的策略,考虑到矢量图形的扩展性和XML引用限制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我在github上看到了一些工具,现在Lolipop中的矢量drawables允许你使用svg文件。 我发现的一个主要优点是svg文件应该拉伸并保持适当的缩放,因此在拉伸后看起来很清晰。 现在使用svg文件,我可以将所有图像保存在可绘制文件夹中,而不是按密度过滤掉它们。 这使得apk文件更小,这是所希望的。

问题:我是否有任何理由不想在原生Android项目中使用我当前的PNG图像并将其转换为svg文件,例如像矢量魔术这样的在线转换工具?

您可以选择少数SVG导入库之一。 有理由选择SVG到PNG文件。 (矢量是可扩展的,所以不需要在不同的文件夹中有很多重复的图形)

我想(早晚)会有一个版本的支持库允许我们在旧设备上使用VectorDrawables。

有几个原因你不想这样做。

首先,仅在Android 5.0+上支持矢量绘图。 如果您只是针对Lollipop及以上版本,这不会是一个问题,但对于旧版本的Android,您仍然需要PNG。

其次,将栅格转换为矢量在大多数情况下会产生较差的结果。 相反,您应该首先在Illustrator等程序中将原始资源创建为矢量图像。 然后导出到SVG以转换为VectorDrawable格式,并导出到PNG以获取您希望在5.0之前的设备上支持的DPI存储桶。

您可以选择少数SVG导入库之一。 有理由选择SVG到PNG文件。 (矢量是可扩展的,所以不需要在不同的文件夹中有很多重复的图形)

这是个好的观点。 如果您不需要从XML引用Drawables,那么您可以使用支持5.0之前的设备并仅使用SVG的SVG库。

我想(早晚)会有一个版本的支持库允许我们在旧设备上使用VectorDrawables。

潜在的。 但是,由于Android不支持从XML加载自定义drawable,因此它仍然具有相同的限制,无法从布局XML中引用它们。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值