Page 1 of 1

GoldenDict + Opera, OpenOffice, etc. под Windows

PostPosted: Mon May 04, 2009 9:40 am
by edio
GoldenDict под Windows, как и многие другие словари, не переводит слово под курсором из браузера Opera выше некоторой версии (предположительно 9.5), пакета OpenOffice 3.x, слышал, что из браузера Firefox выше некоторой версии и, возможно, из некоторых других программ.

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

Хочу просто обратить внимание автора программы на эту особенность.

З.Ы. Тему умышленно не размещал в разделе об ошибках, т.к. особенность эта совсем некритична (ctrl+ins+ins никто не отменял ;) ). Но некоторые комментарии по этому поводу хотелось бы услышать ;) Возможна ли вообще работа GoldenDict с этими программами в будущем?

Re: GoldenDict + Opera, OpenOffice, etc. под Windows

PostPosted: Mon May 04, 2009 10:39 am
by ikm
Firefox 3 должен работать. Опера: предположительно, с переходом оперы на Qt 4 извлекать слово из неё не получится (потому что там все виджеты используют двойную буферизацию и отрисовывают не текст, а картинку). Но это предположение, на практике я не смотрел. OpenOffice - вообще не пробовал из него слова смотреть, не знаю что там.

О механизме извлечения: этот механизм нетривиален. По сути, программа влезает внутрь программы, которая ответственна за точку под курсором мыши, перехватываются все типовые средства отрисовки текста, и программе затем посылается событие инвалидации некоего прямоугольника под текстом. Программа реагирует на это перерисовкой этого прямоугольника, используя типовые функции вывода текста, которые были перехвачены. После этого мы имеем текст под ним, находим конкретное слово и на этом всё. Разумеется, эта метода не будет работать в любой программе. Чудо, что она вообще довольно сносно работает во многих программах. И да, по этому механизму работают, наверное, все существующие словарные программы с режимом перевода слова под мышкой. Как минимум, Lingvo и Babylon точно так работают.

Re: GoldenDict + Opera, OpenOffice, etc. под Windows

PostPosted: Mon May 04, 2009 5:10 pm
by edio
Спасибо за пояснения. Действительно, механизм "хитрый", из разряда хаков даже.

Re: GoldenDict + Opera, OpenOffice, etc. под Windows

PostPosted: Thu Apr 24, 2014 4:54 pm
by Michael72
Я думаю, что в качестве альтернативы можно также для OpenOffice и Firefox написать специально заточенные для этой задачи расширения.