在我的Firefox扩展程序中,首选项窗口在Firefox 2.0之后显然已经破坏,并且(部分)问题出现在以下行中:
var fontList = Components.classes["@mozilla.org/gfx/fontlist;1"].
createInstance(Components.interfaces.nsIFontList);
带有
的错误Error: Components.classes['@mozilla.org/gfx/fontlist;1'] is undefined
有些挖掘表明fontlist实际上是nsIFontEnumerator(https://bugzilla.mozilla.org/show_bug.cgi?id=397813)的包装器,但是我找不到任何关于如何使用nsIFontEnumerator的东西。
Stackoverflow本身只有一个问题涉及到这个主题,这个问题没有答案:How to discover Font Type?
答案 0 :(得分:4)
您所引用的界面在当前的Firefox版本中不再存在。但是存在的是nsIFontEnumerator
:
var enumerator = Components.classes["@mozilla.org/gfx/fontenumerator;1"]
.getService(Components.interfaces.nsIFontEnumerator);
var fonts = enumerator.EnumerateAllFonts({});
似乎没有在MDC上记录,因此http://www.oxymoronical.com/experiments/apidocs/interface/nsIFontEnumerator是您可以获得的最佳参考。