From c94140824cee443f9caf8d7217903aba2bd1f23d Mon Sep 17 00:00:00 2001 From: Yurii Zubrytskyi Date: Tue, 29 Oct 2024 17:53:57 -0700 Subject: [aapt2] Add a compression control option to 'compile' aapt2 recompresses all PNGs it compiles, and by default it uses the best (and slowest) zlib compression level, 9. This change adds a command line option --png-compression-level to control that, so it's possible to set it to something faster e.g. 6 which is usually 5x faster and around 101% of the size of level 9 PNGs Test: manual, compile Framework Flag: EXEMPT tool Change-Id: Ibe5f47b82e1c13be0a4ffff0e07e675871abc956 --- libs/androidfw/PngCrunch.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'libs/androidfw/PngCrunch.cpp') diff --git a/libs/androidfw/PngCrunch.cpp b/libs/androidfw/PngCrunch.cpp index cf3c0eeff402..e94540544cf5 100644 --- a/libs/androidfw/PngCrunch.cpp +++ b/libs/androidfw/PngCrunch.cpp @@ -506,8 +506,7 @@ bool WritePng(const Image* image, const NinePatch* nine_patch, OutputStream* out // Set up the write functions which write to our custom data sources. png_set_write_fn(write_ptr, (png_voidp)out, WriteDataToStream, nullptr); - // We want small files and can take the performance hit to achieve this goal. - png_set_compression_level(write_ptr, Z_BEST_COMPRESSION); + png_set_compression_level(write_ptr, options.compression_level); // Begin analysis of the image data. // Scan the entire image and determine if: -- cgit v1.2.3-59-g8ed1b