文件数据转换
1|0Blob URL (Object URL)
是前缀为 blob:
的 URL, 用来表示关联的Blob
对象,这个 URL 的生命周期和创建它的窗口的 document 绑定。
可在浏览器地址栏、img
标签src
、iframe
标签src
、a
标签href
中使用,并展示相应的文件内容视图。常配合a
标签download
属性实现文件下载。
2|0Base64
base64
是一种基于64个可打印字符来表示二进制数据的方法。
2|1优点
- 方便数据的传输和读写。
2|2方法
atob
: 解码一个 Base64 字符串。btoa
: 将一个字符串或者二进制数据编码一个 Base64 字符串。
3|0Data URL
是前缀为 data:[MIME type];base64,
的 URL, 将文件内容转换为 base64
字符串存储于 URL
中。
可在浏览器地址栏、img
标签src
、iframe
标签src
、a
标签href
、css
的 background-image-url
中使用,并展示相应的文件内容视图。
3|1缺点
base64
编码的体积通常为原数据体积的4/3。DataURL
的图片不会被浏览器缓存,意味每次访问都被下载一次。DataURL
在渲染时比不使用多消耗53%左右的CPU资源,内存多出4倍左右,耗时平均高出24.6倍[^1]。
4|0Image对象相关使用
5|0canvas相关方法
drawImage
: 可传入Image
对象并绘制。putImageData
: 传入ImageData
对象并绘制。getImageData
: 图像数据化,返回ImageData
对象。toDataURL
: 图像数据化,返回DataURL
字符串。toBlob
: 图像数据化,返回Blob
对象。
6|0数据转换
6|1ArrayBuffer → Blob
6|2ArrayBuffer → base64
6|3base64 → Blob
6|4Blob → ArrayBuffer
6|5Blob → base64
6|6Blob → Object URL
6|7Blob → File
6|8File → Blob
__EOF__

本文作者:Odyssey
本文链接:https://www.cnblogs.com/qingzhao/p/17135504.html
关于博主:I am a good person
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
本文链接:https://www.cnblogs.com/qingzhao/p/17135504.html
关于博主:I am a good person
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET10 - 预览版1新功能体验(一)