我的设计师在Illustrator上工作,并使用脚本导出了mdpi,hdpi和xhdpi(以及iOS res)的所有资源。对于按钮和可替换物图像,我正在寻找生成9patches的最佳解决方案。
到目前为止,我一直使用SDK中的draw9patch软件生成9patches。它仍然可以工作,但是说真的,我希望有更好的方法。如果在我的项目中有20个按钮,具有3个或4个状态,并且有3种密度类型,我无法想象此解决方案将需要多少小时。
一种解决方案是使用Asset Studio工具,但我不想提供我的xhdpi文件,而为其他密度文件夹获取生成效果不佳的图像。我的目标是为每种密度获得完美的9patches像素。
我们还尝试将SVG文件用于可拉伸(stretch)图像,但似乎Asset Studio不接受它们。
如果我的设计师尝试直接在Illustrator中制作9patch,则他不能使用脚本进行导出,因为1 px的行也会缩放,并且不再测量1 px。
那么,有没有一种解决方案可以制作 9-patch ,而又不损失图像质量,也不需要花费十个小时呢?
最佳答案
我的解决方案是花大量时间学习draw9patch,然后不需要花费几个小时来制作按钮。我自己做了这个,很痛苦,但是draw9patch是一种非常简单的方法,每个图像(用于按钮)花费我不超过15秒。 draw9patch图像应该很棒,因为您实际上只需要做一次,它们就可以在所有密度下工作,因为它们会相应拉伸(stretch)。如果图像中有文字,则还有另一个问题。这是令人讨厌的,因为您失去了使用简单的stings.xml转换应用程序的能力
我的解决方案:
1. 在draw9patch上变得很棒
2. 请勿将图片与文字一起使用。 draw9patch可用于将按钮的文本正确居中,这将增加您的应用程序以不同语言使用的能力。可以轻松提升下载/销售量的功能。这很重要,因为即使您为您的应用提供了定位另一种语言(比如说西类牙语)的能力,也确实会使目标受众感到满意。