dedecms57调用出现严重失真,缩略图显示严重变形

dedecms57调用出现严重失真,缩略图显示严重变形,第1张

方法/步骤

先查找出缩略存放在网站空间里面的位置

1,一般默认的位置都是在根目录下面/image/defaultpicgif,默认的文件名师defaultpicdif。如果不在默认根目录下面的image文件夹里面的话,我们可以用审查工具查看下的位置。打开你网站显示缩略图的网页,右键点击审查工具,现在一般浏览器都带的有审查工具的,一般快捷键是F12。

2,动手制作一张,替换默认的

找到的路径和的大小以后,我们就需要制作一张,把内容换成我们自己网站的内容,然后把名称改为defaultpicgif,然后用FTP或者织梦自带的文件式管理器,然后把文件上传到/image目录下覆盖掉原来的就行了。

注意事项

1需要注意制作的大小要跟默认的保持一致,默认大小是125(宽)114(高)像素的

2要把替换的跟默认的名称保持一致

首先建好自定义的内容模型和自定义字段

列表页调用方法:

首先要在这里填写上被调用的自定义字段点击保存

然后就可以在列表页调用这个字段了 如:

{dede:list

row='4'}

  价格:[field:jiage/]

市场价:[field:scj/]

{/dede:list}

首页调用方法:

首页调用时需要满足两个条件才能调出来数据

1 指定 channelid 属性   这个ID

就是你建立的内容模型的ID如下图

2

指定要获得的字段 addfields='字段1,字段'  

每个字段用英文半角逗号分开如:

{dede:arclist addfields='goumai,dianpu' row='8'

channelid='1'}

[field:goumai /] - [field:dianpu /]<br

/>

{/dede:arclist}

至此列表页和首页都能调用自定义模型的自定义字段了。

详细页模板调用的方法和在首页调用的方法一样

首先在网站后台系统中设置网站缩略图尺寸大小和模板中调用最大尺寸相同

再打开文件include/helpers/extendhelpesphp 在最下面加上以下代码

if ( ! function_exists('thumb'))

{

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'/imagefuncphp';

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,100,100)'/]

保留原有比例,不自动填充(不建议):[field:picname function='thumb(@me,100,100,false)'/]

再到 include/helpers/imagehelpesphp 中写入以下代码

/

缩自动生成函数,来源支持bmp、gif、jpg、png

但生成的小图只用jpg或png格式

@access public

@param string $srcFile 路径

@param string $toW 转换到的宽度

@param string $toH 转换到的高度

@param string $toFile 输出文件到

@return string

/

if ( ! function_exists('ImageResize'))

{

function ImageResize($srcFile, $toW, $toH, $toFile="")

{

global $cfg_photo_type;

if($toFile=="")

{

$toFile = $srcFile;

}

$info = "";

$srcInfo = GetImageSize($srcFile,$info);

switch ($srcInfo[2])

{

case 1:

if(!$cfg_photo_type['gif'])

{

return false;

}

$im = imagecreatefromgif($srcFile);

break;

case 2:

if(!$cfg_photo_type['jpeg'])

{

return false;

}

$im = imagecreatefromjpeg($srcFile);

break;

case 3:

if(!$cfg_photo_type['png'])

{

return false;

}

$im = imagecreatefrompng($srcFile);

break;

case 6:

if(!$cfg_photo_type['bmp'])

{

return false;

}

$im = imagecreatefromwbmp($srcFile);

break;

}

$srcW=ImageSX($im);

$srcH=ImageSY($im);

if($srcW<=$toW && $srcH<=$toH )

{

return true;

}

//缩略生成并裁剪

$newW = $toH $srcW / $srcH;

$newH = $toW $srcH / $srcW;

if($newH >= $toH)

{

$ftoW = $toW;

$ftoH = $newH;

}

else

{

$ftoW = $newW;

$ftoH = $toH;

}

if($srcW>$toW||$srcH>$toH)

{

if(function_exists("imagecreatetruecolor"))

{

@$ni = imagecreatetruecolor($ftoW,$ftoH);

if($ni)

{

imagecopyresampled($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);

}

else

{

$ni=imagecreate($ftoW,$ftoH);

imagecopyresized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);

}

}

else

{

$ni=imagecreate($ftoW,$ftoH);

imagecopyresized($ni,$im,0,0,0,0,$ftoW,$ftoH,$srcW,$srcH);

}

//裁剪成标准缩略图

$new_imgx = imagecreatetruecolor($toW,$toH);

if($newH >= $toH)

{

imagecopyresampled($new_imgx,$ni,0,0,0,($newH - $toH)/2,$toW,$toH,$toW,$toH);

}

else

{

imagecopyresampled($new_imgx,$ni,0,0,($newW - $toW)/2,0,$toW,$toH,$toW,$toH);

}

switch ($srcInfo[2])

{

case 1:

imagegif($new_imgx,$toFile);

break;

case 2:

imagejpeg($new_imgx,$toFile,85);

break;

case 3:

imagepng($new_imgx,$toFile);

break;

case 6:

imagebmp($new_imgx,$toFile);

break;

default:

return false;

}

imagedestroy($new_imgx);

imagedestroy($ni);

}

imagedestroy($im);

return true;

}

}

即可

QQ:51461981

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » dedecms57调用出现严重失真,缩略图显示严重变形

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情