缩略图的品质

vbyzc 2009-05-09 07:19:25
用PHP生成缩略图
但是生成的品质很差,而且颜色成了旧照片那种颜色。。
在CSDN找了一下别人的贴子,说用imagecreatetruecolor,
我在本机试了一下出现错误,这个函数不能用,所以我查了一下,说要GD2.0才能支持
但我下了探针来看本机的组件支持 GD显示为可以用的,或许它不是2.0的
所以我要问:是不是所有PHP空间都能支持GD2.0,如果不是的话
那用什么其它办法解决缩略品质的问题?

// 源文件格式:gif,jpg,,png
// 目的文件格式:jpg
// $srcFile: 源文件
// $dstFile: 目标文件
// $dstW: 目标图片宽度
// $dstH: 目标文件高度
function smallPicA($srcFile,$dstFile,$dstW,$dstH) {
echo $srcFile;
$data = GetImageSize($srcFile,&$info);
switch ($data[2]) {
case 1:
$im = @ImageCreateFromGIF($srcFile);
break;
case 2:
$im = @imagecreatefromjpeg($srcFile);
break;
case 3:
$im = @ImageCreateFromPNG($srcFile);
break;
}
$srcW=ImageSX($im);
$srcH=ImageSY($im);
$ni=ImageCreate($dstW,$dstH);
//imagecreatetruecolor($ni,$im,0,0,0,0,$dstW,$dstH,$srcW,$srcH);
ImageCopyResized($ni,$im,0,0,0,0,$dstW,$dstH,$srcW,$srcH);
$result1=ImageJpeg($ni,$dstFile);
if($result1){
return "缩略图生成成功";
}else{
return "不知何原因,缩略图生成失败";
}
}
...全文
174 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
Pe2n 2009-05-10
  • 打赏
  • 举报
回复
[Quote]
(PHP 4 >= 4.0.6, PHP 5)

imagecreatetruecolor -- 新建一个真彩色图像
说明
resource imagecreatetruecolor ( int x_size, int y_size )


imagecreatetruecolor() 返回一个图像标识符,代表了一幅大小为 x_size 和 y_size 的黑色图像。

是否定义了本函数取决于 PHP 和 GD 的版本。从 PHP 4.0.6 到 4.1.x 只要加载了 GD 模块本函数一直存在,但是在没有安装 GD2 的时候调用,PHP 将发出致命错误并退出。在 PHP 4.2.x 中此行为改为发出警告而不是错误。其它版本只在安装了正确的 GD 版本时定义了本函数。


[/Quote]
xuzuning 2009-05-10
  • 打赏
  • 举报
回复
$ni=imagecreatetruecolor($dstW,$dstH);
vbyzc 2009-05-09
  • 打赏
  • 举报
回复
看了php.ini里面,前面没有;号extension=php_gd2.dll是开启的,
不知为什么不能用????

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