本文整理汇总了PHP中imagecreatefrombmp函数的典型用法代码示例。如果您正苦于以下问题:PHP imagecreatefrombmp函数的具体用法?PHP imagecreatefrombmp怎么用?PHP imagecreatefrombmp使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了imagecreatefrombmp函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: compressImage
function compressImage($ext, $uploadedfile, $path, $actual_image_name, $newwidth)
{
if ($ext == "jpg" || $ext == "jpeg") {
$src = imagecreatefromjpeg($uploadedfile);
} else {
if ($ext == "png") {
$src = imagecreatefrompng($uploadedfile);
} else {
if ($ext == "gif") {
$src = imagecreatefromgif($uploadedfile);
} else {
$src = imagecreatefrombmp($uploadedfile);
}
}
}
list($width, $height) = getimagesize($uploadedfile);
$newheight = $height / $width * $newwidth;
$tmp = imagecreatetruecolor($newwidth, $newheight);
imagecopyresampled($tmp, $src, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
$filename = $path . $newwidth . '_' . $actual_image_name;
//PixelSize_TimeStamp.jpg
imagejpeg($tmp, $filename, 100);
imagedestroy($tmp);
return $filename;
}
开发者ID:rajbhor,项目名称:students,代码行数:25,代码来源:compressImage.php
示例2: load
function load($img_name, $img_type = '')
{
if (!empty($img_type)) {
$this->_imagetype = $img_type;
} else {
$this->_imagetype = $this->get_type($img_name);
}
switch ($this->_imagetype) {
case 'gif':
if (function_exists('imagecreatefromgif')) {
$this->_img = imagecreatefromgif($img_name);
}
break;
case 'jpg':
case 'jpeg':
$this->_img = imagecreatefromjpeg($img_name);
break;
case 'bmp':
include_once dirname(__FILE__) . '/gdbmp.php';
$this->_img = imagecreatefrombmp($img_name);
break;
case 'png':
$this->_img = imagecreatefrompng($img_name);
break;
default:
$this->_img = imagecreatefromstring($img_name);
break;
}
$this->getxy();
}
开发者ID:thu0ng91,项目名称:jmc,代码行数:30,代码来源:imageresize.php
示例3: ConvertImage
private function ConvertImage($originalImage, $outputImage, $quality)
{
// jpg, png, gif or bmp?
$exploded = explode('.', $originalImage);
$ext = $exploded[count($exploded) - 1];
if (preg_match('/jpg|jpeg/i', $ext)) {
$imageTmp = imagecreatefromjpeg($originalImage);
} else {
if (preg_match('/png/i', $ext)) {
$imageTmp = imagecreatefrompng($originalImage);
} else {
if (preg_match('/gif/i', $ext)) {
$imageTmp = imagecreatefromgif($originalImage);
} else {
if (preg_match('/bmp/i', $ext)) {
$imageTmp = imagecreatefrombmp($originalImage);
} else {
return 0;
}
}
}
}
// quality is a value from 0 (worst) to 100 (best)
imagejpeg($imageTmp, $outputImage, $quality);
imagedestroy($imageTmp);
return 1;
}
开发者ID:Braunson,项目名称:InstagramUploader,代码行数:27,代码来源:InstagramUploader.php
示例4: convertImage
function convertImage($originalImage, $outputImage, $quality = 100)
{
$myfile = fopen($outputImage, "w");
// jpg, png, gif or bmp?
$exploded = explode('.', $originalImage);
$ext = $exploded[count($exploded) - 1];
if (preg_match('/jpg|jpeg/i', $ext)) {
$imageTmp = imagecreatefromjpeg($originalImage);
} else {
if (preg_match('/png/i', $ext)) {
$imageTmp = imagecreatefrompng($originalImage);
} else {
if (preg_match('/gif/i', $ext)) {
$imageTmp = imagecreatefromgif($originalImage);
} else {
if (preg_match('/bmp/i', $ext)) {
$imageTmp = imagecreatefrombmp($originalImage);
} else {
return 0;
}
}
}
}
imagejpeg($imageTmp, $outputImage, $quality);
imagedestroy($imageTmp);
return $outputImage;
}
开发者ID:princeraju,项目名称:compare_images,代码行数:27,代码来源:check_similar.php
示例5: load
public function load($path, $realname = null)
{
if (!file_exists($path)) {
return false;
}
if ($realname == null) {
$pinfo = pathinfo($path);
$ext = $pinfo["extension"];
} else {
$pinfo = pathinfo($realname);
$ext = $pinfo["extension"];
}
switch (strtolower($ext)) {
case "jpeg":
case "jpg":
$this->image = imagecreatefromjpeg($path);
break;
case "gif":
$this->image = imagecreatefromgif($path);
break;
case "png":
$this->image = imagecreatefrompng($path);
break;
case "bmp":
$this->image = imagecreatefrombmp($path);
break;
}
if ($this->image == null) {
return false;
}
return true;
}
开发者ID:roman-lucifer,项目名称:dfgears,代码行数:32,代码来源:Image.class.php
示例6: imageresize_temp
function imageresize_temp($image_url, $extension, $image_width = "260")
{
switch ($extension) {
case 'jpeg':
$simg = imagecreatefromjpeg($image_url);
break;
case 'jpg':
$simg = imagecreatefromjpeg($image_url);
break;
case 'png':
$simg = imagecreatefrompng($image_url);
break;
case 'bmp':
$simg = imagecreatefrombmp($image_url);
break;
case 'gif':
$simg = imagecreatefromgif($image_url);
break;
default:
return false;
}
$currwidth = imagesx($simg);
$currheight = imagesy($simg);
$zoom = $image_width / $currwidth;
$newwidth = $image_width;
$newheight = $currheight * $zoom;
$dimg = imagecreatetruecolor($newwidth, $newheight);
imagecopyresampled($dimg, $simg, 0, 0, 0, 0, $newwidth, $newheight, $currwidth, $currheight);
$filename = '/tmp/' . time() . '.' . $extension;
imagejpeg($dimg, $filename);
imagedestroy($simg);
imagedestroy($dimg);
return $filename;
}
开发者ID:optiva,项目名称:xGlide,代码行数:34,代码来源:lib_imageresize.php
示例7: convertImage
function convertImage($originalImage, $outputImage, $quality)
{
$exploded = explode('.', $originalImage);
$ext = $exploded[count($exploded) - 1];
if (preg_match('/jpg|jpeg/i', $ext)) {
$imageTmp = imagecreatefromjpeg($originalImage);
} else {
if (preg_match('/png/i', $ext)) {
$imageTmp = imagecreatefrompng($originalImage);
} else {
if (preg_match('/gif/i', $ext)) {
$imageTmp = imagecreatefromgif($originalImage);
} else {
if (preg_match('/bmp/i', $ext)) {
$imageTmp = imagecreatefrombmp($originalImage);
} else {
return 0;
}
}
}
}
imagejpeg($imageTmp, $outputImage, $quality);
imagedestroy($imageTmp);
print $outputImage;
}
开发者ID:JoshFerguson,项目名称:PccBay,代码行数:25,代码来源:index.php
示例8: open_image
function open_image($file)
{
list($width, $height, $type, $attr) = getimagesize($file);
//echo "Type: ".$type."<br />";
// http://www.php.net/manual/en/function.exif-imagetype.php
/*1 IMAGETYPE_GIF
2 IMAGETYPE_JPEG
3 IMAGETYPE_PNG
4 IMAGETYPE_SWF
5 IMAGETYPE_PSD
6 IMAGETYPE_BMP
7 IMAGETYPE_TIFF_II (intel byte order)
8 IMAGETYPE_TIFF_MM (motorola byte order)
9 IMAGETYPE_JPC
10 IMAGETYPE_JP2
11 IMAGETYPE_JPX
12 IMAGETYPE_JB2
13 IMAGETYPE_SWC
14 IMAGETYPE_IFF
15 IMAGETYPE_WBMP
16 IMAGETYPE_XBM
17 IMAGETYPE_ICO */
if ($type == 2) {
$im = @imagecreatefromjpeg($file);
} elseif ($type == 1) {
$im = @imagecreatefromgif($file);
} elseif ($type == 3) {
$im = @imagecreatefrompng($file);
} elseif ($type == 15) {
$im = @imagecreatefromwbmp($file);
} elseif ($type == 6) {
$im = @imagecreatefrombmp($file);
} elseif ($type == 16) {
$im = @imagecreatefromxbm($file);
} else {
$im = @imagecreatefromstring(file_get_contents($file));
}
/*if ( $type == IMAGETYPE_JPEG ) {
$im = @imagecreatefromjpeg($file);
} elseif ( $type == IMAGETYPE_GIF ) {
$im = @imagecreatefromgif($file);
} elseif ( $type == IMAGETYPE_PNG ) {
$im = @imagecreatefrompng($file);
} elseif ( $type == IMAGETYPE_WBMP ) {
$im = @imagecreatefromwbmp($file);
} elseif ( $type == IMAGETYPE_BMP ) {
$im = @imagecreatefrombmp($file);
} elseif ( $type == IMAGETYPE_XBM ) {
$im = @imagecreatefromxbm($file);
} else {
$im = @imagecreatefromstring(file_get_contents($file));
}*/
if ($im !== false) {
return $im;
} else {
die(throwError("Unable to open_image"));
}
return false;
}
开发者ID:highchair,项目名称:hcd-trunk,代码行数:59,代码来源:image.php
示例9: makeThumb
function makeThumb($path, $size, $mime = FALSE)
{
// Verifica se é uma imagem
// @since rev 1
if ($mime === FALSE) {
$mime = mime_content_type($path);
}
if (strpos($mime, "jpeg") !== FALSE) {
$buffer = imagecreatefromjpeg($path);
} elseif (strpos($mime, "bmp") !== FALSE) {
$buffer = imagecreatefrombmp($path);
} elseif (strpos($mime, "gif") !== FALSE) {
$buffer = imagecreatefromgif($path);
} elseif (strpos($mime, "png") !== FALSE) {
$buffer = imagecreatefrompng($path);
} else {
return FALSE;
}
if ($buffer === FALSE) {
return FALSE;
}
// Busca o tamanho da imagem
// @since rev 1
$x = $origem_x = ImagesX($buffer);
$y = $origem_y = ImagesY($buffer);
// Verifica qual deve ser a proporção
// @since rev 1
if ($x >= $y) {
if ($x > $size) {
$x1 = (int) ($x * ($size / $x));
$y1 = (int) ($y * ($size / $x));
} else {
$x1 = $x;
$y1 = $y;
}
} else {
if ($y > $size) {
$x1 = (int) ($x * ($size / $y));
$y1 = (int) ($y * ($size / $y));
} else {
$x1 = $x;
$y1 = $y;
}
}
// Muda o tamanho da imagem
// @since rev 1
$image = ImageCreateTrueColor($x1, $y1);
if ($image === FALSE) {
return FALSE;
}
ImageCopyResampled($image, $buffer, 0, 0, 0, 0, $x1 + 1, $y1 + 1, $origem_x, $origem_y);
// Libera recursos
// @since rev 1
ImageDestroy($buffer);
// Retorna o resource
// @since rev 1
return $image;
}
开发者ID:BGCX067,项目名称:fabulafw-svn-to-git,代码行数:58,代码来源:functions.extras.php
示例10: INSERT
/**
* Para insertar un nuevo registro, debo pasar la ruta de
* una imagen válida (puede ser de un archivo local o uno remoto con http://...)
*/
public static function INSERT($image_path)
{
// Compruebo si el archivo es en realidad una imagen:
//$finfo = finfo_open(FILEINFO_MIME_TYPE);
//$mime = finfo_file($finfo, $image_path);
$temp_hash = md5(microtime());
Rack::Write('temp', $temp_hash, $image_path);
$temp_path = Rack::Path('temp', $temp_hash);
$is = getimagesize($temp_path);
$mime = $is['mime'];
switch ($mime) {
case 'image/jpeg':
$gd = @imagecreatefromjpeg($temp_path);
break;
case 'image/png':
$gd = @imagecreatefrompng($temp_path);
break;
case 'image/gif':
$gd = @imagecreatefromgif($temp_path);
break;
case 'image/bmp':
$gd = @imagecreatefrombmp($temp_path);
break;
default:
return null;
}
if (is_resource($gd)) {
$width = imagesx($gd);
$height = imagesy($gd);
$hash = md5_file($temp_path);
$list = Image::SELECT("Hash='" . Database::escape($hash) . "'");
if (count($list)) {
// La imagen ya existe :S
$image = $list[0];
$image->_setCounter($image->getCounter() + 1);
} else {
// Creo un nuevo registro de imagen :)
$image = parent::INSERT();
$image->_setWidth($width);
$image->_setHeight($height);
$image->_setMime($mime);
$image->_setHash($hash);
$image->_setSize(@filesize($temp_path));
$image->_setCounter(1);
// Copiar imagen a la carpeta de imágenes con el id de $image->getId(); (o con el hash)
Rack::Write('img', md5($image->ID()), $temp_path);
}
Rack::Remove('temp', $temp_hash);
return $image;
} else {
// Error al abrir la imagen
Rack::Remove('temp', $temp_hash);
return null;
}
}
开发者ID:fulldump,项目名称:8,代码行数:59,代码来源:extended.class.php
示例11: init_img
private function init_img()
{
if ($this->type == 'jpeg') {
$this->tem_file = imagecreatefromjpeg($this->sur_file);
} elseif ($this->type == 'jpg') {
$this->tem_file = imagecreatefromjpeg($this->sur_file);
} elseif ($this->type == 'gif') {
$this->tem_file = imagecreatefromgif($this->sur_file);
} elseif ($this->type == 'png') {
$this->tem_file = imagecreatefrompng($this->sur_file);
} elseif ($this->type == 'bmp') {
$this->tem_file = imagecreatefrombmp($this->sur_file);
}
}
开发者ID:edmundwong,项目名称:V604,代码行数:14,代码来源:haodian_pc.class.php
示例12: dupeImage
public function dupeImage()
{
$raw_file = DB::get_item_collection_path($this->img_file);
$file_path = Client::getFile($raw_file . '.bmp');
if (file_get_contents($file_path)) {
header('Content-type: image/png');
$im = imagecreatefrombmp($file_path);
//$purple = imagecolorallocate($im, 255, 0, 255);
//imagecolortransparent($im,$purple);
imagepng($im);
imagedestroy($im);
} else {
echo "File does not exist!";
}
}
开发者ID:Cavalero,项目名称:CORA,代码行数:15,代码来源:itemcollection.php
示例13: createImage
private function createImage()
{
switch ($this->imagetype) {
case 1:
$image = imagecreatefromgif($this->filename);
break;
case 2:
$image = imagecreatefromjpeg($this->filename);
break;
case 3:
$image = imagecreatefrompng($this->filename);
break;
case 6:
$image = imagecreatefrombmp($this->filename);
break;
}
return $image;
}
开发者ID:burasuk,项目名称:php-easy-image-manager,代码行数:18,代码来源:class.Image.php
示例14: getImage
private function getImage()
{
$this->image_info = getimagesize($this->filename);
$this->image_type = $this->image_info[2];
switch ($this->image_type) {
case IMAGETYPE_JPEG:
$this->image = imagecreatefromjpeg($this->filename);
break;
case IMAGETYPE_GIF:
$this->image = imagecreatefromgif($this->filename);
break;
case IMAGETYPE_PNG:
$this->image = imagecreatefrompng($this->filename);
break;
case IMAGETYPE_BMP:
$this->image = imagecreatefrombmp($this->filename);
break;
}
}
开发者ID:karczmarczyk,项目名称:photo-archive,代码行数:19,代码来源:Image.php
示例15: load_image
function load_image($file)
{
$ext = substr($file, strrpos($file, ".") + 1);
$ext = strtolower($ext);
$src_img = false;
if ($ext == "jpg" || $ext == "jpeg") {
$src_img = imagecreatefromjpeg($file);
}
if ($ext == "png") {
$src_img = imagecreatefrompng($file);
}
if ($ext == "gif") {
$src_img = imagecreatefromgif($file);
}
if ($ext == "bmp") {
$src_img = imagecreatefrombmp($file);
}
return $src_img;
}
开发者ID:vishva8kumara,项目名称:tinyF-x2-,代码行数:19,代码来源:image_magic.php
示例16: convert_to_jpeg
/**
* Конвертация изображений с разным расширением в jpeg
*
* @param string $source
* @param string $target_directory
* @param integer $quality
* @param boolean $remove_source_image
* @return boolean
* @throws Kohana_Exception
*/
public static function convert_to_jpeg($source, $target_directory = NULL, $quality = 100, $remove_source_image = FALSE)
{
if (!file_exists($source)) {
return FALSE;
}
$ext = pathinfo($source, PATHINFO_EXTENSION);
$filename = pathinfo($source, PATHINFO_FILENAME);
if ($target_directory !== NULL) {
if (!is_dir($target_directory) and is_writable($target_directory)) {
mkdir($target_directory, 0777);
}
} else {
$target_directory = pathinfo($source, PATHINFO_DIRNAME);
}
if (!is_writable($target_directory)) {
throw new Kohana_Exception('Unable to write to the target directory :resource', array(':resource' => $target_directory));
}
if (Valid::regex($ext, '/jpg|jpeg/i')) {
$image_tmp = imagecreatefromjpeg($source);
} else {
if (Valid::regex($ext, '/png/i')) {
$image_tmp = imagecreatefrompng($source);
} else {
if (Valid::regex($ext, '/gif/i')) {
$image_tmp = imagecreatefromgif($source);
} else {
if (Valid::regex($ext, '/bmp/i')) {
$image_tmp = imagecreatefrombmp($source);
} else {
return FALSE;
}
}
}
}
// quality is a value from 0 (worst) to 100 (best)
imagejpeg($image_tmp, $dirname . $filename . '.jpg', $quality);
imagedestroy($image_tmp);
if ($remove_source_image === TRUE) {
unlink($source);
}
return TRUE;
}
开发者ID:ZerGabriel,项目名称:cms-1,代码行数:52,代码来源:image.php
示例17: mkthumb
function mkthumb($orig, $thumb, $maxLength)
{
$ext = strtolower(strrchr($orig, "."));
//依照副檔名, 使用不同函式將原始照片載入記憶體
switch ($ext) {
case '.jpg':
$picSrc = imagecreatefromjpeg($orig);
break;
case '.png':
$picSrc = imagecreatefrompng($orig);
break;
case '.gif':
$picSrc = imagecreatefromgif($orig);
break;
case '.bmp':
$picSrc = imagecreatefrombmp($orig);
break;
default:
//傳回錯誤訊息
return "不支援 {$ext} 圖檔格式";
}
//取得原始圖的高度 ($picSrc_y) 與寬度 ($picSrc_x)
$picSrc_x = imagesx($picSrc);
$picSrc_y = imagesy($picSrc);
//依照 $maxLength 參數, 計算縮圖應該使用的
//高度 ($picDst_y) 與寬度 ($picDst_x)
if ($picSrc_x > $picSrc_y) {
$picDst_x = $maxLength;
//intval() 可取得數字的整數部分
$picDst_y = intval($picSrc_y / $picSrc_x * $maxLength);
} else {
$picDst_y = $maxLength;
$picDst_x = intval($picSrc_x / $picSrc_y * $maxLength);
}
//在記憶體中建立新圖
$picDst = imagecreatetruecolor($picDst_x, $picDst_y);
//將原始照片複製並且縮小到新圖
imagecopyresized($picDst, $picSrc, 0, 0, 0, 0, $picDst_x, $picDst_y, $picSrc_x, $picSrc_y);
//將新圖寫入 $thumb 參數指定的縮圖檔名
imagejpeg($picDst, $thumb);
return 'ok';
}
开发者ID:aa020289,项目名称:ec008,代码行数:42,代码来源:C01_DB.php
示例18: make_thumb
function make_thumb($image_path, $image_name, $height, $width)
{
// echo $image_path."-".$image_name."-".$height."-".$width;
/* read the source image */
$ext = pathinfo($image_name, PATHINFO_EXTENSION);
if ($ext == 'jpg' || $ext == 'jpeg') {
$source_image = imagecreatefromjpeg($image_name);
} elseif ($ext == 'png') {
$source_image = imagecreatefrompng($image_name);
} elseif ($ext == 'gif') {
$source_image = imagecreatefromgif($image_name);
} elseif ($ext == 'bmp') {
$source_image = imagecreatefrombmp($image_name);
}
$actual_width = imagesx($source_image);
$actual_height = imagesy($source_image);
/* create a new, "virtual" image */
$virtual_image = imagecreatetruecolor($width, $height);
Imagefill($virtual_image, 0, 0, imagecolorallocate($virtual_image, 255, 255, 255));
/* copy source image at a resized size */
imagecopyresampled($virtual_image, $source_image, 0, 0, 0, 0, $width, $height, $actual_width, $actual_height);
/* create the physical thumbnail image to its destination */
imagejpeg($virtual_image, $image_path);
}
开发者ID:gorgeousdreams,项目名称:Codeigniter-datatech,代码行数:24,代码来源:image_helper.php
示例19: imgTableizr
function imgTableizr($imgSrc, $quality = 'medium', $width = 'no-resize')
{
global $colspan, $prevHex, $prevRGB, $currentHex, $currentRGB, $tdCount, $output;
$output = array();
$explodedSrc = explode('.', $imgSrc);
$ext = end($explodedSrc);
switch ($ext) {
case 'jpg' || 'jpeg':
$img = imagecreatefromjpeg($imgSrc);
break;
case 'png':
$img = imagecreatefrompng($imgSrc);
break;
case 'gif':
$img = imagecreatefromgif($imgSrc);
break;
case 'bmp':
$img = imagecreatefrombmp($imgSrc);
break;
default:
return false;
}
if ($width != 'no-resize' && is_int($width) && $width > 0) {
$img = imagescale($img, $width);
}
switch ($quality) {
case 'medium':
$threshold = 20;
break;
case 'low':
$threshold = 30;
break;
case 'high':
$threshold = 10;
break;
case 'maximum':
$threshold = 0;
break;
case is_int($quality) && $quality >= 0:
$threshold = $quality;
break;
case is_int($quality) && $quality < 0:
$threshold = 0;
break;
default:
return false;
}
$imgW = imagesx($img);
$imgH = imagesy($img);
array_push($output, '<table style="border-spacing:0;width:' . $imgW . 'px;height:' . $imgH . 'px;margin:0;padding:0;">');
for ($y = 0; $imgH > $y; $y++) {
array_push($output, '<tr>');
for ($x = 0; $imgW > $x; $x++) {
$rgb = imagecolorat($img, $x, $y);
$currentRGB = array(0 => $rgb >> 16 & 0xff, 1 => $rgb >> 8 & 0xff, 2 => $rgb & 0xff);
$currentHex = rgb2hex($currentRGB);
if ($x != 0) {
if (abs($currentRGB[0] - $prevRGB[0]) <= $threshold) {
if (abs($currentRGB[1] - $prevRGB[1]) <= $threshold) {
if (abs($currentRGB[2] - $prevRGB[2]) <= $threshold) {
$colspan++;
if ($x + 1 == $imgW) {
generateCell();
}
} else {
generateCell();
}
} else {
generateCell();
}
} else {
generateCell();
}
} else {
$prevHex = $currentHex;
$prevRGB = $currentRGB;
}
}
array_push($output, '</tr>');
}
array_push($output, '</table>');
imagedestroy($img);
echo implode('', $output);
}
开发者ID:patmcneil,项目名称:imgTableizr,代码行数:84,代码来源:imgTableizr.php
示例20: resampleImage
function resampleImage($path, $new_path, $sizew, $sizeh = false)
{
if (false == $sizeh) {
$sizeh = $sizew;
}
if (!isset($sizew) || $sizew < 50) {
$sizew = 50;
}
if (!isset($sizeh) || $sizeh < 50) {
$sizeh = 50;
}
$itype = 2;
if (function_exists('exif_imagetype')) {
$itype = exif_imagetype($path);
switch ($itype) {
case IMAGETYPE_JPEG:
$img = imagecreatefromjpeg($path);
break;
case IMAGETYPE_GIF:
$img = imagecreatefromgif($path);
break;
case IMAGETYPE_PNG:
$img = imagecreatefrompng($path);
break;
case IMAGETYPE_BMP:
$img = imagecreatefrombmp($path);
break;
default:
return false;
}
if (!$img) {
return false;
}
} else {
if (function_exists('getimagesize')) {
@($info = getimagesize($path));
if (!$info || empty($info['mime'])) {
return false;
}
$itype = $info['mime'];
switch ($itype) {
case 'image/jpeg':
$img = imagecreatefromjpeg($path);
break;
case 'image/gif':
$img = imagecreatefromgif($path);
break;
case 'image/png':
$img = imagecreatefrompng($path);
break;
case 'image/bmp':
$img = imagecreatefrombmp($path);
break;
default:
return false;
}
} else {
$img = imagecreatefromjpeg($path);
}
}
$w = imagesx($img);
$h = imagesy($img);
if ($w < $sizew && $h < $sizeh) {
$nw = $w;
$nh = $h;
} else {
if ($w / $sizew < $h / $sizeh) {
$nw = intval($w * $sizeh / $h);
$nh = $sizeh;
} else {
$nw = $sizew;
$nh = intval($h * $sizew / $w);
}
}
$dest = imagecreatetruecolor($nw, $nh);
switch ($itype) {
case 'image/gif':
case 'image/png':
case 3:
case 1:
imagecolortransparent($dest, imagecolortransparent($img));
imagealphablending($dest, false);
imagesavealpha($dest, true);
break;
default:
break;
}
imagecopyresampled($dest, $img, 0, 0, 0, 0, $nw, $nh, $w, $h);
$quality_jpeg = Config::read('quality_jpeg');
if (isset($quality_jpeg)) {
$quality_jpeg = intval($quality_jpeg) < 0 || intval($quality_jpeg) > 100 ? 75 : intval($quality_jpeg);
}
$quality_png = Config::read('quality_png');
if (isset($quality_png)) {
$quality_png = intval($quality_png) < 0 || intval($quality_png) > 9 ? 9 : intval($quality_png);
}
switch ($itype) {
case 1:
case 'image/gif':
imagegif($dest, $new_path);
//.........这里部分代码省略.........
开发者ID:VictorSproot,项目名称:AtomXCMS-2,代码行数:101,代码来源:thumb.php
注:本文中的imagecreatefrombmp函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论