如何使用JS将音频文件如何转换成base格式的

发布网友 发布时间:2022-04-22 17:37

我来回答

2个回答

懂视网 时间:2022-05-15 01:26

这篇文章主要介绍了Javascript将图片的绝对路径转换为base编码的方法,现在分享给大家,也给大家做个参考。

我们可以使用canvas.toDataURL的方法将图片的绝对路径转换为base编码;在这我们引用的是淘宝首页一张图片如下:

var img = "https://img.alicdn.com/bao/uploaded/TB1qimQIpXXXXXbXFXXSutbFXXX.jpg";

我们如下编写代码:

function getBaseImage(img) {
 var canvas = document.createElement("canvas");
 canvas.width = img.width;
 canvas.height = img.height;
 var ctx = canvas.getContext("2d");
 ctx.drawImage(img, 0, 0, img.width, img.height);
 var ext = img.src.substring(img.src.lastIndexOf(".")+1).toLowerCase();
 var dataURL = canvas.toDataURL("image/"+ext);
 return dataURL;
}
var img = "https://img.alicdn.com/bao/uploaded/TB1qimQIpXXXXXbXFXXSutbFXXX.jpg";
var image = new Image();
image.src = img;
image.onload = function(){
 var base = getBaseImage(image);
 console.log(base);
}

chrome 运行如下所示:

通过搜索明白,我们使用的是淘宝服务器上的一张图片,在本地服务器下访问,结果出现图片跨域的问题;为止,我们可以把图片放在本地服务器下即可解决上面的跨域问题;比如我现在将淘宝服务器下的图片保存在本地服务器下;如下代码即可解决:

var img = "http://127.0.0.1/base/1.jpg";
function getBaseImage(img) {
 var canvas = document.createElement("canvas");
 canvas.width = img.width;
 canvas.height = img.height;
 var ctx = canvas.getContext("2d");
 ctx.drawImage(img, 0, 0, img.width, img.height);
 var ext = img.src.substring(img.src.lastIndexOf(".")+1).toLowerCase();
 var dataURL = canvas.toDataURL("image/"+ext);
 return dataURL;
}
var image = new Image();
image.src = img;
image.onload = function(){
 var base = getBaseImage(image);
 console.log(base);
}

但是有时候我们想引用其他服务器下的图片该如何解决呢?我们可以使用下面这一句代码在chrome和firefox下生效,在目前safari6以下貌似不支持;如下代码:

image.crossOrigin = '';

所有代码如下:

var img = "https://img.alicdn.com/bao/uploaded/TB1qimQIpXXXXXbXFXXSutbFXXX.jpg";
//var img = "http://127.0.0.1/base/1.jpg";
function getBaseImage(img) {
 var canvas = document.createElement("canvas");
 canvas.width = img.width;
 canvas.height = img.height;

 var ctx = canvas.getContext("2d");
 ctx.drawImage(img, 0, 0, img.width, img.height);
 var ext = img.src.substring(img.src.lastIndexOf(".")+1).toLowerCase();
 var dataURL = canvas.toDataURL("image/"+ext);
 return dataURL;
}
var image = new Image();
image.crossOrigin = '';
image.src = img;
image.onload = function(){
 var base = getBaseImage(image);
 console.log(base);
}

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

关于vue如何实现动态加载图片src

关于vue2.0中datepicker使用方法

在javascript中如何实现最长公共子序列

热心网友 时间:2022-05-14 22:34

1)使用cmd命令运行 输入cmd进入存.swa 文件的文件夹(进入路径用命令 cd ,例:cd C:\abc) 利用命令 ren *.swa *.mp3,批量转换(*为批量适配符) 2)用万能格式转换工具转换例:WinMPG Video Convert

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com