如何将透明度信息添加到 HEX 颜色代码?

新手上路,请多包涵

我必须修改一些代码,之前的开发人员留下了这条评论:

 color: color, // e.g. '#RRGGBBFF' - Last 2 digits are alpha information

页面上有一个颜色选择器,让用户可以更改文本颜色。它给出像这样的 HEX 值:

 #RRGGBB

还有一个滑块允许用户更改文本的透明度。它从 0.1 运行到 1

我需要以某种方式从这个透明度数量中获取一个 2 位数字的字母并将其附加到 HEX 值以使其工作。

有谁知道如何将 Alpha 信息附加到 HEX 颜色代码?它的数学公式是什么?

如果有人知道如何将具有透明度的 RGBA 颜色值转换为 HEX,我想这个问题也可以得到回答:

 rgba(255, 255, 255, 0.6)

原文由 user967451 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 664
1 个回答

是个不错的功能

function addAlpha(color, opacity) {
    // coerce values so ti is between 0 and 1.
    var _opacity = Math.round(Math.min(Math.max(opacity || 1, 0), 1) * 255);
    return color + _opacity.toString(16).toUpperCase();
}
addAlpha('FF0000', 1); // returns 'FF0000FF'
addAlpha('FF0000', 0.5); // returns 'FF000080'

原文由 user956584 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题