如何使用php将bmp转jpg格式-创新互联
这篇文章运用简单易懂的例子给大家介绍如何使用php将bmp转jpg格式,代码非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。
成都创新互联公司-专业网站定制、快速模板网站建设、高性价比冷水滩网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式冷水滩网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖冷水滩地区。费用合理售后完善,10余年实体公司更值得信赖。php bmp转jpg的方法:首先打开“php.ini”文件;然后开启gd扩展库;最后使用“changeBMPtoJPG”等方法将bmp的文件转换成jpg格式即可。
php转换bmp图片格式为jpg格式
进行图片格式转换前,先输出phpinfo()查看php库信息,查看gd扩展库是否开启,若未开启,打开php.ini文件,用查找工具找到extension=php_gd2.dll,把extension=php_gd2.dll 前面的【;】,就可以了
这里转换成为jpg格式需要JPEG Support支持,png需要 PNG Support支持,对应的先检查自己转的格式是否支持

imagejpeg()函数失败也许是你的文件夹权限问题,得多注意
可以先用function_exist()函数ImageCreateFromBMP检查是否存在,下例中的ImageCreateFromBMP_private用来代替ImageCreateFromBMP方法
示例代码如下:
= 0) {
$X = 0;
while ($X < $BMP['width']) {
switch ($BMP['bits_per_pixel']) {
case 32:
$COLOR = unpack("V", substr($IMG, $P, 3) . $VIDE);
break;
case 24:
$COLOR = unpack("V", substr($IMG, $P, 3) . $VIDE);
break;
case 16:
$COLOR = unpack("n", substr($IMG, $P, 2));
$COLOR[1] = $PALETTE[$COLOR[1] + 1];
break;
case 8:
$COLOR = unpack("n", $VIDE . substr($IMG, $P, 1));
$COLOR[1] = $PALETTE[$COLOR[1] + 1];
break;
case 4:
$COLOR = unpack("n", $VIDE . substr($IMG, floor($P), 1));
if (($P * 2) % 2 == 0)
$COLOR[1] = ($COLOR[1] >> 4);
else
$COLOR[1] = ($COLOR[1] & 0x0F);
$COLOR[1] = $PALETTE[$COLOR[1] + 1];
break;
case 1:
$COLOR = unpack("n", $VIDE . substr($IMG, floor($P), 1));
if (($P * 8) % 8 == 0)
$COLOR[1] = $COLOR[1] >> 7;
elseif (($P * 8) % 8 == 1)
$COLOR[1] = ($COLOR[1] & 0x40) >> 6;
elseif (($P * 8) % 8 == 2)
$COLOR[1] = ($COLOR[1] & 0x20) >> 5;
elseif (($P * 8) % 8 == 3)
$COLOR[1] = ($COLOR[1] & 0x10) >> 4;
elseif (($P * 8) % 8 == 4)
$COLOR[1] = ($COLOR[1] & 0x8) >> 3;
elseif (($P * 8) % 8 == 5)
$COLOR[1] = ($COLOR[1] & 0x4) >> 2;
elseif (($P * 8) % 8 == 6)
$COLOR[1] = ($COLOR[1] & 0x2) >> 1;
elseif (($P * 8) % 8 == 7)
$COLOR[1] = ($COLOR[1] & 0x1);
$COLOR[1] = $PALETTE[$COLOR[1] + 1];
break;
default:
return false;
break;
}
imagesetpixel($res, $X, $Y, $COLOR[1]);
$X++;
$P += $BMP['bytes_per_pixel'];
}
$Y--;
$P+=$BMP['decal'];
}
fclose($f1);
return $res;
}
function changeBMPtoJPG($srcPathName){
$srcFile=$srcPathName;
$dstFile = str_replace('.bmp', '.jpg', $srcPathName);
$photoSize = GetImageSize($srcFile);
$pw = $photoSize[0];
$ph = $photoSize[1];
$dstImage = ImageCreateTrueColor($pw, $ph);
$white = imagecolorallocate($dstImage, 255, 255, 255);
//用 $white 颜色填充图像
imagefill( $dstImage, 0, 0, $white);
//读取图片
$srcImage = ImageCreateFromBMP_private($srcFile);
//合拼图片
imagecopyresampled($dstImage, $srcImage, 0, 0, 0, 0, $pw, $ph, $pw, $ph);
$judge = imagejpeg($dstImage, $dstFile, 90);
imagedestroy($dstImage);
if($judge){
return $dstFile;
}else{
return false;
}
}
?关于如何使用php将bmp转jpg格式就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
分享文章:如何使用php将bmp转jpg格式-创新互联
文章分享:http://www.jxjierui.cn/article/coschh.html


咨询
建站咨询
