javascript - 从外部图像 url 创建 Blob

标签 javascript jquery html

我有一个文件输入,用于获取文件并将其转换为 blob。无论如何我可以获得外部图像 url 并将其转换为 blob?这是我用来处理来自 <input type="file" /> 的文件的代码:

//Process the file and resize it.
        function processfile(file) {

            if (!(/image/i).test(file.type)) {
                alert("File " + file.name + " is not an image.");
                return false;
            }

            // read the files
            var reader = new FileReader();
            reader.readAsArrayBuffer(file);

            reader.onload = function (event) {
                // blob stuff
                var blob = new Blob([event.target.result]); // create blob...
                window.URL = window.URL || window.webkitURL;
                var blobURL = window.URL.createObjectURL(blob); // and get it's URL

                // helper Image object
                var image = new Image();
                image.src = blobURL;
                image.onload = function () {

                    for (var x = 0; x < self.ThumbSizes.length; x++) {
                        // have to wait till it's loaded
                        var resized = resizeMe(image, self.ThumbSizes[x]); // send it to canvas
                        var resized_blob = dataURItoBlob(resized);
                        uploadFile(resized_blob, self.ThumbSizes[x].Name);
                    }
                }
            };

我不想传递文件,而是希望能够构造此代码以传递图像 url 并将其转换为 blob。

最佳答案

希望对你有帮助。 (我没有运行它。)

function processfile(imageURL) {
    var image = new Image();
    var onload = function () {
        var canvas = document.createElement("canvas");
        canvas.width =this.width;
        canvas.height =this.height;

        var ctx = canvas.getContext("2d");
        ctx.drawImage(this, 0, 0);

        canvas.toBlob(function(blob) {
            // do stuff with blob
        });
    };

    image.onload = onload;
    image.src = imageURL;
}

关于javascript - 从外部图像 url 创建 Blob,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16408987/

相关文章:

javascript - 数据表 - 根据所选选项动态显示/隐藏列组

html - 网格布局下的 IE 10/11 和 Edge 页脚问题

javascript - 从对象数组中删除元素

javascript - 使 div 位置的子项固定在滚动时 div 的顶部,并设置子项的动画高度

javascript - 按名称组织对象

jquery - 将加载图像放入按钮$ajax

javascript - 在移动状态下调整 Bootstrap 轮播中的图像高度

html - 随着页面大小的变化,以固定大小更改列数和行数

javascript - 导航到不同路线时清除 redux 状态

javascript - ASP.NET 使用 JavaScript 选择 RadioButtonList 值