>백엔드 개발 >PHP 튜토리얼 >DedeCMS 썸네일의 왜곡 및 흐릿함에 대한 해결 방법에 대한 자세한 설명

DedeCMS 썸네일의 왜곡 및 흐릿함에 대한 해결 방법에 대한 자세한 설명

黄舟
黄舟원래의
2017-04-01 09:41:161571검색

이 글에서는 주로 DedeCMSThumbnaildistortion Blur에 대한 완벽한 솔루션을 소개합니다. 기본적으로 하나의 크기의 썸네일을 생성하지만 이는 대부분의 웹사이트의 요구 사항을 충족할 수 없습니다. 이 기사는 궁극적이고 완벽한 솔루션을 제공합니다. 도움이 필요한 친구는 이를 참조할 수 있습니다.

dede는 기본적으로 하나의 썸네일만 생성하므로 다양한 크기의 썸네일 웹사이트의 여러 페이지에서 크기와 비율이 일관되지 않아 썸네일이 불분명하고 왜곡되는 경우가 많습니다. 아래에 제공된 방법은 이 문제를 완벽하게 해결합니다.

dedecs 템플릿 다운로드 주소: www.php.cn/xiazai/ code/dedecms

사용법:

1. 선명한 썸네일을 얻으려면 이미지가 충분히 커야 하고 정확하게 잘라야 하며, 다음 방법으로 자르면 됩니다. (원본 이미지의 일부 웹사이트에는 워터마크가 있기 때문에) 썸네일을 기반으로 하므로 원본 썸네일의 크기가 충분히 큰지 확인해야 하므로 몇 가지 설정을 지정해야 합니다. 시스템 - 첨부 설정, 썸네일의 기본 너비 및 기본 높이 설정 전체 사이트에서 호출되는 모든 썸네일의 최대 크기보다 크거나 같아야 합니다. 또한 수동으로 자르기에 충분한 크기로 잘라주세요(수동으로 자를 필요 없음)

2. 열기 include/extend.func.php (참고: 이 파일은 2차 개발용으로 준비되었으며 함수형 메서드 확장에 사용됩니다.)

마지막 ?>

앞에 다음 코드를 추가하세요. 코드는 다음과 같습니다:

function thumb($imgurl, $
width
, $
height
, $bg = true)
 {
 global $cfg_
main
site,$cfg_multi_site;
 $thumb = eregi("http://",$imgurl)?
str_replace
($cfg_mainsite,'',$imgurl):$imgurl;
 
list
($thumbname,$extname) = 
explode
('.',$thumb);
 $
new
thumb = $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: 썸네일 너비(Integer)
$height: 썸네일 높이(정수)
$bg: 공백 채우기 여부, 기본적으로 자동 채우기, 배경 채우기 색상은 시스템 액세서리 설정(true/false)에 있습니다

예:

길이와 너비가 100픽셀인 썸네일 호출:

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

원래 비율을 유지하고 자동으로 채우지 않음(권장하지 않음):

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

위 내용은 DedeCMS 썸네일의 왜곡 및 흐릿함에 대한 해결 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.