ホームページ  >  記事  >  バックエンド開発  >  PHP を使用して画像のサムネイルを生成する_PHP チュートリアル

PHP を使用して画像のサムネイルを生成する_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:27:44921ブラウズ

PHP は画像のサムネイルを生成します:

PHP を使用して画像サムネイルを生成するには、PHP サーバーに GD2 グラフィック ライブラリがインストールされていることを確認してください

クラスを使用して画像のサムネイルを生成します。以下のクラスのソースコードを参照してください。

このクラスメソッドを呼び出します:

resizeimage = new assignimage("画像ソースファイルアドレス", "200", "100", "0","サムネイルアドレス");

//上記の文を使用してサムネイルを生成するだけです。ソースファイルとサムネイルのアドレスは同じにすることができ、200 と 100 はそれぞれ幅と高さを表します

//次のクラスを使用して画像のサムネイルを生成します。

クラスサイズ変更画像

{

//画像タイプ

var 型;

//実際の幅

var幅;

//実際の身長

変数の高さ;

//幅を変更しました

varsize_width;

//変更後の身長

varsize_height;

//画像をトリミングするかどうか

バーカット;

//ソース画像

var srcimg;

//対象画像アドレス

var dstimg;

//一時的に作成した画像

ヴァルイム;

関数resizeimage(img, wid, hei,c,dstpath)

{

this->srcimg = img;

this->resize_width = wid;

this->resize_height = hei;

this->cut = c;

//写真の種類

this->type = strto lower(substr(strrchr(this->srcimg,"."),1));

//画像を初期化する

this->initi_img();

//対象画像アドレス

これ -> dst_img(dstpath);

//--

this->width = imagex(this->im);

this->height = imagey(this->im);

//画像を生成する

this->newimg();

ImageDestroy (this->im);

}

関数newimg()

{

//変更された画像の割合

resize_ratio = (this->resize_width)/(this->resize_height);

//実際の画像の比率

比率 = (この->幅)/(この->高さ);

if((this->cut)=="1")

//画像をトリミング

{

if(ratio>=resize_ratio)

//優先度高

{

newimg = imagecreatetruecolor(this->resize_width,this->resize_height);

Imagecopyresampled(newimg, this->im, 0, 0, 0, 0, this->resize_width, this->resize_height, ((this->height)*resize_ratio), this->height);

ImageJpeg (newimg,this->dstimg);

}

if(比率

//幅を優先

{

newimg = imagecreatetruecolor(this->resize_width,this->resize_height);

imagecopyresampled(newimg, this->im, 0, 0, 0, 0, this->resize_width, this->resize_height, this->width, ((this->width)/resize_ratio));

ImageJpeg (newimg,this->dstimg);

}

}

その他

//トリミングなし

{

if(ratio>=resize_ratio)

{

newimg = imagecreatetruecolor(this->resize_width,(this->resize_width)/ratio);

imagecopyresampled(newimg, this->im, 0, 0, 0, 0, this->resize_width, (this->resize_width)/ratio, this->width, this->height);

ImageJpeg (newimg,this->dstimg);

}

if(比率

{

newimg = imagecreatetruecolor((this->resize_height)*ratio,this->resize_height);

imagecopyresampled(newimg, this->im, 0, 0, 0, 0, (this->resize_height)*ratio, this->resize_height, this->width, this->height);

ImageJpeg (newimg,this->dstimg);

}

}

}

//画像を初期化する

関数initi_img()

{

if(this->type=="jpg")

{

this->im = imagecreatefromjpeg(this->srcimg);

}

if(this->type=="gif")

{

this->im = imagecreatefromgif(this->srcimg);

}

if(this->type=="png")

{

this->im = imagecreatefrompng(this->srcimg);

}

}

//画像ターゲットアドレス

関数dst_img(dstpath)

{

full_length = strlen(this->srcimg);

type_length = strlen(this->type);

name_length = full_length-type_length;

name = substr(this->srcimg,0,name_length-1);

this->dstimg = dstpath;

//これをエコー>dstimg;

}

}

?>

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/815031.html技術記事 PHP で画像サムネイルを生成する: PHP を使用して画像サムネイルを生成するには、PHP サーバーに GD2 グラフィックス ライブラリがインストールされていることを確認してください。クラスのソース コードを以下に示します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。