2011-11-01 55 views
3

我想獲取我在Windows Phone 7中拍攝的所有圖像的EXIF標籤。我嘗試過使用ExifLib,但似乎無法正確使用它。獲取Windows Phone 7中的EXIF標籤

在我的事件處理程序CaptureImageAvailable我有以下代碼:

JpegInfo info = ExifReader.ReadJpeg(e.ImageStream, "Pic.jpeg"); 
Dispatcher.BeginInvoke(delegate() 
{ 
     textBox1.Text = info.ExposureTime.ToString(); 
     textBox2.Text = info.FNumber.ToString(); 
           }); 

e.ImageStream.Close(); 

兩個textBox1textBox2都顯示爲0。

我 「Cam.Capture事件」 是每200毫秒發射。這對這些值有什麼影響嗎?

任何幫助將不勝感激! :)

+0

也許這些標籤不存在於您的圖片? –

+0

但它必須存在..因爲圖片是從相機本身取得的! :( – Gowtham

回答

2

我認爲你的代碼一切正常,值只是沒有設置。

這裏是證據,這不是你的錯:

  • 看一看this blog post這主要是閱讀EXIF數據的教程。在這裏你可以找到數據的截圖:設置了很多值,但是你需要的值也是0.但是我不確定這張照片是否真的是用手機拍攝的。

  • 所以我測試了一下自己,其值如下;你需要的字段爲0,以及:

    Artist "" 
    Copyright null 
    DateTime "2011:11:01 20:50:07" 
    Description null 
    ExposureTime 0.0 
    FileName "\\Applications\\Data\\[GUID]\\Data\\PlatformData\\CameraCapture-[GUID].jpg.jpg" 
    FileSize 789355 
    Flash No 
    FNumber 0.0 
    GpsLatitude {double[3]} 
    GpsLatitudeRef Unknown 
    GpsLongitude {double[3]} 
    GpsLongitudeRef Unknown 
    Height 1944 
    IsColor true 
    IsValid true 
    LoadTime {00:00:00.1340000} 
    Make "HTC" 
    Model "7 Trophy" 
    Orientation TopRight 
    ResolutionUnit Inch 
    Software "Windows Phone 7.5" 
    ThumbnailData {byte[14913]} 
    ThumbnailOffset 518 
    ThumbnailSize 14913 
    UserComment null 
    Width 2592 
    XResolution 72.0 
    YResolution 72.0 
    

貌似做的事情與EXIF每200ms是原因。出於好奇,我在與PC同步圖片後再次看到EXIF數據。價值只是不存在。抱歉。

+0

非常感謝Heinrich,它幫助我們澄清了很多混淆問題。你認爲Windows Phone 7不能正確保存exif數據嗎?我下載了一張樣本圖片並在我的電腦上檢查過它。 exif標籤我需要。這是網址http://www.mobiletechworld.com/wordpress/wp-content/uploads/2011/07/WP_000272-3-Large.jpg請檢查並回復您的評論。非常感謝再次! – Gowtham

+0

PS我需要得到3個值,即ISO,曝光時間和F.Stop編號。你可以發現,與Windows手機拍攝的鏈接圖像具有所有必要的屬性。我只需要一種方法來閱讀這些!:) – Gowtham

+0

我看到,鏈接後面的圖像已設置所有標記。那麼,他們要麼「增強」他們的目的,要麼功能取決於供應商和/或型號和/或固件。我的是一款運行芒果的HTC戰利品。你的位置?如果其他人用相機測試並公佈了結果,那將會很好。 –