我有一个小型Java应用程序,它有一个用户输入文本的JTextArea.我想为此组件添加拼写检查功能,类似于Microsoft Word的方式,即拼写错误的单词加下划线,当用户右键单击带下划线的单词时,会显示带有更正的弹出菜单.是否有任何开源库可以将此功能添加到JTextAreas?
我正在寻找一种方法在Rich Edit控件中制作红色波浪形下划线(我使用的是带有Msftedit.dll的4.1版本).我可以使用以下代码生成波浪形下划线:
CHARFORMAT2 format;
format.cbSize = sizeof(format);
format.dwMask = CFM_UNDERLINETYPE;
format.bUnderlineType = CFU_UNDERLINEWAVE;
SendMessage(hWndEdit,EM_SETCHARFORMAT, SCF_SELECTION, (LPARAM)&format);
Run Code Online (Sandbox Code Playgroud)
MSDN文档未指定如何更改下划线的颜色,仅指定文本(带下划线)和文本背景.我发现一些代码表示使用低位半字节用于下划线类型(CFU_UNDERLINEWAVE)而上层用于颜色.所以我试过了:
format.bUnderlineType = CFU_UNDERLINEWAVE | 0x50;
Run Code Online (Sandbox Code Playgroud)
但这不起作用.
UPDATE
我用3.0版本(Riched20.dll)测试了这段代码,它正在运行.所以问题在于4.1.该功能是否已移除或移至其他位置?
它也不适用于版本6(office 2007使用的dll).
这可能是一个很高的订单,但我想找到一个易于实现的拼写检查器组件(我只需要拼写检查一个TextBox).我环顾四周,似乎找不到任何不花钱的东西,或者实施起来并不复杂.我确实找到了NHunspell的包装器,但由于某种原因无法实际显示拼写复选框.
ComponentOne的拼写检查控制非常出色,但当然,由于你不能只购买那个组件,所以需要花费绝对的财富,你必须购买整个套件.我发现的所有其他的似乎都是一样的.
我最喜欢ComponentOne版本,因为所有你必须做的方式引用它,初始化,当你调用它时,你只需告诉它要检查哪个控件.太可爱了.
建议?
我只想稍微使用WPF SpellCheck,但是虽然设置了Attached Property,但我没有任何下划线.
SpellCheck.IsEnabled="True"
Run Code Online (Sandbox Code Playgroud)
如果我没记错的话,SpellCheck也应该向我的ContextMenu添加菜单项,不是吗?这也不会发生......
顺便说一句,我的机器正在运行.Net4.
我是否必须在全球范围内启用此功能?所有教程等等都只提到设置SpellCheck.IsEnabled让你去...
FreeDict,Aspell,Hunspell/OpenOffice Dictionaries的文件结构是否有任何解释文档或教程,特别是关于每个.dic文件中每行末尾的开关?我的猜测是,开关描述了单词的语义解释是否为a
或以上的任何组合.但我不知道如何将这些与开关字符相匹配.
我也很好奇这个.aff文件描述的内容.
dictionary spell-checking openoffice.org hunspell libreoffice
我有超过100个CSV文件,其中有10000行,我正在编制索引.然后查询拼写是类似的拼写.虽然做这个索引非常慢.
我找到了一些很好的解决方案
主从索引和从属用于查询的主从属.如何更快地索引Solr中的记录(而不是影响ColdFusion Web服务器)?两个JVM?
使用Tri-Range http://www.lucidimagination.com/blog/2009/05/13/exploring-lucene-and-solrs-trierange-capabilities/
我知道这两种解决方案不同我想要一些应该优先考虑的评论吗?第二种解决方案是否适合我的问题?如果我的拼写检查问题有更多的解决方案.
提前致谢
如何在Java应用程序中进行拼写检查和/或拼写纠正?
我正在尝试在Heroku(Cedar堆栈)上运行的RoR应用程序中实现Redactor中的拼写检查.
在这个SO问题中概述的答案对我不起作用,因为它需要能够在我的本地服务器上运行PHP,这对于Heroku来说似乎是不可能的.即使我打败了跨源保护,在我的Rails应用程序外部的服务器上运行PHP似乎也不是一个好主意.
截止日期之后似乎是一种可能的解决方案,但After The Deadline gem返回原始拼写检查数据而不会集成到Redactor中.
有没有人能够成功:
如果没有,是否有其他解决方案可以在Heroku的RoR中对Redactor进行拼写检查?
我正在努力在我的应用程序中构建拼写检查功能,该应用程序目前使用MFC的CHtmlEditCtrl控件.
有没有办法在HTML控件上的拼写错误中看到一条"红色波浪线",在我检测到的单词下面是拼写错误?
我能想到的唯一方法是使用实际的HTML来应用这种风格,然后在发送电子邮件时将其删除.这看起来相当混乱,好像用户开始对文本应用下划线样式,他们可能会干扰它.
有没有办法用绘画做到这一点?
提前致谢.
spell-checking ×10
.net ×2
hunspell ×2
java ×2
atom-editor ×1
c ×1
c# ×1
c++ ×1
dictionary ×1
heroku ×1
languagetool ×1
libreoffice ×1
mfc ×1
nlp ×1
performance ×1
php ×1
redactor ×1
richedit ×1
solr ×1
winapi ×1
winforms ×1
wpf ×1