ASPJpeg读取exif信息
2010年2月7日
最近在想怎么优化上传体验,QQ超大附件上传上有一个细节设计让我觉得特别向往,就是上传的时候与服务器文件进行对比,如果已经存在就不用重复上传,直接标记就完了。
可以很遗憾的是这个功能不太容易实现,先说服务端,要进行诸如MD5之类的计算并不容易,在网上也没有看到用ASP得到文件MD5的例子(不通过调用其他组件)。
而客户端,不装控件,通过脚本读取文件更是不可能的事情。想着FLASH也许可以,但是还是没找到实例。
于是退而求其次,想想能不能在服务器识别重复文件。因为在校内混了这么久,发现有很多照片会被重复上传。于是想到提取图片的EXIF信息。
以下部分是ASPJPEG提取EXIF信息的方法,记录一下:
asp
Path = Server.MapPath("photo.jpg")
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Set Info = Jpeg.OpenInfo( Path )
For Each Item in Info
Response.Write Item.Name
Response.Write Item.Description
Response.Write Item.Value
Next
Path = Server.MapPath("photo.jpg")
Set Jpeg = Server.CreateObject("Persits.Jpeg")
Set Info = Jpeg.OpenInfo( Path )
For Each Item in Info
Response.Write Item.Name
Response.Write Item.Description
Response.Write Item.Value
Next
加上表格后效果如下:
另外获取单项属性的方法:
asp
Info("Make")
Info("Make")
这样如果EXIF信息完全一样的就可以认为是同一照片了。