summaryrefslogtreecommitdiff
path: root/vendor/png/src/srgb.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/png/src/srgb.rs')
-rw-r--r--vendor/png/src/srgb.rs30
1 files changed, 30 insertions, 0 deletions
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),
+ ),
+ }
+}