【发布时间】:2013-04-05 05:44:36
【问题描述】:
我正在用 JS 构建一个 xpcom 组件。 我在JS中得到了剪贴板数据,当数据类型为image/png时,我想得到它的base64字符串,我的代码是:
......
trans.addDataFlavor('image/png');
clipboard.getData(trans, Services.clipboard.kGlobalClipboard);
trans.getTransferData('image/png', str, strLength);
let mw = Services.wm.getMostRecentWindow("navigator:browser");
data.data = str.value.QueryInterface(Ci.nsISupportsCString).data;
data.data = mw.btoa(data.data);
...
我可以在Linux下得到base64字符串,但是当我在windows中运行我的代码时,我得到了一个错误: NS_NOINTERFACE:组件返回失败代码:0x80004002 (NS_NOINTERFACE) [nsISupports.QueryInterface]
data.data = str.value.QueryInterface(Ci.nsISupportsCString).data; 不知道怎么在我的xpcom组件中获取图片数据的base64字符串,谁能给我答案?
【问题讨论】:
标签: javascript xpcom