From e05bb47134dbd0a835bac8b5db8b1579e38eeab9 Mon Sep 17 00:00:00 2001 From: Nico Weber Date: Thu, 16 Mar 2023 09:02:31 +0100 Subject: [PATCH] image: Add --strip-color-profile flag With this flag, no color profile is copied from the source image to the destination image. --- Userland/Utilities/image.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Userland/Utilities/image.cpp b/Userland/Utilities/image.cpp index 50afd3ea0a..1643b91443 100644 --- a/Userland/Utilities/image.cpp +++ b/Userland/Utilities/image.cpp @@ -26,6 +26,9 @@ ErrorOr serenity_main(Main::Arguments arguments) bool ppm_ascii; args_parser.add_option(ppm_ascii, "Convert to a PPM in ASCII", "ppm-ascii", {}); + bool strip_color_profile; + args_parser.add_option(strip_color_profile, "Do not write color profile to output", "strip-color-profile", {}); + args_parser.parse(arguments); if (out_path.is_empty()) { @@ -41,6 +44,9 @@ ErrorOr serenity_main(Main::Arguments arguments) auto frame = TRY(decoder->frame(0)).image; Optional icc_data = TRY(decoder->icc_data()); + if (strip_color_profile) + icc_data.clear(); + ByteBuffer bytes; if (out_path.ends_with(".bmp"sv, CaseSensitivity::CaseInsensitive)) { bytes = TRY(Gfx::BMPWriter::encode(*frame, { .icc_data = icc_data }));