phpThumb의 여러 기본 매개변수
유용한 매개변수 목록:
src: 대상 이미지의 주소
w: 출력 이미지의 너비
h: 출력 이미지의 높이( 지정하지 않으면 w 매개변수에 따라 크기가 조정됩니다.)
q: 출력이 JPG 형식인 경우 출력 품질을 지정할 수 있습니다.
bg: 출력 중 배경(필요한 경우)
sw , sh, sx, sy: 부분 출력, 너비, 높이, 시작 위치
f: 출력 형식, jpeg, png, gif, ico 가능
sfn: gif 애니메이션에서 특정 프레임 출력
fltr []: 필터, 캔 샤프닝, 블러링, 회전, 워터마크, 테두리, 마스킹, 색상 조정 등 다양한 효과가 있습니다.
자세한 효과는 공식 루틴을 참고하세요:
http:// phpthumb.sourceforge.net/demo/ 데모/phpThumb.demo.demo.php
phpThumb 및 .htaccess를 사용하여 썸네일 캐시
원칙: 사용자는 your.com/thumbs/images/image.50과 같은 URL을 방문합니다. ×50.jpg, 스크립트는 .com/images/image.jpg 썸네일을 생성하여 your.com/thumbs/images/image.50×50.jpg에 저장합니다. 다음에 PHP를 조정할 필요가 없습니다. 방문하다.
소개
약 1년 전 저는 이미지 크기 조정을 위한 오픈 소스 프로젝트인 phpThumb이라는 멋진 스크립트를 발견했습니다. 물론 GD2나 imagemagick(magickwand)을 사용하여 동일한 작업을 수행할 수 있지만 phpThumb은 이를 위해 설계되었습니다. 사용 방법은 매우 간단합니다.
방문 횟수가 많으면 사용할 수 없습니다. 이를 유지하려면 Apache가 각 이미지 요청에 대해 phpThumb 코드를 구문 분석하도록 PHP를 조정해야 하기 때문입니다. phpThumb에 자체 캐시가 있더라도 여전히 PHP를 호출하여 캐시에서 읽을지 여부를 결정해야 합니다.
누군가가 mod_rewrite를 사용하여 존재하지 않는 이미지를 썸네일을 생성할 수 있는 스크립트로 리디렉션하여 성능 문제를 해결하는 것을 본 적이 있습니다.
필요한 사항:
Apache
mod_rewrite
PHP
이런 것들이 필요합니다. 일반적으로 가상 호스트에서 사용할 수 있습니다. 설치 방법은 이 문서의 범위를 벗어납니다.
좋아요, 어떻게 하는지 알려주세요!
phpThumb 업로드
여기에서 phpThumb을 다운로드하세요: http://phpthumb.sourceforge.net/ 그리고 yoursite.com/phpthumb에 업로드하세요
Mod_Rewrite 구성
새 yoursite.com/thumbs/.htaccess 만들기 :
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ 인덱스. php?thumb=$1 [L,QSA]
새 썸네일 생성 스크립트 만들기:
yoursite.com/thumbs/index.php 만들기
$thumb = $_GET['thumb']; if (!$thumb) { exit; } // $thumb_array = explode('.',$thumb); $image = '../'; foreach($thumb_array as $k=>$thumb_part){ if ($k != count($thumb_array)-2) { $image .= $thumb_part . '.'; } } $image = substr($image,0,-1); list($width,$height) = explode('x',$thumb_array[count($thumb_array)-2]); // if (file_exists($image)) { require('../phpthumb/phpthumb.class.php'); $phpThumb = new phpThumb(); $phpThumb->setSourceFilename($image); $phpThumb->setParameter('w',$width); $phpThumb->setParameter('h',$height); //$phpThumb->setParameter('far','C'); // scale outside //$phpThumb->setParameter('bg','<SPAN class=caps>FFFFFF</SPAN>'); // scale outside if ($phpThumb->GenerateThumbnail()) { mkdir(dirname($thumb),0777,true); if ($phpThumb->RenderToFile($thumb)) { header('Location: /thumbs/'.$thumb); exit; } } }
테스트해 보세요. !
yoursite.com/images/myimage.jpg에 이미지 업로드
브라우저를 열고 yoursite.com/thumbs/images/myimage.100×100.jpg를 방문하세요.
thumbs 디렉토리를 확인하세요. 거기 썸네일. 다음에 방문할 때 PHP를 조정할 필요가 없습니다.
더 많은 PHP 이미지 처리 클래스, phpThumb 매개변수 사용법 소개 및 관련 기사를 보려면 PHP 중국어 웹사이트를 주목하세요!