我有一个DataURL从画布显示我的网络摄像头.我把这个dataURL变成一个blob,使用Matt的答案: How to convert dataURL to file object in javascript?

如何将此Blob转换回同一个DataURL?我花了一天研究这个,我很惊讶,这没有更好的记录,除非我是盲人的.

编辑:

var urlCreator = window.URL || window.webkitURL; 
var imageUrl = urlCreator.createObjectURL(blob);

但它只返回一个真正简短的URL,似乎指向本地文件,但是我需要通过网络发送网络摄像头数据.

解决方法

使用我的代码在javascript中的dataURL和blob对象之间进行转换. (优于链接中的代码)
//**dataURL to blob**
function dataURLtoBlob(dataurl) {
    var arr = dataurl.split(','),mime = arr[0].match(/:(.*?);/)[1],bstr = atob(arr[1]),n = bstr.length,u8arr = new Uint8Array(n);
    while(n--){
        u8arr[n] = bstr.charCodeAt(n);
    }
    return new Blob([u8arr],{type:mime});
}

//**blob to dataURL**
function blobToDataURL(blob,callback) {
    var a = new FileReader();
    a.onload = function(e) {callback(e.target.result);}
    a.readAsDataURL(blob);
}

//test:
var blob = dataURLtoBlob('data:text/plain;base64,YWFhYWFhYQ==');
blobToDataURL(blob,function(dataurl){
    console.log(dataurl);
});

HTML5 / Javascript – DataURL到Blob和Blob到DataURL的更多相关文章

  1. 浅析HTML5中的download属性使用

    这篇文章主要介绍了浅析HTML5中的download属性使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

  2. HTML5 Blob 实现文件下载功能的示例代码

    这篇文章主要介绍了HTML5 Blob 实现文件下载功能的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

  3. web字体加载方案优化小结

    这篇文章主要介绍了web字体加载方案优化小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

  4. 在iOS(iPhone / iPad / iPod)上查找所有注册的mime-types / url方案协议(intent filters)

    我是移动网络开发人员,我想测试一些iOS设备,以查看iOS设备可以接受的MIME类型和网址计划.在Android上,我可以安装一个名为PackageExplorer的应用程序,该应用程序列出了所有apks的所有“intentfilters”,并列出了什么文件mime-types(image/png,text/html,text/x-vcard)和url方案像geo:,tel:,sms:,mailt

  5. Swift - SQLite中Data类型数据的插入、读取BLOB类型字段

    本文演示如何实现Data类型的数据存取。1,实现原理首先我们建表的时候,用于保存Data数据的字段要使用大数据类型,比如:BLOB读取操作同其他数据类型的读取没什么差别。不过插入的时候要注意,不能直接将数据拼接到sql语句中,而是要使用预处理语句:12letsql="insertintot_imagevalues(?表字段很简单,就一个ID主键,和一个BLOB类型的字段点击“保存”按钮,将项目中的0.png这张图片存储到图片表中。Data//将Data数据插入到数据库"insertintot_imagev

  6. Android中目录的MIME类型

    我想知道我是否可以启动一个Intent来查看带有文件浏览器的目录(如果设备上安装了一个),那么我可以打开这样的文件夹:解决方法AndExplorer有供应商mime类型使用AndExplorer作为文件选择器:>vnd.android.cursor.dir/lysesoft.andexplorer.director>vnd.android.cursor.dir/lysesoft.andexplor

  7. 我的应用程序不会出现在android.intent.action.VIEW的选择器对话框中,仅在Marshmallow上使用mime type video / *

    基本上,当一个应用程序共享一个视频网址时,我的应用程序应该显示在列表中,但事实并非如此.MXPlayer和谷歌照片媒体播放器都没有显示好和全播(最近有一个版本来解决这个问题).我写了一个快速的应用来测试这个问题,这是我的清单过滤器:这是重现问题的代码:这只是棉花糖的一个问题.编辑:我应该补充一点,并非所有棉花糖设备都这样做.我第一次听说它时花了很长时间才重现它,有一天它刚刚开始在我的Nexus5上

  8. MvvmCross:从android中的MvxListView获取所选项目的最佳方法是什么?

    我正在使用MvvmCrossv3.06,我在android中定义了一个绑定到列表的MvxListView.我可以看到列表,但无法确定获取单击它时所选项目的最佳方法.目前我在活动的OnCreate中执行以下操作,但它不是特别是MVVM,我想知道是否有更好的方法通过绑定?

  9. Android:如果我想从Downloads文件夹中查看/选择一个SQLite数据库,那么mime类型是什么?

    我正在使用sqlite数据库编写应用程序.我已经编写了备份我的sqlite数据库的代码.我现在希望能够从这样的副本中恢复我的应用程序数据库.我正在使用Android设备“打开”对话框.如果我在列表中使用其他内容提供商,我会看到该文件,例如“蓝牙文件传输”!

  10. android – 如何向联系人添加新字段?

    我要添加一个自定义字段到ContactsContract内容提供程序.我正在尝试构建一个Voip应用程序,并希望添加一个SIP地址字段.我需要与什么MIME类型相关联?如果有人能给我一个例子会很棒.解决方法你必须为这些创建你自己的mime类型.这是一个例子,将一个布尔值作为我的自定义MIME类型保存到联系人.它使用最新的SDK2.1

随机推荐

  1. 微信小程序canvas实现水平、垂直居中效果

    这篇文章主要介绍了小程序中canvas实现水平、垂直居中效果,本文图文实例代码相结合给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

  2. 使用HTML5做的导航条详细步骤

    这篇文章主要介绍了用HTML5做的导航条详细步骤,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  3. H5最强接口之canvas实现动态图形功能

    这篇文章主要介绍了H5最强接口之canvas实现动态图形功能,需要的朋友可以参考下

  4. Canvas高级路径操作之拖拽对象的实现

    这篇文章主要介绍了Canvas高级路径操作之拖拽对象的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

  5. html5视频自动横过来自适应页面且点击播放功能的实现

    这篇文章主要介绍了h5视频自动横过来自适应页面且点击播放,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

  6. 详解HTML5中的picture元素响应式处理图片

    这篇文章主要介绍了详解HTML5中的picture元素响应式处理图片,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  7. canvas像素点操作之视频绿幕抠图

    这篇文章主要介绍了canvas像素点操作之视频绿幕抠图的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  8. html5利用canvas实现颜色容差抠图功能

    这篇文章主要介绍了html5利用canvas实现颜色容差抠图功能,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下

  9. canvas绘制视频封面的方法

    这篇文章主要介绍了canvas绘制视频封面的方法的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

  10. HTML5拖拽功能实现的拼图游戏

    本文通过实例代码给大家介绍了HTML5拖拽功能实现的拼图游戏,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧

返回
顶部