欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

HTML5 JS壓縮圖片并獲取圖片BASE64編碼上傳

 更新時(shí)間:2020年11月16日 10:29:13   作者:aC#Coder  
這篇文章主要介紹了HTML5 JS壓縮圖片并獲取圖片BASE64編碼上傳方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了HTML5 JS壓縮圖片,并獲取圖片BASE64編碼上傳的方法,供大家參考,具體內(nèi)容如下

基本過程

1) 調(diào)用 FileReader 的 reader.readAsDataURL(img); 方法, 在其onload事件中, 將用戶選擇的圖片讀入 Image對(duì)象.

2) 在image對(duì)象的 onload 事件中, 通過 canvas 的 canvas.getContext('2d') 的 drawImage 方法, 將Image 改變大小繪制到canvas上.

3) 通過 canvas.toDataURL("image/jpeg", 0.1); 方法, 將圖片變成base64字符串, 傳入服務(wù)端.

var vueImg = new Vue({
  el: "#divCarImages",
  data: { model: { carId: '@carId', imageTitle:'',img64:'' }, images: [] },
  methods: {
   imageHandle: function () {
    var fup = $("#fileImg")[0];

    var img = fup.files[0];

    var image = new Image();
    var canvas = $("#canvas")[0];//document.createElement("canvas");
    var ctx = canvas.getContext('2d');

    image.onload = function () {
     var w = image.naturalWidth,
      h = image.naturalHeight;

     var toSize = 400;
     canvas.width = toSize;
     canvas.height = toSize;

     var w2 = toSize, h2 = toSize;
     if (w > h) {
      h2 = h / w * toSize;
     } else {
      w2 = w / h * toSize;
     }

     ctx.drawImage(image, 0, 0, w, h, 0, 0, w2, h2);
      
    }

    // 判斷是否圖片
    if (!img) {
     return;
    }

    // 判斷圖片格式
    if (!(img.type.indexOf('image') == 0 && img.type && /\.(?:jpg|png|gif)$/.test(img.name))) {
     alert('圖片只能是jpg,gif,png');
     return;
    }

    var reader = new FileReader();

    reader.onload = function (e) { // reader onload start
     var url = reader.result;
     image.src = url;

    } // reader onload end

    reader.readAsDataURL(img);
   }

  }
 });
function uploadImg() {
  var canvas = $("#canvas")[0];
  vueImg.model.img64 = canvas.toDataURL("image/jpeg", 0.1);
  //$("#testMsg").html(imgData.length);
      
  // ajax 上傳圖片
  $.post("@Url.Content("~/AliOss/SaveCarImage")", vueImg.model , function (ret) {

   parseAjaxData(data, function (model) {
    console.log(model.Path);
    alert(model.Path);
    $('#showimg').html('<img src="' + model.Path + '">');
   })  
  }, 'json');
 }

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論