java - 我应该在 Android 应用程序中使用哪种图像格式?

标签 java android graphics

我正在为 Android 编写游戏,我想知道我应该为游戏图形使用什么样的图像。

我告诉客户以尽可能高(且合理)的分辨率创建艺术品,我会缩小它,但最近有人告诉我,SVG 会比普通的 PNG 更好 例如,由于 Android 设备使用了很多分辨率,因此必须缩放图像。大多数图形将是静止的背景或对象,但会有一些动画。为此,我将使用 AnimationDrawable

是否有一些图形文件格式的通用指南(我查看了 android developer 网站但没有找到任何东西)或者只是使用我目前拥有的任何东西?

最佳答案

I have been told lately that SVG would be better than plain PNG for example

Android 本身不支持 SVG。有支持SVG的第三方库,比如this one .

since there are a lot of resolutions used by Android devices and the images have to be scaled

如果这正是您的平面设计师告诉您的,您需要聘请其他平面设计师。快点。

分辨率通常没有意义。重要的是屏幕尺寸,更重要的是图形,屏幕密度。 Android 支持不同密度的图像的多个版本,并且还可以将图像从一种密度重新采样为另一种密度,因此您可以“拨入”您希望直接支持的密度数量。这是 a blog post from yesterday关于屏幕密度,Android 文档中也有大量关于此的 Material 。

现在,您的图形设计师可能会“在内部”使用 SVG 并生成密度缩放的 PNG 文件供您使用——这是完全合理的。

关于java - 我应该在 Android 应用程序中使用哪种图像格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13529767/

相关文章:

java - 我需要自己的服务器才能使用 Stripe API 吗?

android - 如何使用 Genymotion 使用 Wifi Direct(Wi-Fi 点对点 Wifi P2P)运行 android 应用程序?

android - 如何无限循环在Android中播放铃声?

graphics - 关于Qt Graphics View Framework在项目数量较多时的效率问题

java - 错误: "A JSONArray text must start with ' [' at 1 [character 2 line 1]" should not apply

java - 如何发送屏幕查看事件,以帮助Firebase预测做出更准确的预测

java - 在 Jackson 中序列化/反序列化别名基元,无需太多样板

java - 如何在Java中调用dll?

windows - 是否有一种简单的方法可以强制Windows使用固定的DPI值而不是当前DPI设置来计算文本范围?

java - 启动应用程序时的空白 View (SurfaceView)