獲取圖片的EXIF信息

對于專業的攝影師來說,Exif信息是很重要的信息,也包含了非常多的東西

1.EXIF

EXIF(Exchangeable Image File)是“可交換圖像文件”的縮寫,當中包含了專門為數碼相機的照片而定制的元數據,可以記錄數碼照片的拍攝參數、縮略圖及其他屬性信息。

Exif是一種圖像文件格式,它的數據存儲與JPEG格式是完全相同的。利用任何可以查看JPEG文件的看圖軟件瀏覽Exif格式的照片,但并不是所有的圖形程序都能處理Exif信息。

Exif 所記錄的元數據信息非常豐富,主要包含了以下幾類信息:
  • 拍攝日期
  • 拍攝器材(機身、鏡頭、閃光燈等)
  • 拍攝參數(快門速度、光圈F值、ISO速度、焦距、測光模式等)
  • 圖像處理參數(銳化、對比度、飽和度、白平衡等)
  • 圖像描述及版權信息
  • GPS定位數據
  • 縮略圖

?

2.exif.js查看

下載地址:http://code.ciaoca.com/javascript/exif-js/

使用方法非常簡單,引用腳本,使用api方法即可獲取

API 方法如

名稱說明
EXIF.getData(img, callback)

獲取圖像的數據

能兼容尚未支持提供 EXIF 數據的瀏覽器獲取到元數據。

EXIF.getTag(img, tag)獲取圖像的某個數據
EXIF.getAllTags(img)獲取圖像的全部數據,值以對象的方式返回
EXIF.pretty(img)獲取圖像的全部數據,值以字符串的方式返回

示例代碼

EXIF.getData(document.getElementById('img'), function(){ EXIF.getAllTags(this); EXIF.getTag(this, 'Orientation'); });//img是image的id

缺點:每次都要多引用exif.js腳本,而且如果顯示的是縮略圖,就會捉襟見肘

3.exif類庫

類庫1

https://www.codeproject.com/articles/43665/exiflibrary-for-net

類庫2

https://www.codeproject.com/Articles/27242/ExifTagCollection-An-EXIF-metadata-extraction-libr

我使用的是第二種,只因為源碼簡單

ExifTagCollection exif = new ExifTagCollection(@"c:\somefile.jpg");foreach (ExifTag tag in exif)Console.Out.WriteLine(tag);

如果是在類庫中使用,文件路徑獲取可使用以下方法

//獲取當前應用程序域的基目錄
AppDomain.CurrentDomain.BaseDirectory

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/456667.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/456667.shtml
英文地址,請注明出處:http://en.pswp.cn/news/456667.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【python】AnaConda安裝錯誤解決方法

https://www.anaconda.com/ 官網下載啥事沒有!

貪心問題的基本性質

首先確定一個前提 該問題是或可能滿足 最優子結構,greedy選擇性 最優子結構是說。。子結構一定能對全局最優解作貢獻(?) greedy選擇性應該是說。。如果當前我們不貪心地選本來看上去或者就是正確的決策an 那么我們得到結果s,只要證明交換an得到s比不交換更好&#…

Hbase讀寫數據的原理解析

