所以我试图理解Google Chrome 中的pasteAPI copy。我也不明白。
从复制开始,您可能需要使用 javascript在剪贴板中添加一些内容。我正在处理图像(实际上字符串效果很好1):
//Get DataTransferItemList
var files = items.items;
if(files) {
console.log(files);
//Create blob from canvas
var blob = Blob.fromDataURL(_this.editor.selection.getSelectedImage().toDataURL("image/png"));
var file;
try {
//Try to create file from blob, which may fail
file = new File([blob], "image.png", {type:"image/png"});
}
catch(e) {
return false;
}
if(file) {
//I think this should clear previous data from clipboard
files.clear();
//Add a file as image/png
files.add(file, "image/png");
}
//console.log(files.add(file));
}
Run Code Online (Sandbox Code Playgroud)
问题是,我真的不知道该add方法是如何工作的。我找到了 …
如何将通过 WebSocket 二进制消息接收到的 blob 转换为 Float32Array(或其他类型化数组:Uint32、Uint16 等)。
我尝试使用 FileReader,但“结果”需要很长时间才能可用。结果必须在下一个接收到的 WebSocket 消息中可用。
如果我可以让 WebSocket 接收 ArrayBuffer 而不是 Blob,那就行了。我怎样才能做到这一点?