How to convert CMYK to RGB in C++

1 Answer

0 votes
#include <iostream>
#include <cmath>
 
// CMYK = Cyan, Magenta, Yellow, Key(black)
// RGB = Red, Green, Blue
  
struct CMYK {
    double C;
    double M;
    double Y;
    double K;
};
  
struct RGB {
    double R;
    double G;
    double B;
};
  
struct RGB CMYKToRGB(struct CMYK cmyk) {
    struct RGB rgb;
  
    rgb.R = round(255 * (1 - cmyk.C / 100) * (1 - cmyk.K / 100));
    rgb.G = round(255 * (1 - cmyk.M / 100) * (1 - cmyk.K / 100));
    rgb.B = round(255 * (1 - cmyk.Y / 100) * (1 - cmyk.K / 100));
  
    return rgb;
}
  
int main(void)
{
    struct CMYK data = {4.0, 16.0, 100.0, 0.0};
    struct RGB rgb = CMYKToRGB(data);
  
    std::cout << "R = " << rgb.R << " G = " << rgb.G << " B = " << rgb.B;
}
  
  
  
  
/*
run:
  
R = 245 G = 214 B = 0
  
*/

 



answered Jan 30, 2023 by avibootz
edited Jan 31, 2023 by avibootz

Related questions

1 answer 161 views
161 views asked Jan 31, 2023 by avibootz
1 answer 112 views
112 views asked Jan 31, 2023 by avibootz
1 answer 103 views
103 views asked Jan 30, 2023 by avibootz
1 answer 140 views
140 views asked Feb 2, 2023 by avibootz
1 answer 153 views
153 views asked Feb 1, 2023 by avibootz
1 answer 151 views
151 views asked Feb 1, 2023 by avibootz
1 answer 155 views
155 views asked Jan 31, 2023 by avibootz
...