由于图像,应用程序尺寸较大。如何压缩 .PNG 图像?

发布于 2024-12-12 07:22:32 字数 75 浏览 1 评论 0原文

我正在开发一个应用程序,它有很多图像需要处理,因此我的应用程序的大小变得非常大。我想压缩或类似的东西来减少应用程序的大小。有什么想法吗?

I am developing an app which has a lot of images to work on due to which the size of my app has become very large. I want to compress or something like that to reduce the size of app. Any idea?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

薄凉少年不暖心 2024-12-19 07:22:32

.png - 放置在 res/drawable 中的文件是 编译应用时自动优化

位图文件可以使用无损图像自动优化
在构建过程中使用aapt工具进行压缩。
例如,
不需要超过 256 色的真彩色 PNG 可能是
使用调色板转换为 8 位 PNG。这将导致
图像质量相同但需要更少的内存。所以要注意
放置在此目录中的图像二进制文件可以在
建造。如果您打算将图像作为位流读取
将其转换为位图,将图像放入 res/raw/ 文件夹中
相反,它们不会被优化。

话虽如此,您还有更多选择可以尝试。 Google I/O 2016 上有一个关于这个主题的精彩演讲,名为“面向 Android 开发者的图像压缩”,其中概述了可能性,解释了它们的优点和缺点,并给出了一些通用的最佳实践。


如果您的应用程序的大小太大而无法在市场上发布,您可以在

  • 不带图像的情况下发布您的应用程序,并在应用程序首次启动时将它们从互联网加载到手机 SD 卡上
  • 使用 Android 自己的 APK 扩展文件,基本相同,但不必一切都自己做。

.png-files which are placed in the res/drawable are automatically optimized when compiling your app:

Bitmap files may be automatically optimized with lossless image
compression by the aapt tool during the build process.
For example, a
true-color PNG that does not require more than 256 colors may be
converted to an 8-bit PNG with a color palette. This will result in an
image of equal quality but which requires less memory. So be aware
that the image binaries placed in this directory can change during the
build. If you plan on reading an image as a bit stream in order to
convert it to a bitmap, put your images in the res/raw/ folder
instead, where they will not be optimized.

That being said, you have some more options to try. There is a good talk on this topic from Google I/O 2016 called "Image Compression for Android Developers", which outlines the possibilities, explains their up and downsides and gives some general best practices.


If the size of your application is to high to be published on the market, you'll can either

  • ship your app without the images and load them from the internet to the phones SD-card when the app is first started
  • Use Androids own APK Extension Files, which is basically the same but you don't have to do everything yourself.
灯角 2024-12-19 07:22:32

使用 pngquantposterizer 来减小 PNG 图像的大小(这些工具是有损的,但可以显着节省)。

您还可以使用 PNGOUT 对其进行优化,这是最好的无损优化器之一。

我已经为这些编写了 Mac GUI

Use pngquant or posterizer to reduce size of PNG images (these tools are lossy, but give significant savings).

You can also optimize them with PNGOUT, which is one of the best lossless optimizers.

I've written Mac GUI for those.

℡寂寞咖啡 2024-12-19 07:22:32

始终使用 PNG (.png) 图像。
并将图像上传到

https://tinypng.com/

进行在线压缩简单而清醒,始终有效。不客气。 :)

还有一个更好的方法来使用AndEngine,它可以让你不用为每部手机做布局。并且无需为不同 dpi 的手机使用不同的图像。

Always use PNG (.png) images.
And compress it online by uploading your images to

https://tinypng.com/

Simple and sober, always work. You are welcome. :)

There is also a better way to use AndEngine, it saves you from making layout for each phone. And there is no need to use different images for different dpi phones.

纵山崖 2024-12-19 07:22:32

您使用 9 块补丁作为背景吗?您还可以使用 imagemagick 或类似的工具来压缩批次或图像。

Do you use 9-patches for backgrounds? Also you can use imagemagick or anything similar to compress a batch or images.

指尖上得阳光 2024-12-19 07:22:32
  1. 尝试使用“.png”。
  2. 使用 9 块图像作为背景。
  3. 如果您有标题栏、带有垂直渐变的标题,请始终使用 1 像素宽度的渐变图像。这是一个超级节省者。
  4. 如果您设法掌握 Photoshop,他们可以选择为网络/移动设备保存图像。有助于制作具有良好质量的小尺寸图像。
  5. 如果您支持多种设备,请仅为真正需要的设备维护不同版本的映像。
  1. Try and use ".png".
  2. Use 9-patch images for backgrounds.
  3. If you have title bars, headers with vertical gradients, always use 1-pixel width gradient images. This is a super saver.
  4. If you manage to get hold of Photoshop, they have the option to save images for web/mobile devices. Helps in making really small sized images with good quality.
  5. If u r supporting multiple devices, maintain different versions of the images only for those that are really necessary.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文