繁体   English   中英

如何知道 Javascript 中图像文件的实际大小?

[英]How can I know the actual size of Image File in Javascript?

我使用 javascript 开发了一个使用 contenteditable div 的富文本编辑器。 它允许用户拖放和复制粘贴图像。 我保留了 5mb 的文件限制。 场景 1:如果用户使用文件属性将图像拖放到编辑器中,我将显示错误消息。它工作正常。 场景 2:如果用户复制(ctrl+C)图像,它将被转换为剪贴板中的 base64Image。 当我检查 5Mb 文件显示 29MB 的大小时,使用文件阅读器。 我知道文件大小增加是因为 base64 加密我尝试了 atob() 和 btoa() 但仍然没有帮助我怎样才能获得原始文件大小?

代码

function PasteImage(event){           
var items=(event.clipboardData || event.originalEvent.clipboardData).items;         
var blob=items[0].getAsFile();         
console.log(blob.size)--gives 26mb which is formed by base64 encoded.      

}    

我想知道是否有可能获得实际大小的文件。

在更改输入类型文件时,您可以获得文件大小:

喜欢

 <input type="file" id="fileInput" />

    $('#fileInput').on('change', function() {

       alert(this.files[0].size);

    });

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM