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

vue使用exif獲取圖片經(jīng)緯度的示例代碼

 更新時間:2020年12月11日 11:49:02   作者:china丶MRH  
這篇文章主要介紹了vue使用exif獲取圖片經(jīng)緯度的示例代碼,幫助大家更好的利用vue獲取圖片信息,感興趣的朋友可以了解下

我上一篇文章寫了怎么壓縮圖片和旋轉。這篇寫一下怎么看圖片的經(jīng)緯度

注意?。?!

只有原圖有大量的元數(shù)據(jù)信息。通過拍照軟件如:b612等,拍攝的照片是軟件處理過的,所以一定要使用原圖來擦查詢

下面貼以下代碼。

<template>
 <div>
  <input type="file" id="upload" accept="image" @change="upload" />
  <span>{{textData}}</span>
 </div>
</template>
<script>
export default {
 data() {
  return {
   picValue: {},
   headerImage: '',
   textData:''
  };
 },
 components: {},
 methods: {
  upload(e) {
   console.log(e);
   let files = e.target.files || e.dataTransfer.files;
   if (!files.length) return;
   this.picValue = files[0];
   this.imgPreview(this.picValue);
  },
  imgPreview(file) {
   let self = this;
   let Orientation;
   //去獲取拍照時的信息,解決拍出來的照片旋轉問題
   self.EXIF.getData(file, function() {
    Orientation = self.EXIF.getTag(this, 'Orientation');
   });
   // 看支持不支持FileReader
   if (!file || !window.FileReader) return;

   if (/^image/.test(file.type)) {
    // 創(chuàng)建一個reader
    let reader = new FileReader();
    // 將圖片2將轉成 base64 格式
    reader.readAsDataURL(file);
    // 讀取成功后的回調
    reader.onloadend = function() {
     let result = this.result;
     let img = new Image();
     img.src = result;
     self.postImg(file);
    };
   }
  },
  postImg(val) {
   //這里寫接口
   let self = this;
   // document.getElementById('upload')
   // this.EXIF.getData(val, function(r) {
   let r = this.EXIF.getAllTags(val);
   const allMetaData = r;
   let direction;
   if (allMetaData.GPSImgDirection) {
    const directionArry = allMetaData.GPSImgDirection; // 方位角
    direction = directionArry.numerator / directionArry.denominator;
   }
   let Longitude;
   if (allMetaData.GPSLongitude) {
    const LongitudeArry = allMetaData.GPSLongitude;
    const longLongitude =
     LongitudeArry[0].numerator / LongitudeArry[0].denominator +
     LongitudeArry[1].numerator / LongitudeArry[1].denominator / 60 +
     LongitudeArry[2].numerator / LongitudeArry[2].denominator / 3600;
    Longitude = longLongitude.toFixed(8);
   }
   let Latitude;
   if (allMetaData.GPSLatitude) {
    const LatitudeArry = allMetaData.GPSLatitude;
    const longLatitude =
     LatitudeArry[0].numerator / LatitudeArry[0].denominator +
     LatitudeArry[1].numerator / LatitudeArry[1].denominator / 60 +
     LatitudeArry[2].numerator / LatitudeArry[2].denominator / 3600;
    Latitude = longLatitude.toFixed(8);
   }
   self.textData = '我是Longitude' + Longitude + ' ====== '+"我是Latitude" + Latitude
   console.log('我進來了', direction, Longitude, Latitude);
   console.log('allMetaData', allMetaData);
   //接口 axios
   // });
  }
 }
};
</script>

這個功能是下載的exif.js文件,也可以通過npm安裝依賴。不過都要掛在到原型鏈上。

以上就是vue使用exif獲取圖片經(jīng)緯度的示例代碼的詳細內容,更多關于vue 獲取圖片經(jīng)緯度的資料請關注腳本之家其它相關文章!

相關文章

  • Vue表單控件數(shù)據(jù)綁定方法詳解

    Vue表單控件數(shù)據(jù)綁定方法詳解

    本文將詳細介紹Vue表單控件數(shù)據(jù)綁定方法,需要的朋友可以參考下
    2020-02-02
  • vue3如何避免樣式污染的方法示例

    vue3如何避免樣式污染的方法示例

    本文主要介紹了vue3如何避免樣式污染的方法示例,使用scoped可以避免父組件的樣式滲透到子組件中,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-09-09
  • Vue封裝一個簡單輕量的上傳文件組件的示例

    Vue封裝一個簡單輕量的上傳文件組件的示例

    這篇文章主要介紹了Vue封裝一個簡單輕量的上傳文件組件的示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-03-03
  • Vue+Echarts實現(xiàn)繪制多設備狀態(tài)甘特圖

    Vue+Echarts實現(xiàn)繪制多設備狀態(tài)甘特圖

    這篇文章主要為大家詳細介紹了Vue如何結合Echarts實現(xiàn)繪制多設備狀態(tài)甘特圖,文中的示例代碼講解詳細,有需要的小伙伴可以跟隨小編一起學習一下
    2024-03-03
  • vue?require.context()的用法實例詳解

    vue?require.context()的用法實例詳解

    require.context是webpack提供的一個api,通常用于批量注冊組件,下面這篇文章主要給大家介紹了關于vue?require.context()用法的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2023-04-04
  • vue3.0?setup中使用vue-router問題

    vue3.0?setup中使用vue-router問題

    這篇文章主要介紹了vue3.0?setup中使用vue-router問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • vue-photo-preview圖片預覽失效的問題及解決

    vue-photo-preview圖片預覽失效的問題及解決

    這篇文章主要介紹了vue-photo-preview圖片預覽失效的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Vue3導入Elementplus時組件無法加載的情況及解決

    Vue3導入Elementplus時組件無法加載的情況及解決

    這篇文章主要介紹了Vue3導入Elementplus時組件無法加載的情況及解決方案,具有很好的參考價值,希望對大家有所幫助
    2024-03-03
  • Vue+ElementUI創(chuàng)建一個帶有進度顯示的文件下載和打包組件功能

    Vue+ElementUI創(chuàng)建一個帶有進度顯示的文件下載和打包組件功能

    如何使用 Vue 創(chuàng)建一個帶有進度顯示和打包功能的文件下載組件,我們探討了如何導入必要的包,構建組件的基礎結構,實現(xiàn)文件下載與進度顯示,以及如何將文件打包為 ZIP 格式供用戶下載
    2024-08-08
  • 淺談webpack編譯vue項目生成的代碼探索

    淺談webpack編譯vue項目生成的代碼探索

    本篇文章主要介紹了淺談webpack編譯vue項目生成的代碼探索,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12

最新評論