我正在开发一个富文本编辑器的JavaScript库。目前,由于剪贴板是本地文件而我们无法从Word文档copy + paste
,并且大多数浏览器阻止读取本地文件的能力。我们解决此问题的方法是将本地映像文件转换为base-64,并使用我们的本地API将映像存储在我们的服务器上,以便img具有适当的托管源。
问题是这必须完全用JavaScript处理,它仍然在浏览器中运行,我看不到本地文件能够转换它们:
这是我正在尝试使用的代码,但似乎无法找到一种完全在JavaScript中处理此代码的方法,而无需使用HTML中的文件加载器。
function convertToBase64(){
var xhr = new XMLHttpRequest();
// Set up our request
xhr.open('POST', 'http://uploadFileHere');
//convert image to base64
xhr.onload = function() {
var reader = new FileReader();
reader.onloadend = function() {
callback(reader.result);
}
reader.readAsDataURL(xhr.response);
};
//handle the response from Image API
xhr.onreadystatechange = function() {
if(xhr.readyState == XMLHttpRequest.DONE && xhr.status == 200) {
return xhr.responseText;
}
}
xhr.send(base64String);
}
是否可以解决这个问题,或者我和我的团队是否必须提出另一种解决方案?
编辑:这是另一个富文本编辑器,可以从Word Froala复制和粘贴图像。如果这是不可能的,他们是如何做到的?