首页 >

基于PHP服务端图片生成缩略图办法详解【PHP】

后端开发|php教程基于PHP服务端图片生成缩略图办法详解【PHP】
php,服务端图片,生成缩略图
后端开发-php教程
手机登录界面 源码,vscode下载到什么盘,usb网卡 ubuntu,tomcat版本时间发布,儿童爬虫子,phpcms 运行php,天津品质seo优化哪家便宜,影视网站源码上传,wordpress内容主题模板lzw
<?php
//定义缩略图片尺寸
$picSize = array(
'100_100'=> 1,
'200_100'=> 1
);
$imagePath = "../image/";
function parseUrl($url){
preg_match("/(?P[\w\d]+)_w(?P\d+)_h(?P\d+)\.(?P\w+)/",$url,$match);
return $match;
}
$urlArr = explode("/",$_SERVER['REQUEST_URI']);
$imgName = $urlArr[count($urlArr)-1];
$picInfo = parseUrl($imgName);
//错误尺寸
if(empty($picInfo['width']) || empty($picInfo['height']) ||
!array_key_exists($picInfo['width'].'_'.$picInfo['height'],$picSize)) die('不存在该尺寸图片');
$originalPic = $imagePath.$picInfo['name'].'/'.$picInfo['name'].'.'.$picInfo['ext'];
//原始图不存在
if(!file_exists($originalPic)) die("图片不存在!");
/**
*等比例压缩图片
*/
switch($picInfo['ext']){
case 'jpg':
$orgImg = ImageCreateFromJpeg($originalPic);
break;
default:
break;
}
$owidth = ImageSX($orgImg); //原始尺寸
$oheight = ImageSY($orgImg);
$tW = $picInfo['width'];
$tH = $picInfo['height'];
//获取缩略图尺寸
if($owidth/$oheight > $tW/$tH){
$tH = intval($tW * $oheight/$owidth);
}else{
$tW = intval($tH * $owidth/$oheight);
}
//生成背景图
$new_img = ImageCreateTrueColor($picInfo['width'], $picInfo['height']);
$bgColor = imagecolorallocate($new_img,255,255,255);
if (!@imagefilledrectangle($new_img, 0, 0, $picInfo['width']-1, $picInfo['height']-1, $bgColor)) {
echo "无法创建背景图"; //@todo记录日志
exit(0);
}
if (!@imagecopyresampled($new_img, $orgImg, ($picInfo['width']-$tW)/2, ($picInfo['height']-$tH)/2, 0, 0, $tW, $tH, $owidth, $oheight)) {
echo "生成图片失败";
exit(0);
}
//生成图片
ob_start();
imagejpeg($new_img);
$_newImg = ob_get_contents();
ob_end_clean();
file_put_contents($imagePath.$picInfo['name']."/".$imgName, $_newImg);
header("Content-type:image/jpeg; charset=utf-8");
imagejpeg($new_img);
?>
使用时候绑定apache conf 的 documentError 404 的handler 为此文件。。
社保系统 源码,vscode 小红线,ubuntu vipw,tomcat 网站编译,sqlite数据库端口,手动删除wordpress插件,网易云音乐年度总结前端框架,手机场景模拟爬虫代码,php 5.3配置,seo个性制作网络,协会网站模板,网页2级菜单代码,人才招聘模板lzw

基于PHP服务端图片生成缩略图办法详解【PHP】
  • PHP实现原比例生成缩略图办法php比例生成缩略图
  • PHP实现原比例生成缩略图办法php比例生成缩略图 | PHP实现原比例生成缩略图办法php比例生成缩略图 ...

    基于PHP服务端图片生成缩略图办法详解【PHP】
  • js生成缩略图后上传并利用canvas重绘【javascript】
  • js生成缩略图后上传并利用canvas重绘【javascript】 | js生成缩略图后上传并利用canvas重绘【javascript】 ...

    基于PHP服务端图片生成缩略图办法详解【PHP】
  • php生成缩略图质量较差解决方法代码的讲解
  • php生成缩略图质量较差解决方法代码的讲解 | php生成缩略图质量较差解决方法代码的讲解 ...