using System.Collections;
using System.Collections.Generic;
using System.Globalization;
using UnityEngine;public enum ColorType
{RGB,RGBA
}public class ColorAlgorithmConversion : MonoBehaviour {private const string hexRegex = "^#?(?:[0-9a-fA-F]{3,4}){1,2}$";//color转Hexpublic static string ColorToHex(Color32 color, ColorType colorType){long num = 0;string hexStr = "";if (colorType == ColorType.RRGGBB){num = 0xFFFFFF & (ColorRGBAToInt(color) >> 8);hexStr = "#" + num.ToString("X6");}else{num = 0xFFFFFFFF & (ColorRGBAToInt(color));hexStr = "#" + num.ToString("X8");}return hexStr;}static public int ColorRGBAToInt(Color c){int retVal = 0;retVal |= Mathf.RoundToInt(c.r * 255f) << 24;retVal |= Mathf.RoundToInt(c.g * 255f) << 16;retVal |= Mathf.RoundToInt(c.b * 255f) << 8;retVal |= Mathf.RoundToInt(c.a * 255f);return retVal;}//Hex转Colorpublic static void HexToColor(string hex, out Color32 color, ColorType colorType){// Check if this is a valid hex string (# is optional)color = Color.black;if (System.Text.RegularExpressions.Regex.IsMatch(hex, hexRegex)){int startIndex = hex.StartsWith("#") ? 1 : 0;          if (colorType == ColorType.RGBA) {color = new Color32(byte.Parse(hex.Substring(startIndex, 2), NumberStyles.AllowHexSpecifier),byte.Parse(hex.Substring(startIndex + 2, 2), NumberStyles.AllowHexSpecifier),byte.Parse(hex.Substring(startIndex + 4, 2), NumberStyles.AllowHexSpecifier),byte.Parse(hex.Substring(startIndex + 6, 2), NumberStyles.AllowHexSpecifier));}else if (colorType == ColorType.RGB) {color = new Color32(byte.Parse(hex.Substring(startIndex, 2), NumberStyles.AllowHexSpecifier),byte.Parse(hex.Substring(startIndex + 2, 2), NumberStyles.AllowHexSpecifier),byte.Parse(hex.Substring(startIndex + 4, 2), NumberStyles.AllowHexSpecifier),255);}          }      }
}

Unity Hex与Color之间进行颜色转换相关推荐

  1. js实现颜色转换hex转rgba

    js实现颜色转换 一.hex转rgba const hex2Rgba = (bgColor, alpha = 1) => {let color = bgColor.slice(1); // 去掉 ...

  2. [JS] HEX颜色转换成RGBA

    写了一个函数,可以把hex格式的颜色转为rgba的格式 实际上不是颜色转换,主要是slice()函数的使用吧,当成字符串理解就好. function change(hex) {if (hex.leng ...

  3. 使用Python和OpenCV在图像之间执行超快速的颜色转换

    使用Python和OpenCV在图像之间执行超快速的颜色转换 1. 效果图 2. 原理 2.1 颜色转移算法 2.2 步骤 2.3 算法改进 3. 源码 参考 这篇博客将介绍如何使用Python和Op ...

  4. html color 转换,Color颜色转换的三种方式(c#)

    Color颜色转换 1.在.net中如何把一个色名称转换成HTML色? System.Drawing.Color color = System.Drawing.Color.White; string ...

  5. 颜色转换,rgb与int颜色数值之间相互转换

    项目中碰到需要将js页面获取的背景颜色转换成int类型的数值,然后存入数据库,百度了一些,发现没有合适的,所以就自己写了一个,需要的可以参考 // int转rgb function converArg ...

  6. colorFormat颜色转换插件

    介绍 colorFormat.js是将颜色值转换为你需要格式的JavaScript库,现在仅支持浏览器支持的HEX/RGB/RGBA/HSL/HSLA等5种格式,任意格式之间互相转换. GitHub地 ...

  7. js中RGB与十六进制颜色转换

    一.关于颜色的表示 颜色的表示方式不知一种,从photoshop的取色面板就可以看出,如下: 上图共显示了5种颜色的表示方法:HSB,lab,RGB,CMYK与十六进制表示法 在CSS中,我们也经常与 ...

  8. c语言中用rgb改颜色字体,C语言颜色转换宏

    C语言颜色转换宏 #define COLOR_BPP16_RGB555 /* Win RGB */ #define COLOR_RGB(r,g,b) ((COLORREF)(((BYTE)(r)|(( ...

  9. Flutter 十六进制颜色转换

    详细使用可参考简书 Flutter颜色(Color)使用和十六进制颜色转换,这里只提供十六进制封装方法 class ColorsUtil {/// 十六进制颜色,/// hex, 十六进制值,例如:0 ...

  10. Unity的gamma矫正、颜色空间及其转换的问题

    Unity的gamma矫正.颜色空间及其转换的问题 1,伽马矫正 2,unity的颜色空间 2.1两种颜色空间流程 2.2pbr贴图格式 2.3手动完成空间切换 2.4升级URP后亮度不一致问题的问题 ...

最新文章

  1. 图解:电商支付架构设计
  2. Js获取宽高度的归纳总结
  3. SunPower光伏组件出货量提高
  4. Maven使用原型插件来创建项目
  5. python cookbook 中文第四版_Python Cookbook (4)
  6. C# does not contain a constructor that takes no parameter
  7. C++ 面向对象(二)多态 : 虚函数、多态原理、抽象类、虚函数表、继承与虚函数表
  8. matlab如何用代码导入文件_20+行Matlab代码实现文件扫描
  9. Soft Skill
  10. Linux开机报write same failed manually zeroing错误
  11. Python 多线程7-线程通信
  12. java中BOM是什么_Java处理带BOM的文本情况是什么?
  13. 基因表达矩阵中排除表达量低的样本和基因
  14. android hdmi拔插广播,拒绝频繁拔插:绿联 HDMI切换器 晒单
  15. 输出字符表情c语言,Objective-C读取十六进制代码并输出表情符号
  16. 保险经纪人是什么鬼?
  17. Atheros CSI Tool环境搭建之路由器配置记录---2022/03/22
  18. 腾讯社交类业务背后的自动化运维平台
  19. A100 GPU服务器安装CUDA教程
  20. VMware16pro虚拟机的安装

热门文章

  1. __kindof用法
  2. Unity TextMesh Pro标记
  3. TCP SYNCookie机制
  4. OJ 1038 宋小胖买切糕
  5. 版权符号©的输入方法
  6. JS对象(对象的创建、属性的增删改查、属性的检测和枚举)
  7. 内网创建https网站的SSL证书、代码签名证书
  8. 网线/双绞线相关知识
  9. 第九章——有ISI和AWGN信道的最佳接收机
  10. 如果批评《说好不哭》不自由,则赞美周杰伦无意义