From 1b6a04ca5504955c571d1c97504fb45ea0befee4 Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Mon, 8 Jan 2024 01:21:28 +0400 Subject: Initial vendor packages Signed-off-by: Valentin Popov --- vendor/png/src/srgb.rs | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 vendor/png/src/srgb.rs (limited to 'vendor/png/src/srgb.rs') diff --git a/vendor/png/src/srgb.rs b/vendor/png/src/srgb.rs new file mode 100644 index 0000000..2780e42 --- /dev/null +++ b/vendor/png/src/srgb.rs @@ -0,0 +1,30 @@ +use crate::{ScaledFloat, SourceChromaticities}; + +/// Get the gamma that should be substituted for images conforming to the sRGB color space. +pub fn substitute_gamma() -> ScaledFloat { + // Value taken from https://www.w3.org/TR/2003/REC-PNG-20031110/#11sRGB + ScaledFloat::from_scaled(45455) +} + +/// Get the chromaticities that should be substituted for images conforming to the sRGB color space. +pub fn substitute_chromaticities() -> SourceChromaticities { + // Values taken from https://www.w3.org/TR/2003/REC-PNG-20031110/#11sRGB + SourceChromaticities { + white: ( + ScaledFloat::from_scaled(31270), + ScaledFloat::from_scaled(32900), + ), + red: ( + ScaledFloat::from_scaled(64000), + ScaledFloat::from_scaled(33000), + ), + green: ( + ScaledFloat::from_scaled(30000), + ScaledFloat::from_scaled(60000), + ), + blue: ( + ScaledFloat::from_scaled(15000), + ScaledFloat::from_scaled(6000), + ), + } +} -- cgit v1.2.3