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/demo/phpThumb.demo.demo.php
phpThumb と .htaccess を使用してキャッシュしますサムネイル
原則: ユーザーは com/thumbs/images/image.50×50.jpg のような URL にアクセスし、スクリプトは your.com/images/image.jpg のサムネイルを生成し、それを your.com/thumbs に保存します。 /images/image.50×50.jpg にアクセスすると、次回アクセスするときに PHP を調整する必要はありません。
はじめに
約 1 年前、私は phpThumb という素晴らしいスクリプトに出会いました。これは、画像をスケーリングするためのオープンソース プロジェクトです。もちろん、GD2 または imagemagick(magickwand) を使用して同じことを行うこともできますが、phpThumb はそのために設計されています。使い方は非常に簡単です:
アクセス数が多いと維持できなくなります。 Apache はそれぞれの画像リクエストを処理する必要があるため、PHP を呼び出して phpThumb コードを解析します。 phpThumb には独自のキャッシュがありますが、キャッシュから読み取るかどうかを決定するために PHP を呼び出す必要があります。
パフォーマンスの問題を解決するために存在しない画像をサムネイルを生成できるスクリプトにリダイレクトするために mod_rewrite を使用している人を見たことがあります:
必要なもの:
Apache
mod_rewrite
PHP
これらは通常、仮想ホストで利用可能です。それはこの記事の範囲を超えています。
OK、やり方を教えてください!
phpThumb をアップロードする
ここから phpThumb をダウンロードします: http://phpthumb.sourceforge.net/ で、yoursite.com/phpthumb にアップロードします
Mod_Rewrite を設定します
新しい yoursite.com/thumbs/.htaccess を作成します:
RewriteEngine !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$index.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/thumbs/images/myimage.100×100.jpg にアクセスします
サムネイル ディレクトリを確認すると、そこにサムネイルがあるはずです。次回アクセスするときに PHP を調整する必要はありません。
その他の PHP 画像処理クラスや phpThumb パラメーターの使用法に関する関連記事については、PHP 中国語 Web サイトに注目してください。