是否更容易提供一个高分辨率可绘制PNG资产并让Android缩小它?

时间:2011-11-01 19:14:39

标签: android drawable scaling assets

我正在为Android应用中的视图组创建背景图片,我不确定该资产的最佳用途。

是否更容易(阅读:在大多数手机上看起来更好)只需将资产提供为900x570或大约,让Android自动上下缩放,或者自己在Photoshop中进行缩放,并在3 {{{ 1}},drawable-ldpidrawable-mdpi个文件夹?

节省的空间将非常小:大约10-20k,让我更简单地让Android缩放图像本身更有意义。

目标API将向上升2.0,并且开始时不支持平板电脑。

3 个答案:

答案 0 :(得分:6)

从开发人员的角度来看,让Android为您缩放图像显然更容易,但在大多数手机上看起来并不好看。根据我的经验,Photoshop有比Android更好的缩放算法。

答案 1 :(得分:1)

如果你只在drawable,drawable-ldpi,drawable-mdpi和drawable-hdpi中指定一个副本图像,android会默认为你缩放

然而,出于性能原因,放置不同大小的图像是一种很好的做法

答案 2 :(得分:1)

它更容易,但在性能方面有成本。

如果已知目标密度,最好为您的图标/启动画面/图像编写所有需要的转换,并在下次主人更改时忘记这一点......免费...

这是一个使用ImageMagick作为我的图标和listview眼睛糖果来自pdf大师的例子:

#!/bin/bash
convert -transparent white ic_padlock.pdf ic_padlock.png
convert -scale 36x36 ic_padlock.png ../../res/drawable-ldpi/ic_launcher_padlock.png
convert -scale 48x48 ic_padlock.png ../../res/drawable-mdpi/ic_launcher_padlock.png
convert -scale 72x72 ic_padlock.png ../../res/drawable-hdpi/ic_launcher_padlock.png
convert -scale 24x24 ic_padlock.png ../../res/drawable-ldpi/ic_listview_padlock.png
convert -scale 32x32 ic_padlock.png ../../res/drawable-mdpi/ic_listview_padlock.png
convert -scale 48x48 ic_padlock.png ../../res/drawable-hdpi/ic_listview_padlock.png
convert -transparent white ic_padlock_ok.pdf ic_padlock_ok.png
convert -scale 36x36 ic_padlock_ok.png ../../res/drawable-ldpi/ic_listview_padlock_ok.png
convert -scale 48x48 ic_padlock_ok.png ../../res/drawable-mdpi/ic_listview_padlock_ok.png
convert -scale 72x72 ic_padlock_ok.png ../../res/drawable-hdpi/ic_listview_padlock_ok.png

您可以将convert与密度参数一起使用以获得最佳渲染效果:

convert -density targetdensityxtargetdensity  -transparent white splash.pdf ../../res/drawable/splash.png