c/c++实现rgb转16色

源码工厂 课程设计 1

如果已知rgb值,能否根据他们转成16色呢?(PS∶不是转换成十六进制)

回复

共2条回复 我来回复
  • 源码驿站
    这个人很懒,什么都没有留下~
    评论
    #include <sstream>
    /**
     * Transform RGB value to hex.
     */ 
    std::string rgb2hex(int r, int g, int b, bool with_head = false);
    std::string rgb2hex(int r, int g, int b, bool with_head)
    {
        std::stringstream ss;
        if (with_head)
            ss << "#";
        ss << std::hex << (r << 16 | g << 8 | b);
        return ss.str();
    

    测试结果:

    0条评论
  • 毕业设计驿站
    这个人很懒,什么都没有留下~
    评论
    unsigned short convert_rgb_to_16_bit(unsigned char red, unsigned char green, unsigned char blue)
    {
        return (red << 11) + (green << 5) + blue;
    }
    
    0条评论

发表回复

登录后才能评论