目錄1、體系圖寫數據的流程(參考上圖):讀數據的流程(參考下圖): 目錄 1、體系圖 針對上圖的一些解釋: 這里面數據分區(region)存儲是為了查詢方便(即因為是…

anaconda來創建python環境

Anacond下載 下載地址:https://www.anaconda.com/download/ 管理虛擬環境 接下來我們就可以用anaconda來創建我們一個個獨立的python環境了.接下來的例子都是在命令行操作的,請打開你的命令行吧. activate activate 能將我們引入anaconda設定的虛擬環境中, 如果你后…

Zookeeper的簡介及命令行操作

目錄前言1、Zookeeper簡介2、Zookeeper結構3、Zookeeper常用的命令行操作 總結: 目錄 前言 作為一款第三方的協調服務框架,ZK被應用在許多地方,如:Hbase中用于存儲-ROOT表的位置信息;Storm中用于保存任務分配的信息、…

移動端開發文章導航

1. 微信企業號 微信企業號 介紹微信企業號 獲取AccessToken微信企業號 獲取用戶信息微信企業號 JS-SDK:上傳圖片2. 微信公眾號 微信公眾號 訂閱號與服務號的區別微信公眾號 幾種移動端UI框架介紹轉載于:https://www.cnblogs.com/polk6/p/6217835.html

打開cmd窗口新技巧get

1.在當前目錄下,按住shift鍵點擊右鍵,選擇在此處打開命令窗口 很多時候我們需要打開命令行然后進入到相應目錄進行一些操作。 常規的做法是: WinR打開運行窗口輸入"cmd"回車打開命令行窗口 假如我們要進入的是D盤foo文件夾下的一個bar子文件夾&#xff0c…

【python】pycharm啟動 一直index,無法運行

花了幾個小時找相關資料,按網上提供答案操作,依然沒有解決, 最后讓它自動更新完才好(大概更新了十分鐘 有固態情況) 參考鏈接 pycharm啟動后總是不停的updating indices...indexing? pycharm 啟動后一直更新index的問題

Zookeeper集群角色分配原理

ZK內部存在Leader和Follower兩個角色,那么這兩種角色是怎樣劃分呢?或者說是怎么樣被選舉出來呢?以下將詳細介紹ZK內部的選舉機制。 ZK是通過內部的選舉算法來選出Leader。(服務器需要配置對應的ID和文件)如下圖所示&a…

2016大數據發展7大趨勢

1.算法(Algorithms)的崛起 大數據已過時,算法正當道。數據已經成為一種商品,每個組織都能夠收集和存儲大量的數據。分析大數據也不再那么引人注目了。每個組織都可以聘用或培訓大數據分析人員來了解數據模式。 2016年,…

請編寫一個方法,實現整數的乘法、減法和除法運算(這里的除指整除)。只允許使用加號。

方法思路 乘法:a*b就等于b個a相加。題目也說了不考慮性能。 減法:a-b就等于a(-1)*b;就等于a加上b的相反數,得到b的相反數就解決了。 除法:a/bn;就是說有n個b相加小于等于a;可以采用b一直加,直到大于a結束。…

MySQL數據庫重點概要總結

目錄前言:1、結構化查詢語言(Structured Query Language)簡稱SQL。2、基本SELECT語句語法3、多表鏈接4、笛卡爾積5、ANSI SQL ANSI SQL:1999標準的連接語法6、單行函數和分組函數的區別:7、分組函數8、SQL語句的執行順序:9、子查詢…

《MySQL排錯指南》——1.9 許可問題

本節書摘來自異步社區出版社《MySQL排錯指南》一書中的第1章,第1.9節,作者:【美】Sveta Smirnova(斯維特 斯米爾諾娃),更多章節內容可以訪問云棲社區“異步社區”公眾號查看。 1.9 許可問題 MySQL有復雜的…

畢業半年,碼過5個城市

時間飛逝,半年前我還在想我的畢業設計要怎么做,還在擔心自己的答辯能夠拿多少分,而此刻我正在成都寫我喜歡的代碼,過著我想過的生活。畢業半年,碼過5個城市,從廈門->太原-》合肥-》北京-》成都。2016是我…

python ---單例(Singleton)

單例(Singleton) 單例是一種 設計模式 ,應用該模式的類只會生成一個實例。 單例模式保證了在程序的不同位置都 可以且僅可以取到同一個對象實例 :如果實例不存在,會創建一個實例;如果已存在就會返回這個實例…

Oracle-11g-R2 RAC 環境下 GPnP Profile 文件

GPnP Profile 文件的作用&#xff1a; GPnP Profile 文件是一個保存于$GRID_HOME/gpnp/<hostname>/profiles/peer目錄下的小型 XML 文件&#xff0c;名稱為 profile.xml。其用于正確描述 RAC 每個節點的全局特性。每個節點上都會保存一個本地的 GPnP Profile&#xff0c;…

《Pro/ENGINEER野火版5.0從入門到精通》——2.5 設置零件單位

本節書摘來自異步社區《Pro/ENGINEER野火版5.0從入門到精通》一書中的第2章&#xff0c;第2.5節&#xff0c;作者 暴風創新科技&#xff0c;更多章節內容可以訪問云棲社區“異步社區”公眾號查看。 2.5 設置零件單位 由于不同國家單位制的不相同&#xff0c;在企業間合作或溝通…

元類被稱為 Python 中的“深奧的巫術“

元類被稱為 Python 中的“深奧的巫術”。盡管你需要用到它的地方極少&#xff08;除非你基于 zope 編程&#xff09;&#xff0c;可事實上它的基礎理論其實令人驚訝地易懂。 一切皆對象 一切都有類型 “class”和“type”之間本質上并無不同 類也是對象 它們的類型是 type 以…

機器學習之必知開源數據集

之前看到的不錯的文章&#xff0c;玩機器學習數據是關鍵&#xff0c;有了這些東西&#xff0c;你就不必再為沒有數據而苦惱。 轉自&#xff1a;https://www.toutiao.com/i6432197108580745730/ 目錄UCIGoogleTrendsKaggleAWS公用數據集ImagenetMINIST/r/數據集其他數據集 目錄…

PHP中header函數的用法及其注意重點是什么呢

1、使用header函數進行跳轉頁面&#xff1b; header(Location:.$url);  其中$url就是將要跳轉的url了。 這種用法的注意事項有以下幾點&#xff1a; ?Location和":"之間不能有空格&#xff0c;否則會出現錯誤&#xff08;注釋&#xff1a;我剛測試了&#xff0c;在…