dedecms幻灯片图片变形_dedecms缩略图变形_dede缩略图按比例裁剪的解决方法 | 胡鹏博客
首页 > dedecms > dedecms幻灯片图片变形_dedecms缩略图变形_dede缩略图按比例裁剪的解决方法
2012八月11

dedecms幻灯片图片变形_dedecms缩略图变形_dede缩略图按比例裁剪的解决方法

dedecms 评论关闭  阅读:4319 次

本博主介绍二种方法关于dedecms幻灯片图片变形,dedecms缩略图变形,dede缩略图按比例裁,dede缩略图失的解决方法
其中第一种是博主使用过的,是有效的,第二种是网上查了一些资料,用了没有明显效果,如果有兴趣,你可以把第二种方法改进看能不能有用

第一种方法:在后台设置系统->系统基本参数-> 附件设置->[缩略图默认宽度:][缩略图默认高度:]把这二个文本框中填上大于等于你全站所有调用缩略图的最大尺寸,

然后控制装图片窗口的宽,高,大于这个宽和高,就用overflow:hidden隐藏掉.

第二种方法:在后台设置系统->系统基本参数-> 附件设置->[缩略图默认宽度:][缩略图默认高度:]把这二个文本框中填上大于等于你全站所有调用缩略图的最大尺寸,

然后打开include/extend.func.php 在litimgurls方法后面加入以下代码

function thumb($imgurl, $width, $height, $bg = true)
{
global $cfg_mainsite,$cfg_multi_site;
$thumb = eregi("http://",$imgurl)?str_replace($cfg_mainsite,'',$imgurl):$imgurl;
list($thumbname,$extname) = explode('.',$thumb);
$newthumb = $thumbname.'_'.$width.'_'.$height.'.'.$extname;
if(!$thumbname || !$extname || !file_exists(DEDEROOT.$thumb)) return $imgurl;
if(!file_exists(DEDEROOT.$newthumb))
{
include_once DEDEINC.'/image.func.php';
if($bg==true)
{
ImageResizeNew(DEDEROOT.$thumb, $width, $height, DEDEROOT.$newthumb);
}
else
{
ImageResize(DEDEROOT.$thumb, $width, $height, DEDEROOT.$newthumb);
}
}
return $cfg_multi_site=='Y'?$cfg_mainsite.$newthumb:$newthumb;
}

调用方法:标签 : [field:picname function='thumb(@me,$width,$height,$bg)'/]
参数说明:$width:缩略图宽度(整数),$height:缩略图高度(整数)
$bg:是否用空白填补,默认自动填补,背景填充颜色在系统-附件设置里(true/false)
举例:
调用长宽为100像素的缩略图:[field:picname function='thumb(@me,200,300)'/]
保留原有比例,不自动填充(不建议):[field:picname function='thumb(@me,200,300,false)'/]
第二种方法,本人使用啦,但不起作用,最终用第一种方法给解决啦.如果你把第二种方法测试成功啦,
也请告知本博主,大家共同进步.

更多
本文的评论功能被关闭了.