织梦缩略图是真变形导致模糊不清的修改方案

2016-03-31dedecms开发
61

  由于dede默认只生成一个规格大小的缩略图,而往往在一个站不同页面内需要的缩略图大小不一致,比例不一致,这就造成了缩略图不清晰,失真,下面提供的方法就完美解决了这个问题。

  使用方法:

  一、要获得清晰的缩略图就要有足够大的图片并准确的剪裁,而下面的方法就是根据缩略图来进行剪裁的(因原图部分网站有水印),所以就必须要保证原来的缩略图足够大,所以要进行一下设置:系统-附件设置,把缩略图默认宽度、默认高度设为大于等于你全站所有调用缩略图的最大尺寸,手工剪裁也请剪裁得足够大(不需要手工剪裁了)

  二、打开include/extend.func.php (注:这个文件就是为二次开发准备的,用于功能方法扩展)在最后一个PHP结束符 ?> 前加入以下代码

01 function thumb($imgurl$width$height$bg = true)
02 {
03     global $cfg_mainsite,$cfg_multi_site;
04     $thumb eregi("http://",$imgurl)?str_replace($cfg_mainsite,'',$imgurl):$imgurl;
05     list($thumbname,$extname) = explode('.',$thumb);
06     $newthumb $thumbname.'_'.$width.'_'.$height.'.'.$extname;
07     if(!$thumbname || !$extname || !file_exists(DEDEROOT.$thumb))return $imgurl;
08     if(!file_exists(DEDEROOT.$newthumb))
09     {
10         include_once DEDEINC.'/image.func.php';
11         if($bg==true)
12         {
13             ImageResizeNew(DEDEROOT.$thumb$width$height, DEDEROOT.$newthumb);
14         }
15         else
16         {
17         ImageResize(DEDEROOT.$thumb$width$height, DEDEROOT.$newthumb);
18         }
19     }
20     return $cfg_multi_site=='Y'?$cfg_mainsite.$newthumb:$newthumb;
21 }

  调用方法:

  标签 :

1 [field:picname function='thumb(@me,$width,$height,$bg)'/]

  参数说明:

  $width:缩略图宽度(整数)

  $height:缩略图高度(整数)

  $bg:是否用空白填补,默认自动填补,背景填充颜色在系统-附件设置里(true/false)

  再看不懂的朋友可以参看调用实例:

  调用长宽为100像素的缩略图:

1 [field:picname function='thumb(@me,100,100)'/]

  保留原有比例,不自动填充(不建议):

1 [field:picname function='thumb(@me,100,100,false)'/]

  实在的问题,缩略图是任何CMS系统不可避免的问题,而缩略图失真变形是不可以应对的,最好的解决问题就是在网站模板建好之前就安装预定的尺寸裁剪缩略图图片,不然中途该换模板,必然造成是真变形的问题。

The End

相关推荐

织梦缩略图是真变形导致模糊不清的修改方案
由于dede默认只生成一个规格大小的缩略图,而往往在一个站不同页面内需要的缩略图大小不一致,比例不一致,这就造成了缩略图不清晰,失真,下面提供的方法就完美解决了这个问题。...
2016-03-31 dedecms开发
61

织梦缩略图上传失败 退出重新登录处理方法
今天在修改织梦网站的一片文章缩略图的时候,发现上传图片点击裁剪的时候,老是退出重新登录,到网上搜了下,竟然没人碰到过这个问题,后来发现原来是浏览器的问题。 就是下面的步骤出的问题: 后来发现问题了,关键就在第三张图片上的 【无痕/小号浏览】,...
2015-11-23 dedecms开发
152

织梦缩略图调用及有显示无不显示
dede在列表中,如果文章没有图片,就会显示一个缺省的空缩略图,很影响美观。 首先,要知道,列表页定义有缩略图时怎么显示,没缩略图怎么显示,都是在 /include/arc.listview.class.php约第883-885行: if($row[litpic] == - || $row[litpic] == ) { $row[l...
2015-09-29 dedecms开发
1468

织梦缩略图不清楚
缩略图默认宽度、高度的值设置的越高,缩略图越清楚,可以通过多次调整大小,慢慢找到适合你的缩略图的值。...
2014-12-24 dedecms开发
95

关于织梦缩略图的解决方法
有时候缩略图很头疼,要么变形了,要么就是拉长了,今天就针对这个问题说个解决方法。 首先找到以下代码: /includes/image.func.php目录下修改74行为以下代码: function ImageResize($srcFile...
2014-09-24 dedecms开发
35

怎么使dede织梦的略缩图更清晰和变形失真按比例裁剪解决方法
怎么使dede织梦的略缩图更清晰和变形失真按比例裁剪解决方法 使用方法: 一、打开include/extend.func.php(注:这个文件就是为二次开发准备的,用于功能方法扩展) 在最后一个?前加入以下代码 functionthumb($imgurl,$width,$height,$bg=true) { global$cfg_m...
2014-09-18 dedecms开发
142