从图像中精确提取颜色值。获取任何图像的HEX、RGB、HSL和HWB颜色值。
工具功能
- 精确颜色提取: 从图像中精确提取颜色值,支持点击任意位置获取像素级精准的颜色数据。
- 多格式支持: 获取多种颜色格式值(HEX、RGB、HSL、HWB),满足不同场景的使用需求。
- 实时预览: 实时颜色预览和坐标显示,所见即所得,方便设计师精准取色。
- 快速复制: 一键复制功能,使用便捷,快速将颜色值应用到您的设计项目中。
使用方法
- 第一步: 点击"上传图像"或拖放上传图像。
- 第二步: 点击图像上任意位置提取颜色值。
- 第三步: 复制任何颜色格式用于您的项目。
生成原理
图像颜色提取技术
颜色提取器使用Canvas API和ImageData接口从图像中读取像素数据。通过getImageData()方法获取每个像素的RGBA值,然后计算对应的颜色坐标。算法支持多种图像格式(JPG、PNG、GIF、WebP),并能处理大尺寸图像而不会影响浏览器性能。提取过程包括图像加载、像素采样、颜色计算和格式转换等步骤。
颜色空间转换算法
工具实现了RGB、HSL、HWB、HEX等多种颜色空间之间的精确转换。RGB到HSL转换使用三角函数计算色相、饱和度和亮度;RGB到HWB转换通过HSL作为中间步骤;HEX格式通过十六进制字符串表示RGB值。转换算法确保颜色值在有效范围内,并处理边界情况如纯黑、纯白和灰度值。所有转换都保持颜色精度和一致性。
像素坐标映射
当用户点击图像时,工具计算鼠标坐标相对于图像画布的位置,然后映射到实际像素坐标。考虑图像缩放、画布偏移和浏览器缩放因子,确保坐标映射的准确性。通过Canvas的getImageData()方法获取指定坐标的像素RGBA值,支持亚像素精度和抗锯齿处理。坐标系统遵循Canvas标准,原点(0,0)位于左上角。
常见问题
- 颜色选择器是如何工作的?
- 颜色选择器使用 Canvas API 读取图像的像素数据。当您点击图像时,它会提取该坐标处的 RGBA 值,并将其转换为 HEX、RGB、HSL、HWB 等多种颜色格式进行显示。
- 支持哪些图像格式?
- 工具支持所有常见的网络图像格式,包括 JPG、PNG、GIF 和 WebP。您可以通过拖放或点击选择文件来上传图像。
- 如何使用提取的颜色值?
- 提取的颜色值以 HEX、RGB、HSL、HWB 格式显示。点击任何格式即可复制到剪贴板,然后可以直接在 CSS、设计工具或代码中使用。
- 可以同时提取多个颜色吗?
- 您可以一次提取一个颜色。但是,您可以连续点击图像的不同部分来提取多个颜色,并根据需要复制每个颜色。
- 颜色坐标是什么意思?
- 坐标(X, Y)表示您在图像中点击的像素位置。X 是水平位置(左侧为0),Y 是垂直位置(顶部为0),帮助您以后轻松定位相同位置的颜色。
相关文档
- MDN - Canvas API - HTML5 Canvas API 用于图形和可视化
- MDN - SVG 文档 - 可缩放矢量图形文档和教程
- W3C - SVG 规范 - W3C 官方 SVG 规范
- MDN - CSS Color - CSS颜色值和颜色空间
- Web.dev - 图形和视觉效果 - Web图形和动画最佳实践