Chrome 渲染器仿真后如何更改元素的颜色?

How do you get changed color of element after Chrome renderer emulation?

Chrome 为他们的渲染器(在开发工具中)引入了一个选项来模拟色盲等视力缺陷。但是,这些 'filters' 不会更改 CSS 或我可以通过 JavaScript.

访问的计算样式

在 Chrome 中应用视觉缺陷滤镜(例如 Tritanopia)后,有没有办法以编程方式获取元素和文本的渲染颜色?

Link 到 Chrome 此功能的开发人员更新:DevTools 中的新功能 (Chrome 83)

我试过:

不使用 Chrome 开发工具或任何当前的颜色选择器插件。过滤器似乎完全单独应用于任何暴露的值并应用于页面顶部(最简单的查看方式是从菜单中选择 select“模糊视觉”,您会看到任何插件也收到同样的模糊效果)。

快速而肮脏的方式(不是以编程方式)

您最好的选择是使用 colour contrast analyser from paciello group 或浏览器外部存在的类似软件,并在应用滤镜后获取实际像素颜色值。

显然我知道这不是以编程方式进行的。

以编程方式

您可以自己构建一些东西。

您可能会发现 this page on colour blindness simulation in JS 非常有用,因为它解释了如何对 RGB 颜色进行变换以模拟色盲。然后你需要做的就是创建一个颜色选择器覆盖(或者你可以输入十六进制值并获得相应颜色的东西)。

另一种方法可能是添加 SVG colour filter that simulates colour blindness to the page and then just use a normal colour picker plugin.

也许添加对此功能的请求,因为它会让生活更轻松!