GVKun编程网logo

解决织梦CMS略缩图不清楚和变形失真的办法(织梦如何给栏目增加缩略图)

27

如果您想了解解决织梦CMS略缩图不清楚和变形失真的办法和织梦如何给栏目增加缩略图的知识,那么本篇文章将是您的不二之选。我们将深入剖析解决织梦CMS略缩图不清楚和变形失真的办法的各个方面,并为您解答织梦

如果您想了解解决织梦CMS略缩图不清楚和变形失真的办法织梦如何给栏目增加缩略图的知识,那么本篇文章将是您的不二之选。我们将深入剖析解决织梦CMS略缩图不清楚和变形失真的办法的各个方面,并为您解答织梦如何给栏目增加缩略图的疑在这篇文章中,我们将为您介绍解决织梦CMS略缩图不清楚和变形失真的办法的相关知识,同时也会详细的解释织梦如何给栏目增加缩略图的运用方法,并给出实际的案例分析,希望能帮助到您!

本文目录一览:

解决织梦CMS略缩图不清楚和变形失真的办法(织梦如何给栏目增加缩略图)

解决织梦CMS略缩图不清楚和变形失真的办法(织梦如何给栏目增加缩略图)

 

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

复制代码 function thumb($imgurl, $width, $height, $bg = true) { global $cfg_mainsite,$cfg_multi_site; $thumb = eregi("",$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,100,100)'/] 
保留原有比例,不自动填充(不建议):[field:picname function='thumb(@me,100,100,false)'/] 
二、要获得清楚的缩略图就要有足够大的图片并准确的剪裁,而下面的办法就是根据缩略图来进行剪裁的(因原图部分网站有水印),所以就必须要保证原来的缩略图足够大,所以要进行一下设置:系统-附件设置,把缩略图默认宽度、默认高度设为大于等于你全站所有调用缩略图的*大尺寸,手工剪裁也请剪裁得足够大(不需要手工剪裁了) 本文章网址:http://www.ppssdd.com/code/13051.html。转载请保留出处,谢谢合作!

PHPCMS如何解决缩略图不清楚

PHPCMS如何解决缩略图不清楚

PHPCMS如何解决缩略图不清楚

PHPCMS如何解决缩略图不清楚

首先在phpcms下面的libs中找到classes目录并打开;然后找到“image.class.php”这个文件并打开;最后搜索到调用“$imagefun()”函数的地方并传第三个参数为90即可。

搜索到下这个函数

function thumb($image, $filename = '', $maxwidth = 200, $maxheight = 200, $suffix='', $autocut = 0, $ftp = 0) {
        if(!$this->thumb_enable || !$this->check($image)) return false;
        $info  = image::info($image);
        if($info === false) return false;
                $srcwidth  = $info['width'];
                $srcheight = $info['height'];
                $pathinfo = pathinfo($image);
                $type =  $pathinfo['extension'];
                if(!$type) $type = $info['type'];
                $type = strtolower($type);
                unset($info);

                $creat_arr = $this->getpercent($srcwidth,$srcheight,$maxwidth,$maxheight);
                $createwidth = $width = $creat_arr['w'];
                $createheight = $height = $creat_arr['h'];

                $psrc_x = $psrc_y = 0;
                if($autocut && $maxwidth > 0 && $maxheight > 0) {
                        if($maxwidth/$maxheight<$srcwidth/$srcheight && $maxheight>=$height) {
                                $width = $maxheight/$height*$width;
                                $height = $maxheight;
                        }elseif($maxwidth/$maxheight>$srcwidth/$srcheight && $maxwidth>=$width) {
                                $height = $maxwidth/$width*$height;
                                $width = $maxwidth;
                        }
                        $createwidth = $maxwidth;
                        $createheight = $maxheight;
                }
                $createfun = &#39;imagecreatefrom&#39;.($type==&#39;jpg&#39; ? &#39;jpeg&#39; : $type);
                $srcimg = $createfun($image);
                if($type != &#39;gif&#39; && function_exists(&#39;imagecreatetruecolor&#39;))
                        $thumbimg = imagecreatetruecolor($createwidth, $createheight); 
                else
                        $thumbimg = imagecreate($width, $height); 

                if(function_exists(&#39;imagecopyresampled&#39;))
                        imagecopyresampled($thumbimg, $srcimg, 0, 0, $psrc_x, $psrc_y, $width, $height, $srcwidth, $srcheight); 
                else
                        imagecopyresized($thumbimg, $srcimg, 0, 0, $psrc_x, $psrc_y, $width, $height,  $srcwidth, $srcheight); 
                if($type==&#39;gif&#39; || $type==&#39;png&#39;) {
                        $background_color  =  imagecolorallocate($thumbimg,  0, 255, 0);  //  指派一个绿色  
                        imagecolortransparent($thumbimg, $background_color);  //  设置为透明色,若注释掉该行则输出绿色的图 
                }
                if($type==&#39;jpg&#39; || $type==&#39;jpeg&#39;) imageinterlace($thumbimg, $this->interlace);
                $imagefun = &#39;image&#39;.($type==&#39;jpg&#39; ? &#39;jpeg&#39; : $type);
                if(empty($filename)) $filename  = substr($image, 0, strrpos($image, &#39;.&#39;)).$suffix.&#39;.&#39;.$type;
                $imagefun($thumbimg, $filename);
                imagedestroy($thumbimg);
                imagedestroy($srcimg);
                if($ftp) {
                        @unlink($image);
                }
                return $filename;
    }
登录后复制

然后找到

立即学习“PHP免费学习笔记(深入)”;

if($type==&#39;jpg&#39; || $type==&#39;jpeg&#39;) imageinterlace($thumbimg, $this->interlace);
$imagefun = &#39;image&#39;.($type==&#39;jpg&#39; ? &#39;jpeg&#39; : $type);
if(empty($filename)) $filename  = substr($image, 0, strrpos($image, &#39;.&#39;)).$suffix.&#39;.&#39;.$type;
$imagefun($thumbimg, $filename);
imagedestroy($thumbimg);
imagedestroy($srcimg);
登录后复制

改为

if($type==&#39;jpg&#39; || $type==&#39;jpeg&#39;) imageinterlace($thumbimg, $this->interlace);
$imagefun = &#39;image&#39;.($type==&#39;jpg&#39; ? &#39;jpeg&#39; : $type);
if(empty($filename)) $filename  = substr($image, 0, strrpos($image, &#39;.&#39;)).$suffix.&#39;.&#39;.$type;
$imagefun($thumbimg, $filename, 90);
imagedestroy($thumbimg);
imagedestroy($srcimg);
登录后复制

即可解决问题

推荐教程:《PHP教程》

以上就是PHPCMS如何解决缩略图不清楚的详细内容,更多请关注php中文网其它相关文章!

如何使dede织梦的略缩图更清楚和变形失真按比例裁剪解决办法

如何使dede织梦的略缩图更清楚和变形失真按比例裁剪解决办法

 

如何使dede织梦的略缩图更清楚和变形失真按比例裁剪解决办法

使用办法:

一、打开include/extend.func.php (注:这个文件就是为二开准备的,用于功能办法扩展)

在*后一个 ?> 前加入以下代码

function thumb($imgurl, $width, $height, $bg = true)

{

global $cfg_mainsite,$cfg_multi_site;

$thumb = eregi("",$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,100,100)'/]

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

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

本文章网址:http://www.ppssdd.com/code/14545.html。转载请保留出处,谢谢合作!

如何解决织梦CMS幻灯片显示图片模糊的问题

如何解决织梦CMS幻灯片显示图片模糊的问题

很多织梦站长朋友们用了几年的织梦,做了无数的织梦模板,但是都会遇到同一个问题就是织梦dedecms网站首页幻灯片调用的是缩略图,如果我们实际图片尺寸比例和幻灯片的大小相差太大的话,那么在织梦站首页显示的幻灯片图片就会自动拉伸模糊,这个看起来确实是比较影响美观和用户体验的一个问题,针对这个问题,织梦58(dede58.com)小编推荐使用以下2个方法来解决这个幻灯片图片模糊的问题。

第一种解决办法:手动制图

手动制图的方法确实是比较繁琐一点的办法,但是很实用可以分毫不差的展示幻灯图片,具体的做法是用Photoshop工具(或者美图秀秀)把图片做成和幻灯片尺寸大小一致,等比例的图,然后手动上传,这样就可以了,这个优点是幻灯图片大小合适,质量很清晰,缺点是用ps工具制图稍微麻烦了些,有时间又有精力的站长筒子们可以试试啦。

第二种:修改织梦代码,自动等比例调用图片
自动等比例调用图片,这个方法比较实用,可以自动将我们上传的图片批量调整为固定的大小比例。这种方式的优点是自动生成,简单快速,缺点是横竖比率的图片没办法加以区分,如果将横比例的图片按照数比例的图片来压缩,那么会让图片失真。
具体做法如下

1:打开织梦网站的首页模板(index.htm)或者需要幻灯的网页模板,找到读取缩略图的代码


  1. picarr[[field:global.autoindex/]] = “[field:litpic/]“; 

  2:找到下面的js代码

  • for(i=1;i<picarr.length;i++){ 
  • if(files=="") files = picarr[i]; 
  • elsefiles += "|"+picarr[i]; 
  •  我们把这段织梦代码修改为

    picarr.length;i++){ 
    
    	
  • if(files=="") files = picarr[i].replace("-lp",""); 
  • elsefiles += "|"+picarr[i].replace("-lp",""); 
  • 然后清除缓存重新生成全站,看看已经OK了

    如何解决织梦CMS更新问题?

    如何解决织梦CMS更新问题?

    如何解决织梦cms更新问题?

    在互联网时代,网站的更新迭代是非常重要的,而织梦CMS作为一款非常流行的内容管理系统,也需要不断更新以符合用户需求和新技术的发展。然而,有时候在更新时可能会遇到一些问题,比如更新失败、页面显示异常等。那么,我们应该如何解决织梦CMS更新问题呢?下面将介绍几种解决方法,并给出一些具体的代码示例:

    1.备份数据

    在进行任何更新之前,首先要做的是备份网站的数据,以防更新过程中出现意外情况导致数据丢失。可以通过FTP将整个网站目录下载到本地,或者使用数据库管理工具备份数据库文件。

    2.更新前准备

    在更新之前,确保您已经登录到织梦CMS后台管理系统,并确保您具有足够的权限进行更新操作。

    3.手动更新

    如果使用在线更新功能无法成功,可以尝试手动更新。具体步骤如下:

    1. 下载最新版本的织梦CMS安装文件,并解压缩到本地。
    2. 通过FTP工具将解压后的文件上传到您的网站根目录。
    3. 访问您的网站,根据提示进行更新操作。

    4.检查文件权限

    有时更新失败是因为文件权限设置不正确所致。确保您的网站文件夹和文件的权限设置是正确的,一般情况下,文件夹权限设置为755,文件权限设置为644。

    5.清除缓存

    更新后有时候需要清除浏览器缓存和织梦CMS系统缓存,以确保页面能够正常显示。可以通过织梦CMS后台管理系统清除缓存,也可以手动清除浏览器缓存。

    //清除织梦CMS系统缓存代码示例
    require(dirname(__FILE__).''/include/common.inc.php'');
    $dou->clear_cache();
    
    //清除浏览器缓存代码示例
    <?php
    header("Cache-Control:no-cache");
    header("Pragma:no-cache");
    ?>
    登录后复制

    6.查看日志

    如果更新过程中出现问题,可以查看织梦CMS的日志文件,以便定位问题所在。可以查看后台管理系统中的日志记录,或者通过FTP查看网站根目录下的日志文件。

    7.联系技术支持

    如果以上方法仍然无法解决问题,可以联系织梦CMS官方技术支持,他们会为您提供进一步的帮助和指导。

    总的来说,解决织梦CMS更新问题需要一定的技术知识和操作经验,希望以上方法和代码示例能够帮助到您。最重要的是在更新前备份数据,谨慎操作,避免造成不必要的损失。

    以上就是如何解决织梦CMS更新问题?的详细内容,更多请关注php中文网其它相关文章!

    我们今天的关于解决织梦CMS略缩图不清楚和变形失真的办法织梦如何给栏目增加缩略图的分享已经告一段落,感谢您的关注,如果您想了解更多关于PHPCMS如何解决缩略图不清楚、如何使dede织梦的略缩图更清楚和变形失真按比例裁剪解决办法、如何解决织梦CMS幻灯片显示图片模糊的问题、如何解决织梦CMS更新问题?的相关信息,请在本站查询。

    本文标签: