免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 921 | 回复: 0
打印 上一主题 下一主题

显示照片exif信息PHP代码 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-11-19 12:36 |只看该作者 |倒序浏览
$imgtype=array("","GIF","JPG","PNG","SWF","PSD","BMP","TIFF(intelbyteorder)","TIFF(motorolabyteorder)","JPC","JP2","JPX","JB2","SWC","IFF","WBMP","XBM");
$Orientation=array("","topleftside","toprightside","bottomrightside","bottomleftside","leftsidetop","rightsidetop","rightsidebottom","leftsidebottom");
$ResolutionUnit=array("","","英寸","厘米");
$YCbCrPositioning=array("","thecenterofpixelarray","thedatumpoint");
$ExposureProgram=array("未定义","手动","标准程序","光圈先决","快门先决","景深先决","运动模式","肖像模式","风景模式");
$MeteringMode_arr=array(
"0"=>"未知",
"1"=>"平均",
"2"=>"中央重点平均测光",
"3"=>"点测",
"4"=>"分区",
"5"=>"评估",
"6"=>"局部",
"255"=>"其他"
);
$Lightsource_arr=array(
"0"=>"未知",
"1"=>"日光",
"2"=>"荧光灯",
"3"=>"钨丝灯",
"10"=>"闪光灯",
"17"=>"标准灯光A",
"18"=>"标准灯光B",
"19"=>"标准灯光C",
"20"=>"D55",
"21"=>"D65",
"22"=>"D75",
"255"=>"其他"
);
$Flash_arr=array(
"0"=>"flashdidnotfire",
"1"=>"flashfired",
"5"=>"flashfiredbutstrobereturnlightnotdetected",
"7"=>"flashfiredandstrobereturnlightdetected",
);
$exif=exif_read_data($img,"IFD0");
if($exif===false){
$new_img_info=array("文件信息"=>"没有图片EXIF信息");
}
else
{
$exif=exif_read_data($img,0,true);
$new_img_info=array(
"文件信息"=>"-----------------------------",
"文件名"=>$exif[FILE][FileName],
"文件类型"=>$imgtype[$exif[FILE][FileType]],
"文件格式"=>$exif[FILE][MimeType],
"文件大小"=>$exif[FILE][FileSize],
"时间戳"=>date("Y-m-dH:i:s",$exif[FILE][FileDateTime]),
"图像信息"=>"-----------------------------",
"图片说明"=>$exif[IFD0][ImageDescription],
"制造商"=>$exif[IFD0][Make],
"型号"=>$exif[IFD0][Model],
"方向"=>$Orientation[$exif[IFD0][Orientation]],
"水平分辨率"=>$exif[IFD0][XResolution].$ResolutionUnit[$exif[IFD0][ResolutionUnit]],
"垂直分辨率"=>$exif[IFD0][YResolution].$ResolutionUnit[$exif[IFD0][ResolutionUnit]],
"创建软件"=>$exif[IFD0][Software],
"修改时间"=>$exif[IFD0][DateTime],
"作者"=>$exif[IFD0][Artist],
"YCbCr位置控制"=>$YCbCrPositioning[$exif[IFD0][YCbCrPositioning]],
"版权"=>$exif[IFD0][Copyright],
"摄影版权"=>$exif[COMPUTED][Copyright.Photographer],
"编辑版权"=>$exif[COMPUTED][Copyright.Editor],
"拍摄信息"=>"-----------------------------",
"Exif版本"=>$exif[EXIF][ExifVersion],
"FlashPix版本"=>"Ver.".number_format($exif[EXIF][FlashPixVersion]/100,2),
"拍摄时间"=>$exif[EXIF][DateTimeOriginal],
"数字化时间"=>$exif[EXIF][DateTimeDigitized],
"拍摄分辨率高"=>$exif[COMPUTED][Height],
"拍摄分辨率宽"=>$exif[COMPUTED][Width],
/*
Theactualaperturevalueoflenswhentheimagewastaken.
UnitisAPEX.
ToconvertthisvaluetoordinaryF-number(F-stop),
calculatethisvalue'spowerofroot2(=1.4142).
Forexample,iftheApertureValueis'5',F-numberispow(1.41425,5)=F5.6.
*/
"光圈"=>$exif[EXIF][ApertureValue],
"快门速度"=>$exif[EXIF][ShutterSpeedValue],
"快门光圈"=>$exif[COMPUTED][ApertureFNumber],
"最大光圈值"=>"F".$exif[EXIF][MaxApertureValue],
"曝光时间"=>$exif[EXIF][ExposureTime],
"F-Number"=>$exif[EXIF][FNumber],
"测光模式"=>GetImageInfoVal($exif[EXIF][MeteringMode],$MeteringMode_arr),
"光源"=>GetImageInfoVal($exif[EXIF][LightSource],$Lightsource_arr),
"闪光灯"=>GetImageInfoVal($exif[EXIF][Flash],$Flash_arr),
"曝光模式"=>($exif[EXIF][ExposureMode]==1?"手动":"自动"),
"白平衡"=>($exif[EXIF][WhiteBalance]==1?"手动":"自动"),
"曝光程序"=>$ExposureProgram[$exif[EXIF][ExposureProgram]],
/*
Brightnessoftakensubject,unitisAPEX.TocalculateExposure(Ev)fromBrigtnessValue(Bv),youmustaddSensitivityValue(Sv).
Ev=BvSvSv=log((ISOSpeedRating/3.125),2)
ISO100:Sv=5,ISO200:Sv=6,ISO400:Sv=7,ISO125:Sv=5.32.
*/
"曝光补偿"=>$exif[EXIF][ExposureBiasValue]."EV",
"ISO感光度"=>$exif[EXIF][ISOSpeedRatings],
"分量配置"=>(bin2hex($exif[EXIF][ComponentsConfiguration])=="01020300"?"YCbCr":"RGB"),//'0x04,0x05,0x06,0x00'="RGB"'0x01,0x02,0x03,0x00'="YCbCr"
"图像压缩率"=>$exif[EXIF][CompressedBitsPerPixel]."Bits/Pixel",
"对焦距离"=>$exif[COMPUTED][FocusDistance]."m",
"焦距"=>$exif[EXIF][FocalLength]."mm",
"等价35mm焦距"=>$exif[EXIF][FocalLengthIn35mmFilm]."mm",
/*
Storesusercomment.Thistagallowstousetwo-bytecharactercodeorunicode.First8bytesdescribethecharactercode.'JIS'isaJapanesecharactercode(knownasKanji).
'0x41,0x53,0x43,0x49,0x49,0x00,0x00,0x00':ASCII
'0x4a,0x49,0x53,0x00,0x00,0x00,0x00,0x00':JIS
'0x55,0x4e,0x49,0x43,0x4f,0x44,0x45,0x00':Unicode
'0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00':Undefined
*/
"用户注释编码"=>$exif[COMPUTED][UserCommentEncoding],
"用户注释"=>$exif[COMPUTED][UserComment],
"色彩空间"=>($exif[EXIF][ColorSpace]==1?"sRGB":"Uncalibrated"),
"Exif图像宽度"=>$exif[EXIF][ExifImageLength],
"Exif图像高度"=>$exif[EXIF][ExifImageWidth],
"文件来源"=>(bin2hex($exif[EXIF][FileSource])==0x03?"digitalstillcamera":"unknown"),
"场景类型"=>(bin2hex($exif[EXIF][SceneType])==0x01?"Adirectlyphotographedimage":"unknown"),
"缩略图文件格式"=>$exif[COMPUTED][Thumbnail.FileType],
"缩略图Mime格式"=>$exif[COMPUTED][Thumbnail.MimeType]
);
}
return$new_img_info;
}
$innerhtml="";
$exif=GetImageInfo($_GET['img']);
$innerhtml.="";
foreach($exifas$name=>$val){
$innerhtml.="{$name}{$val}";
}
$innerhtml.="";
if($_GET['img']){
$image=exif_thumbnail($_GET['img']);
}else{
$image=false;
}
if($image!==false){
$innerhtml.=".php?img=".$_GET['img']."\">";
}else{
//nothumbnailavailable,handletheerrorhere
$innerhtml.="Nothumbnailavailable";
}
$innerhtml.="";
?>
图片信息
.innerHTML='';
//已读取
parent.document.images.followImg.loaded='yes';
-->


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/50970/showart_425775.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP