Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 色盲WPF拼写检查_C#_Wpf_Controls_Spell Checking_Color Blindness - Fatal编程技术网

C# 色盲WPF拼写检查

C# 色盲WPF拼写检查,c#,wpf,controls,spell-checking,color-blindness,C#,Wpf,Controls,Spell Checking,Color Blindness,是否有任何方法可以使用默认的WPF拼写检查器在文本框控件中的拼写错误的单词上以不同于红色(例如,黄色)的颜色扭曲下划线 这对于我们的业务应用程序来说是一个非常重要的特性,因为许多使用它的人都是色盲 我搜索了stackoverflow、MSDN文档和许多其他来源,但没有成功。最后,我下载了一些符号并搜索下划线是如何绘制的,但我什么也找不到。任何帮助都将不胜感激。我认为这种方法使用了一些自定义的效果,这种效果会将一些特定的颜色转换成其他颜色。在这种情况下,他们对红色视而不见,所以将红色(不仅仅是红色

是否有任何方法可以使用默认的WPF拼写检查器在文本框控件中的拼写错误的单词上以不同于红色(例如,黄色)的颜色扭曲下划线

这对于我们的业务应用程序来说是一个非常重要的特性,因为许多使用它的人都是色盲


我搜索了stackoverflow、MSDN文档和许多其他来源,但没有成功。最后,我下载了一些符号并搜索下划线是如何绘制的,但我什么也找不到。任何帮助都将不胜感激。

我认为这种方法使用了一些自定义的
效果
,这种效果会将一些特定的颜色转换成其他颜色。在这种情况下,他们对红色视而不见,所以将红色(不仅仅是红色波浪下划线,甚至是红色文本)变成黄色。这是有道理的。然而,编写自定义效果并不容易,您必须了解HLSL(高级着色语言)。我想,一旦你知道了这一点,实现这种颜色映射器只是一件小事。对大多数字母来说都非常有用。但是,与弯曲下划线重叠的字母会导致问题,并且不会被着色器约束拾取。这有点依赖于强制用户界面使用某种颜色,我不喜欢。我同意红线实际上并不是完全红色的,尤其是当与一些字母重叠时。但这并不是强迫用户界面使用某种颜色。您在此处应用效果的UI只是您的文本框。如果您的文本框字母、背景或所有内容(文本框内)显示为红色(红色关闭),该怎么办?所有的颜色都应该转换成盲人用户可以看到的其他颜色。这是有道理的(我之前说过)。为了解决字母重叠的问题,你可以尝试使用一些公差,RGB的形式应该满足以下条件:G总是等于B(并且等于从0到大约90的一个低值),而R通常比G和B大150左右。例如:当G和B约为0时,R约为159,当G和B约为90时,R约为240或更多。。。所以这是相当可行的。最后,我不认为有什么简单的方法可以解决这个问题,这是一种硬编码的特性。除非你想实现你自己的拼写检查。