新聞中心
解決dedecms縮略圖無水印以及不失真
作者 / 無憂主機 時間 2015-12-28 13:48:19
無憂主機小編相信很多的站長朋友在php獨立ip虛擬主機安裝了dedecms。當我們在設(shè)置縮略圖的時候,那么等顯示的時候出現(xiàn)了無水印的情況,直接是不顯示,或者是圖片時間變形了,其實這個也只是一個小小的bug,算不上是什么大事,但是我們想要的是等比例的縮放,而且圖片大的時候水印還顯示不出來,所以這個就是縮略圖沒有水印的原因了,那么這個問題,也只能靠修改代碼解決,還好的是有大神已經(jīng)解決了這個問題,所以我們只需要引用他的辦法即可,看看他是怎么解決的呢? 1、第一我們需要處理一下處理圖片的代碼,位置是在/include/image.func.php,然后找到一下代碼:
if($srcW<=$toW?&&?$srcH<=$toH?)?return?true;在其后面加入:
if($srcW>$srcH){ $toWH=$toH/$toW; $srcWH=$srcH/$srcW; } if(!$srcW>$srcH){ $toWH=$toW/$toH; $srcWH=$srcW/$srcH; }想想php程序大神們都能知道這段代碼的意思了吧,這個的意思就是讓其按照圖片的width和height的比例去縮放,如果高于了這個,那么就按照設(shè)置的默認來的。這個的設(shè)置根據(jù)自己的需求去修改就行了。最大的就是102*102,,所以在這個范圍內(nèi)絕對的是沒有問題的。 2、修改css樣式,具體的這個是在哪里,這個就要看您的這個是在哪里控制了哈,這個是沒有確實的位置的,那么小編這里只是講解一下即可,方法都是一樣的:
.img_top2 {border: 1px solid #CCCCCC;height: 95px;overflow: hidden;padding: 3px;width: 95px;小編這里只設(shè)置為95*95因為網(wǎng)站的需求,不能用到最大的,不然就整體不好看了。 3、修改標簽源碼:arclist.lib.php,找到如下代碼:
$row['image'] = “<img src=’”.$row['picname'].”‘ border=’0′ width=’$imgwidth’ height=’$imgheight’ alt=’”.ereg_replace(“['><]“,”",$row['title']).”‘>”;在其后面加入一下代碼:
$row['image2'] = “<img src=’”.$row['picname'].”‘ border=’0′ alt=’”.ereg_replace(“['><]“,”",$row['title']).”‘>”; $row['imglink2'] = “<a href=’”.$row['filename'].”‘a(chǎn)lt=’”.$row['title'].”‘>”.$row['image2'].”</a>”;加入的這個時候的意思是,如果不設(shè)置的情況下默認的就是102*102. 然后dedecms調(diào)用標簽的時候就需要如下調(diào)用了:
{dede:arclist type=image. } [field:imglink2/] {/dede:arclist}好了就這樣我們就完美的解決了這個問題了,操作前一定要備份一下您的程序哈,方法是這樣的但是要靈活的運用哈。 無憂主機相關(guān)文章推薦閱讀: DEDECMS增加父欄目調(diào)用的方法 織夢DEDECMS程序發(fā)布圖片后如何快速修改圖片的尺寸 織夢DEDECMS如何通過修改代碼來實現(xiàn)中文水印的解決方法
本文地址:http://www.gle-technology.com/dedecms/21177.html