1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-14 09:24:57 +00:00

LibGfx+icc: Stringify known signatureType values

This commit is contained in:
Nico Weber 2023-02-10 10:13:26 -05:00 committed by Linus Groh
parent ab5b61c3fe
commit 9f0f3f434f
3 changed files with 135 additions and 7 deletions

View file

@ -301,13 +301,13 @@ ErrorOr<int> serenity_main(Main::Arguments arguments)
} else if (tag_data->type() == Gfx::ICC::SignatureTagData::Type) {
auto& signature = static_cast<Gfx::ICC::SignatureTagData&>(*tag_data);
// FIXME: For colorimetricIntentImageStateTag, interpret signature according to ICC v4 Table 26
// FIXME: For perceptualRenderingIntentGamutTag, interpret signature according to ICC v4 Table 27
// FIXME: For saturationRenderingIntentGamutTag, interpret signature according to ICC v4 Table 28
// FIXME: For technologyTag, interpret signature according to ICC v4 Table 29
outln(" signature: '{:c}{:c}{:c}{:c}' / 0x{:08x}",
signature.signature() >> 24, (signature.signature() >> 16) & 0xff, (signature.signature() >> 8) & 0xff, signature.signature() & 0xff,
signature.signature());
if (auto name = signature.name_for_tag(tag_signature); name.has_value()) {
outln(" signature: {}", name.value());
} else {
outln(" signature: Unknown ('{:c}{:c}{:c}{:c}' / 0x{:08x})",
signature.signature() >> 24, (signature.signature() >> 16) & 0xff, (signature.signature() >> 8) & 0xff, signature.signature() & 0xff,
signature.signature());
}
} else if (tag_data->type() == Gfx::ICC::TextDescriptionTagData::Type) {
auto& text_description = static_cast<Gfx::ICC::TextDescriptionTagData&>(*tag_data);
outln(" ascii: \"{}\"", text_description.ascii_description());