イメージデータをクリップボードにコピーする必要があるXULRunnerアプリケーションがあります。クリップボードへのテキストのコピーを処理する方法を理解しており、クリップボードからPNGデータを貼り付けることができます。私が理解できないことは、他のアプリケーションに貼り付けることができるように、データURLからクリップボードにデータを取得する方法です。XULアプリケーションの画像データをクリップボードにコピーするにはどうすればよいですか?
これは私がテキスト(まあ、XUL)をコピーするために使用するコードです:
var transferObject=Components.classes["@mozilla.org/widget/transferable;1"].
createInstance(Components.interfaces.nsITransferable);
var stringWrapper=Components.classes["@mozilla.org/supports-string;1"].
createInstance(Components.interfaces.nsISupportsString);
var systemClipboard=Components.classes["@mozilla.org/widget/clipboard;1"].
createInstance(Components.interfaces.nsIClipboard);
var objToSerialize=aDOMNode;
transferObject.addDataFlavor("text/xul");
var xmls=new XMLSerializer();
var serializedObj=xmls.serializeToString(objToSerialize);
stringWrapper.data=serializedObj;
transferObject.setTransferData("text/xul",stringWrapper,serializedObj.length*2);
そして、私が言ったように、私は転送しようとしているデータがデータURLとしてPNGです。だから私は上記と同等のものを探しています。私のアプリのデータを貼り付けるためのPaint.NET。
私たちと共有してくれてありがとうJoel! +1 – pc1oad1etter