国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 網(wǎng)站 > 建站經(jīng)驗(yàn) > 正文

php圖像處理類實(shí)例

2024-04-25 20:40:11
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本文實(shí)例講述了php圖像處理類。分享給大家供大家參考。具體如下:

<?php

/**

* Image 類

*/

class Image {

/**

* @var string $fileName 文件名

* @access private

*/

private $fileName = '';

/**

* @var gd resource $imageResource 原圖像

* @access private

*/

private $imageResource = NULL;

/**

* @var int $imageWidth 原圖像寬

* @access private

*/

private $imageWidth = NULL;

/**

* @var int $imageHeight 原圖像高

* @access private

*/

private $imageHeight = NULL;

/**

* @var int $imageType 原圖像類型

* @access private

*/

private $imageType = NULL;

/**

* @var int $imageWidth 原圖像寬

* @access private

*/

public $width = NULL;

/**

* @var int $imageHeight 原圖像高

* @access private

*/

public $height = NULL;

/**

* @var int $imageType 原圖像類型

* @access private

*/

public $type = NULL;

/**

* @var int $newResource 新圖像

* @access private

*/

private $newResource = NULL;

/**

* @var int $newResType 新圖像類型

* @access private

*/

private $newResType = NULL;

/**

* 構(gòu)造函數(shù)

* @param string $fileName 文件名

*/

public function __construct($fileName = NULL) {

$this->fileName = $fileName;

if ($this->fileName) {

$this->getSrcImageInfo();

}

}

/**

* 取源圖像信息

* @access private

* @return void

*/

private function getSrcImageInfo() {

$info = $this->getImageInfo();

$this->imageWidth = $info[0];

$this->imageHeight = $info[1];

$this->imageType = $info[2];

$this->width = $info[0];

$this->height = $info[1];

$this->type = $info[2];

}

/**

* 取圖像信息

* @param string $fileName 文件名

* @access private

* @return array

*/

private function getImageInfo($fileName = NULL) {

if ($fileName==NULL) {

$fileName = $this->fileName;

}

$info = getimagesize($fileName);

return $info;

}

/**

* 創(chuàng)建源圖像GD 資源

* @access private

* @return void

*/

private function createSrcImage () {

$this->imageResource = $this->createImageFromFile();

}

/**

* 跟據(jù)文件創(chuàng)建圖像GD 資源

* @param string $fileName 文件名

* @return gd resource

*/

public function createImageFromFile($fileName = NULL)

{

if (!$fileName) {

$fileName = $this->fileName;

$imgType = $this->imageType;

}

if (!is_readable($fileName) || !file_exists($fileName)) {

throw new Exception('Unable to open file "' . $fileName . '"');

}

if (!$imgType) {

$imageInfo = $this->getImageInfo($fileName);

$imgType = $imageInfo[2];

}

switch ($imgType) {

case IMAGETYPE_GIF:

$tempResource = imagecreatefromgif($fileName);

break;

case IMAGETYPE_JPEG:

$tempResource = imagecreatefromjpeg($fileName);

break;

case IMAGETYPE_PNG:

$tempResource = imagecreatefrompng($fileName);

break;

case IMAGETYPE_WBMP:

$tempResource = imagecreatefromwbmp($fileName);

break;

case IMAGETYPE_XBM:

$tempResource = imagecreatefromxbm($fileName);

break;

default:

throw new Exception('Unsupport image type');

}

return $tempResource;

}

/**

* 改變圖像大小

* @param int $width 寬

* @param int $height 高

* @param string $flag 一般而言,允許截圖則用4,不允許截圖則用1; 假設(shè)要求一個(gè)為4:3比例的圖像,則:4=如果太長(zhǎng)則自動(dòng)

主站蜘蛛池模板: 沈阳市| 铁岭县| 庆元县| 宁南县| 福安市| 昌平区| 平远县| 晋中市| 津南区| 桃江县| 延安市| 闻喜县| 炎陵县| 兴业县| 奉节县| 绥化市| 会理县| 汶川县| 新绛县| 都江堰市| 民乐县| 永登县| 保靖县| 临海市| 宜兰县| 阜平县| 湖北省| 涿州市| 托克托县| 封丘县| 施秉县| 武山县| 河东区| 噶尔县| 沾益县| 北海市| 公主岭市| 南皮县| 沅陵县| 翁牛特旗| 安乡县|