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

Как расширение получает текст, выбранный в chrome pdf viewer?

Я написал расширение chrome - английский словарь. Вы выбираете слово, появляется определение.

Он работает хорошо, но я противодействую проблеме. Кажется, нет api hrom pdf viewer, предоставленного google.

Как я могу получить слово, когда я выбираю слово в pdf, используя просмотр хром pdf?

Буду признателен, если вы могли бы мне помочь.

enter image description here

4b9b3361

Ответ 1

Вы можете получить выделенный текст в контекстном меню. В фоновом режиме script добавление этих строк позволит пользователю щелкнуть правой кнопкой мыши и сделать что-то с помощью selectionText.

chrome.contextMenus.create({id:"lookup",title:"Lookup %s",contexts:["selection"]});
chrome.contextMenus.onClicked.addListener(function(sel){
       console.log(sel.selectionText);
});

Схват этого текста отлично работает с PDF файлами, независимо от того, является ли часть расширения или нет.

Однако вы не можете ввести script в страницу, начинающуюся с "chrome-extension://". Если это так, как работает ваше расширение, это невозможно (напрямую). Но получение выделенного текста и выполнение чего-то с ним по-прежнему очень выполнимы.

Как альтернатива требованию script инъекции, см. уведомление api, которое позволяет всплывать небольшое сообщение, которое может содержать определение слова.