0

nsIAccessibleText XPCOM インターフェイスで getCharacterExtents() メソッドを使用しようとしています。残念ながら、このインターフェイスを照会する方法に関するドキュメントは入手できません。

let accessibleService  = Components.classes["@mozilla.org/accessibilityService;1"].createInstance(),
    nsIAccessibilityService = accessibleService.QueryInterface(Components.interfaces.nsIAccessibilityService);

明らかにこれは失敗します。nsIAccessibleTextインターフェイスを照会してメソッドを使用するにはどうすればよいgetCharacterExtentsですか?

これに関する MDN ドキュメントは次のとおりです: https://developer.mozilla.org/en-US/docs/XPCOM_Interface_Reference/nsIAccessibleText

4

1 に答える 1

0

わかりました、頭をぶつけた後、なんとかこれを機能させることができました。IRC の Victor Porof や他の mozillian の助けを借りました。

let accService = Components.classes["@mozilla.org/accessibleRetrieval;1"].createInstance(Components.interfaces.nsIAccessibleRetrieval),
acc = accService.getAccessibleFor(aNode),
nsIAccessibleText = acc.QueryInterface(Components.interfaces.nsIAccessibleText)
// aNode is a DOM node in pres shell 0

これが誰かに役立つことを願っています。

于 2013-05-16T09:19:11.087 に答える