Проверка правописания с помощью Ворда
От: magedon  
Дата: 07.05.08 15:56
Оценка:
Доброе время суток.

Я подключаюсь к Ворду и использую его в качестве редактора в своем приложении. Заменил его попап своим, но хочу использовать проверку правописания. Работает, но есть один ньюанс — когда текст многоязычный (русский и английский) не могу получить вариантов (suggestions) для английского слова.
Вот функция которой я получаю список вариантов:



function TWordEditor.GetSpellingSuggestions(AWord: WideString): TTntStringList;
var
 ss: Variant;
 i: integer;
begin
 Result := nil;
 if AWord <> '' then
 begin
   try
     ss := FApplication.GetSpellingSuggestions(AWord);
     if ss.Count > 0 then
     begin
       Result := TTntStringList.Create;
       for i := 1 to ss.Count do
          Result.Add(ss.Item(i).Name);
     end;
   except
     if Assigned(Result) then
       FreeAndNil(Result);
   end;
 end;
end;




Например есть два неправельных слова Масква foood
Если передаать в эту функция Масква она ворвратит Москва b маска
Но если передать сюда foood то получим nil на выходе.
Хотя если оставить офисное попап меню то оно выдает варианты и для английского слова.

Вопрос как вызвать FApplication.GetSpellingSuggestions чтобы он использовал все словари и выдавал варианты для всех языков?

Спасибо.
Re: Проверка правописания с помощью Ворда
От: filkov СССР  
Дата: 08.05.08 05:40
Оценка:
Здравствуйте, magedon, Вы писали:

M>Хотя если оставить офисное попап меню то оно выдает варианты и для английского слова.

M>Вопрос как вызвать FApplication.GetSpellingSuggestions чтобы он использовал все словари и выдавал варианты для всех языков?

Оффисное меню по-видимому откуда-то знает про все доступные CustomDictionary
А иначе используется один главный Dictionary, у Вас это Русский.
Попробуйте явно задать параметры GetSpellingSuggestions:

[In, Optional] ref object CustomDictionary,
[In, Optional] ref object CustomDictionary2,
...
[In, Optional] ref object CustomDictionary10
Санкционный Смотритель.
Re[2]: Проверка правописания с помощью Ворда
От: magedon  
Дата: 12.05.08 15:15
Оценка:
Здравствуйте, filkov, Вы писали:

F>Попробуйте явно задать параметры GetSpellingSuggestions:


F>[In, Optional] ref object CustomDictionary,

F>[In, Optional] ref object CustomDictionary2,
F>...
F>[In, Optional] ref object CustomDictionary10

А где взять эти значения? Я что-то не нашел что туда передавать.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.