我写了一个chrome扩展程序 - english dictionary。您选择单词,将出现定义。
效果很好,但我解决了一个问题。似乎谷歌没有提供chrome pdf viewer的api。
当我使用chrome pdf viewer选择pdf中的单词时,如何获得该单词?
如果你能帮助我,我将不胜感激。
答案 0 :(得分:6)
您可以使用context menu获取所选文字。在后台脚本中,添加这些行将允许用户右键单击并使用selectionText执行某些操作。
chrome.contextMenus.create({id:"lookup",title:"Lookup %s",contexts:["selection"]});
chrome.contextMenus.onClicked.addListener(function(sel){
console.log(sel.selectionText);
});
抓取此文本可以正常使用PDF,无论是否是扩展的一部分。
但是,您无法将脚本注入以“chrome-extension://”开头的页面。如果这是你的扩展工作的方式,那将是(直接)可能的。但是获取所选文本,并使用它做一些事情仍然非常可行。
作为要求脚本注入的替代方法,请参阅notification api,它允许弹出一条小消息,其中可能包含该单词的定义。