当前位置:首页 » 编程语言 » php图片分辨率

php图片分辨率

发布时间: 2024-04-23 06:09:34

‘壹’ 如何缩小图片分辨率 本人有若干张图片要传到网上,想把图片分辨率调小一些有什么软件支持批量转换

批量修改图片分辨率的方法:

步骤1,安装工具软件后打开使用,点击软件左边五个功能中的【更改尺寸】功能,然后再点击【添加文件】按钮将需要修改分辨率的图片添加到软件中。

‘贰’ php获取图片分辨率 颜色模式函数

$img_info = getimagesize('a.jpg');
print_r($img_info);

索引 0 包含图像宽度的像素值,索引 1 包含图像高度的像素值。索引 2 是图像类型的标记:1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),8 = TIFF(motorola byte order),9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,14 = IFF,15 = WBMP,16 = XBM。

channels 和 bits。channels 对于 RGB 图像其值为 3,对于 CMYK 图像其值为 4。bits 是每种颜色的位数。

‘叁’ PHP网页首页图片显示自适应屏幕分辨率的问题 网页CSS问题

长度单位使用百分比是自适应常用做法,图片的长度单位不使用百分比则自动根据父元素可用空间进行布局,当可用空间小于图片实际大小时就会自动对图片进行裁剪(裁剪的结果就是显示不全)。

解决的方法:给图片(img)的宽度加上百分比进行控制(100%)。

可能出现的情况:

  1. 图片大小不一。【解决:控制所有图片的实际大小必须一致,这样经过缩放之后才会大小一致】。


‘肆’ PHP如何读取照片的exif信息实现代码

先来了解什么是图片的Exif信息


Exif是一种图象文件格式,它的数据存储与JPEG格式是完全相同的。

实际上Exif格式就是在JPEG格式头部插入了数码照片的信息,包括拍摄时的光圈、快门、白平衡、ISO、焦距、日期时间等各种和拍摄条件以及相机品牌、型号、色彩编码、拍摄时录制的声音以及全球定位系统(GPS)、缩略图等。简单地说,Exif=JPEG+拍摄参数。

因此,你可以利用任何可以查看JPEG文件的看图软件浏览Exif格式的照片,但并不是所有的图形程序都能处理Exif信息。


具体代码你可以参考下面的

<?
/**
*获取图象信息的函数
*一个全面获取图象信息的函数
*@accesspublic
*@paramstring$img图片路径
*@returnarray
*/
functionGetImageInfoVal($ImageInfo,$val_arr){
$InfoVal="未知";
foreach($val_arras$name=>$val){
if($name==$ImageInfo){
$InfoVal=&$val;
break;
}
}
return$InfoVal;
}
functionGetImageInfo($img){
$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"=>"",
"7"=>"",
);

$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],
/*
.
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=Bv+SvSv=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..'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.="<TABLE>";

foreach($exifas$name=>$val){
$innerhtml.="<TR><TD>{$name}</TD><TD>{$val}</TD></TR>";
}

$innerhtml.="<TR><TDcolspan="2">";
if($_GET['img']){
$image=exif_thumbnail($_GET['img']);
}else{
$image=false;
}
if($image!==false){
$innerhtml.="<imgsrc="thumbnail.php?img=".$_GET['img']."">";
}else{
//nothumbnailavailable,handletheerrorhere
$innerhtml.="Nothumbnailavailable";
}

$innerhtml.="</TD></TR></TABLE>";
?>
<html>
<head>
<title>图片信息</title>
<metahttp-equiv="Content-Type"content="text/html;charset=??????">
</head>
<body>
<SCRIPT>
<!--
//初始化内容值
parent.followTd<?=$_GET['r_id'];?>.innerHTML='<?=$innerhtml;?>';
//已读取
parent.document.images.followImg<?=$_GET['r_id'];?>.loaded='yes';
-->
</SCRIPT>
</body>
</html>
热点内容
方舟编译器厂家 发布:2024-11-28 04:13:15 浏览:979
android源码编辑 发布:2024-11-28 04:12:38 浏览:596
两路服务器是什么意思 发布:2024-11-28 03:39:39 浏览:937
sql精简版64 发布:2024-11-28 03:36:28 浏览:73
金立怎么加密图片 发布:2024-11-28 03:31:43 浏览:664
2017玩dnf电脑什么配置 发布:2024-11-28 03:30:56 浏览:520
ftp挂载存储ip配置 发布:2024-11-28 03:28:51 浏览:963
山耐斯空压机密码多少 发布:2024-11-28 03:26:28 浏览:405
安卓拍照摇一摇是什么软件 发布:2024-11-28 03:26:27 浏览:257
小米2s存储卡 发布:2024-11-28 03:15:49 浏览:649