Подтвердить что ты не робот

Контроль проверки орфографии .NET?

Есть ли там библиотеки (желательно автономное средство редактирования текста) для .NET, которые имеют возможности проверки орфографии. Я хотел бы добавить типичную красную подчеркивание для пропущенных слов в области редактирования моего приложения.

Изменить: уточнить, это для WinForms

4b9b3361

Ответ 1

Не кратковременный контроль, но: Aspell.Net является компонентом проверки орфографии Free и Open Source.Net. Основанный на проекте GNU Aspell, Aspell.Net является одним из самых мощных многоязычных орфографических движков. API написан на С# и обменивается через С++-оболочку вокруг API-интерфейса Win32 Aspell C API.

Исходный репозиторий sourceforge, февраль 2010 г. (Tahnks, @magnifico).

Май 2012, источник больше не доступен... извините.

Ответ 2

Aspell.Net выглядит неплохо, но, похоже, больше не поддерживается. Я не мог заставить его работать на моей машине.

После поиска в SourceForge я нашел NHunspell, который является .Net-адресом проверки орфографии с OpenOffice.org. Он предоставляет методы проверки орфографии, поиска синонимов и переноса. Он активно поддерживается в это время и поставляется с понятным примером кода.

В проекте собственные слова:

Проверка орфографии, Тезаурус: NHunspell

NHunspell - свободное заклинание с открытым исходным кодом checker для .NET Framework. С# и Код примера Visual Basic доступен для проверки орфографии, переносов и поиск синонимов через тезаурус.

NHunspell основана на Hunspell и приводит проверку орфографии Open Office, перенос и тезаурус на Microsoft®.NET Framework. NHunspell является библиотекой .NET(С#, VB) и обертками родные библиотеки Hunspell, Hyphen и MyThes.

Интегрированные библиотеки используются в OpenOffice и работать с словари, опубликованные на OpenOffice.org. Лицензия

NHunspell лицензируется в соответствии с: GPL/LGPL/MPL. Бесплатное использование в коммерческих приложений разрешено согласно лицензии LGPL и MPL. Ваш коммерческое приложение может связывать против DLL NHunspell.

NHunspell

Ответ 3

NHunspellTextBoxExtender, созданный Уильямом Уиннером. После добавления в проект можно использовать текстовые поля и богатые текстовые поля (любой элемент управления, который наследует TextBoxBase). Исходный код также включен.

http://www.codeproject.com/KB/recipes/NHunspellExtenderProvider.aspx

Ответ 4

Вы не упомянули, было ли это для веб-использования или настольного приложения, но я использовал netSpell в прошлом и имел хороший успех.

Ответ 5

Telerik имеет элемент управления для ASP.NET.

Ответ 6

RapidSpell отлично поработал у меня http://keyoti.com

Ответ 7

****** Приложение Windows - вы можете настроить свой собственный текстовый блок управления, нет необходимости в стороннем программном обеспечении ******

1-Сначала откройте приложение "Свойства" в проводнике решений на вкладке "Приложение", убедитесь, что "целевая структура" установлена ​​в ".Net Framework 4", а не ".Net Framework 4 Client Profile".

2-секунд щелкните правой кнопкой мыши ваше приложение в проводнике решений и выберите "Добавить ссылку...". Выберите вкладку ".NET", затем удерживайте клавишу управления и выберите "WindowsFormsIntegration", "System.Design", "PresentationCore", "PresentationFramework", "WindowsBase", "System.Xaml" и нажмите "OK".

3-Третий щелчок правой кнопкой мыши по вашему приложению в обозревателе решений и выберите "Добавить" → "Класс". Создайте новый класс, который вы можете назвать им как угодно. Откройте код для класса, который вы только что создали, и удалите код, а не файл.

4-Forth скопируйте и вставьте следующий код в только что созданный файл класса.

using System;
using System.ComponentModel;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Forms.Integration;
using System.Windows.Forms.Design;

[Designer(typeof(ControlDesigner))]
class SpellCheckTextbox: ElementHost
{
    private TextBox box;

    public SpellCheckTextbox()
    {
        box = new TextBox();
        base.Child = box;
        box.TextChanged += (sender, e) => OnTextChanged(EventArgs.Empty);
        box.SpellCheck.IsEnabled = true;
        box.VerticalScrollBarVisibility = ScrollBarVisibility.Hidden;
        this.Size = new System.Drawing.Size(100, 200);
    }
    public override string Text
    {
        get { return box.Text; }
        set { box.Text = value; }
    }

    [DefaultValue(true)]
    public bool Multiline
    {
        get { return box.AcceptsReturn; }
        set { box.AcceptsReturn = value; }
    }

    [DefaultValue(false)]
    public bool ScrollBars
    {
        get 
        {
            if (box.VerticalScrollBarVisibility == ScrollBarVisibility.Visible ||
                box.HorizontalScrollBarVisibility == ScrollBarVisibility.Visible)
            {
                return true;
            }
            else 
            {
                return false;
            }

        }
        set 
        {
            if (value)
            {
                box.VerticalScrollBarVisibility = ScrollBarVisibility.Visible;
                box.HorizontalScrollBarVisibility = ScrollBarVisibility.Visible;
            }
            else
            {
                box.VerticalScrollBarVisibility = ScrollBarVisibility.Hidden;
                box.HorizontalScrollBarVisibility = ScrollBarVisibility.Hidden;
            }

        }
    }

    [DefaultValue(false)]
    public bool WordWrap
    {
        get { return box.TextWrapping != TextWrapping.NoWrap; }
        set { box.TextWrapping = value ? TextWrapping.Wrap : TextWrapping.NoWrap; }
    }

    [DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
    public new System.Windows.UIElement Child
    {
        get { return base.Child; }
        set { /* Do nothing to solve a problem with the serializer !! */ }
    }

}

5- Пятый, наконец, последний шаг, скомпилируйте код, а затем перетащите новый элемент управления SpellCheckTextbox, расположенный в верхней части "Toolbox" в виде дизайна на вашу форму.

Ответ 8

Бесплатный инструмент проверки орфографии .NET, основанный на текстовом поле WPF, который можно использовать на стороне клиента или сервера, можно увидеть здесь

Полное раскрытие... написанное вами действительно с некоторой помощью из, конечно:)

Ответ 9

Infragistics имеет контроль проверки орфографии, которые могут выполнять проверку орфографии на любом элементе управления. Я не использовал его сам, но вы можете скачать пробную версию бесплатно.

Ответ 10

Компонент One предоставляет компонент, который делает это, но только по мере ввода. Я использую его и очень быстро.

Смотрите здесь для получения дополнительной информации

Ответ 11

FCKEditor - хороший текстовый редактор (на основе Интернета). Он имеет возможности проверки правописания.