本文整理汇总了PHP中imageCreateFromJpeg函数的典型用法代码示例。如果您正苦于以下问题:PHP imageCreateFromJpeg函数的具体用法?PHP imageCreateFromJpeg怎么用?PHP imageCreateFromJpeg使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了imageCreateFromJpeg函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: imageResize
function imageResize($file, $info, $destination)
{
$height = $info[1];
//высота
$width = $info[0];
//ширина
//определяем размеры будущего превью
$y = 150;
if ($width > $height) {
$x = $y * ($width / $height);
} else {
$x = $y / ($height / $width);
}
$to = imageCreateTrueColor($x, $y);
switch ($info['mime']) {
case 'image/jpeg':
$from = imageCreateFromJpeg($file);
break;
case 'image/png':
$from = imageCreateFromPng($file);
break;
case 'image/gif':
$from = imageCreateFromGif($file);
break;
default:
echo "No prevue";
break;
}
imageCopyResampled($to, $from, 0, 0, 0, 0, imageSX($to), imageSY($to), imageSX($from), imageSY($from));
imagepng($to, $destination);
imagedestroy($from);
imagedestroy($to);
}
开发者ID:agronom81,项目名称:Lessons-about-PHP--photo-gallery,代码行数:33,代码来源:workwithimage.php
示例2: image_createThumb
function image_createThumb($src, $dest, $maxWidth, $maxHeight, $quality = 75)
{
if (file_exists($src) && isset($dest)) {
// path info
$destInfo = pathInfo($dest);
// image src size
$srcSize = getImageSize($src);
// image dest size $destSize[0] = width, $destSize[1] = height
$srcRatio = $srcSize[0] / $srcSize[1];
// width/height ratio
$destRatio = $maxWidth / $maxHeight;
if ($destRatio > $srcRatio) {
$destSize[1] = $maxHeight;
$destSize[0] = $maxHeight * $srcRatio;
} else {
$destSize[0] = $maxWidth;
$destSize[1] = $maxWidth / $srcRatio;
}
// path rectification
if ($destInfo['extension'] == "gif") {
$dest = substr_replace($dest, 'jpg', -3);
}
// true color image, with anti-aliasing
$destImage = imageCreateTrueColor($destSize[0], $destSize[1]);
// imageAntiAlias($destImage,true);
// src image
switch ($srcSize[2]) {
case 1:
//GIF
$srcImage = imageCreateFromGif($src);
break;
case 2:
//JPEG
$srcImage = imageCreateFromJpeg($src);
break;
case 3:
//PNG
$srcImage = imageCreateFromPng($src);
break;
default:
return false;
break;
}
// resampling
imageCopyResampled($destImage, $srcImage, 0, 0, 0, 0, $destSize[0], $destSize[1], $srcSize[0], $srcSize[1]);
// generating image
switch ($srcSize[2]) {
case 1:
case 2:
imageJpeg($destImage, $dest, $quality);
break;
case 3:
imagePng($destImage, $dest);
break;
}
return true;
} else {
return 'No such File';
}
}
开发者ID:rolfvandervleuten,项目名称:DeepskyLog,代码行数:60,代码来源:resize.php
示例3: get_any_type
protected function get_any_type($srcpath)
{
try {
$this->check_file($srcpath);
$srcSize = getImageSize($srcpath);
switch ($srcSize[2]) {
case 1:
$img = imageCreateFromGif($srcpath);
break;
case 2:
$img = imageCreateFromJpeg($srcpath);
break;
case 3:
$img = imageCreateFromPng($srcpath);
break;
default:
throw new Imgdexception('not possible to get any type - srcpath:' . $srcpath);
break;
}
$image['width'] = $srcSize[0];
$image['height'] = $srcSize[1];
$image['img'] = $img;
return $image;
} catch (Imgdexception $e) {
$e->print_debug(__FILE__, __LINE__);
return false;
}
}
开发者ID:debugteam,项目名称:baselib,代码行数:28,代码来源:Imagegd.php
示例4: load
function load()
{
if ($this->loaded) {
return true;
}
//$size = $this->get_size();
//if (!$size) throw new exception("Failed loading image");
list($this->w, $this->h, $this->type) = getImageSize($this->src);
switch ($this->type) {
case 1:
$this->img = imageCreateFromGif($this->src);
break;
case 2:
$this->img = imageCreateFromJpeg($this->src);
break;
case 3:
$this->img = imageCreateFromPng($this->src);
break;
default:
throw new exception("Unsuported image type");
break;
}
$this->loaded = true;
return true;
}
开发者ID:laiello,项目名称:phpbf,代码行数:25,代码来源:image.php
示例5: anyImgFile2Im
/**
* Using GD lib for get and transform images.
* @see http://php.net/manual/en/function.imagecreatefromjpeg.php#110547
*/
function anyImgFile2Im($fname = NULL)
{
if ($fname) {
$this->setFile($fname);
}
$allowedTypes = [1, 2, 3, 6];
// gif,jpg,png,bmp
if (!in_array($this->ftype, $allowedTypes)) {
return false;
}
switch ($this->ftype) {
case 1:
$im = imageCreateFromGif($this->fname);
break;
case 2:
$im = imageCreateFromJpeg($this->fname);
break;
case 3:
$im = imageCreateFromPng($this->fname);
// echo "\n degug {$this->fname}";
break;
case 6:
$im = imageCreateFromBmp($this->fname);
break;
}
return $im;
}
开发者ID:ppKrauss,项目名称:open-data-gallery,代码行数:31,代码来源:ImgCmp.php
示例6: load
/**
* Load image from $fileName
*
* @throws Zend_Image_Driver_Exception
* @param string $fileName Path to image
*/
public function load($fileName)
{
parent::load($fileName);
$this->_imageLoaded = false;
$info = getimagesize($fileName);
switch ($this->_type) {
case 'jpg':
$this->_image = imageCreateFromJpeg($fileName);
if ($this->_image !== false) {
$this->_imageLoaded = true;
}
break;
case 'png':
$this->_image = imageCreateFromPng($fileName);
if ($this->_image !== false) {
$this->_imageLoaded = true;
}
break;
case 'gif':
$this->_image = imageCreateFromGif($fileName);
if ($this->_image !== false) {
$this->_imageLoaded = true;
}
break;
}
}
开发者ID:fredcido,项目名称:simuweb,代码行数:32,代码来源:Gd.php
示例7: make_thumb
/**
* Generate a thumbnail from an image
*
*/
function make_thumb($source, $destination, $size)
{
// Check if GD is installed
if (extension_loaded('gd') && function_exists('imageCreateFromJpeg')) {
// First figure out the size of the thumbnail
list($original_x, $original_y) = getimagesize($source);
if ($original_x > $original_y) {
$thumb_w = $size;
$thumb_h = $original_y * ($size / $original_x);
}
if ($original_x < $original_y) {
$thumb_w = $original_x * ($size / $original_y);
$thumb_h = $size;
}
if ($original_x == $original_y) {
$thumb_w = $size;
$thumb_h = $size;
}
// Now make the thumbnail
$source = imageCreateFromJpeg($source);
$dst_img = ImageCreateTrueColor($thumb_w, $thumb_h);
imagecopyresampled($dst_img, $source, 0, 0, 0, 0, $thumb_w, $thumb_h, $original_x, $original_y);
imagejpeg($dst_img, $destination);
// Clear memory
imagedestroy($dst_img);
imagedestroy($source);
// Return true
return true;
} else {
return false;
}
}
开发者ID:pixelhulk,项目名称:LEPTON,代码行数:36,代码来源:function.make_thumb.php
示例8: imageCreateFromAny
function imageCreateFromAny($filepath)
{
list($w, $h, $t, $attr) = getimagesize($filepath);
// [] if you don't have exif you could use getImageSize()
$allowedTypes = array(IMG_GIF, IMG_JPG, IMG_PNG, IMG_WBMP);
if (!in_array($t, $allowedTypes)) {
return false;
}
switch ($t) {
case IMG_GIF:
$im = imageCreateFromGif($filepath);
echo 'type image GIF';
break;
case IMG_JPG:
$im = imageCreateFromJpeg($filepath);
echo 'type image JPG';
break;
case IMG_PNG:
$im = imageCreateFromPng($filepath);
echo 'type image PNG';
break;
case IMG_WBMP:
$im = imageCreateFromwBmp($filepath);
echo 'type image BMP';
break;
}
echo 'source : ' . $filepath . ' | im : ' . $im;
return $im;
}
开发者ID:didier-gilles-65,项目名称:bet,代码行数:29,代码来源:upload_etiquette.php
示例9: imagecreator
function imagecreator($filename)
{
$nx = 16;
$ny = 8;
$zoom = 4;
$im = imageCreateFromJpeg("uploads/" . $filename);
$temp_dir = "dir_{$filename}";
mkdir("uploads/" . $temp_dir, 0744);
$temp_dir = "uploads/" . $temp_dir;
//return;
$imSX = imageSX($im);
$imSY = imageSY($im);
$kusokX = $imSX / $nx;
$kusokY = $imSY / $ny;
for ($k = 0; $k < $ny; $k++) {
for ($i = 0; $i < $nx; $i++) {
$im2 = imagecreatetruecolor(512, 512);
imagecopyresized($im2, $im, 0, 0, $i * $kusokX, $k * $kusokY, 512, 512, $kusokX, $kusokY);
//imageInterlace($im2, 1);
imagejpeg($im2, "{$temp_dir}/" . "1_{$zoom}_{$i}_{$k}_.jpeg", 90);
$im2 = null;
}
}
$factor = 2;
$zoom = $zoom - 1;
for ($k = 0; $k < $ny / $factor; $k++) {
for ($i = 0; $i < $nx / $factor; $i++) {
$im2 = imagecreatetruecolor(512, 512);
imagecopyresized($im2, $im, 0, 0, $i * $kusokX * $factor, $k * $kusokY * $factor, 512, 512, $kusokX * $factor, $kusokY * $factor);
//imageInterlace($im2, 1);
imagejpeg($im2, "{$temp_dir}/" . "1_{$zoom}_{$i}_{$k}_.jpeg", 90);
$im2 = null;
}
}
$factor = 4;
$zoom = $zoom - 1;
for ($k = 0; $k < $ny / $factor; $k++) {
for ($i = 0; $i < $nx / $factor; $i++) {
$im2 = imagecreatetruecolor(512, 512);
imagecopyresized($im2, $im, 0, 0, $i * $kusokX * $factor, $k * $kusokY * $factor, 512, 512, $kusokX * $factor, $kusokY * $factor);
//imageInterlace($im2, 1);
imagejpeg($im2, "{$temp_dir}/" . "1_{$zoom}_{$i}_{$k}_.jpeg", 90);
$im2 = null;
}
}
$factor = 8;
$zoom = $zoom - 1;
for ($k = 0; $k < $ny / $factor; $k++) {
for ($i = 0; $i < $nx / $factor; $i++) {
$im2 = imagecreatetruecolor(512, 512);
imagecopyresized($im2, $im, 0, 0, $i * $kusokX * $factor, $k * $kusokY * $factor, 512, 512, $kusokX * $factor, $kusokY * $factor);
//imageInterlace($im2, 1);
imagejpeg($im2, "{$temp_dir}/" . "1_{$zoom}_{$i}_{$k}_.jpeg", 90);
$im2 = null;
}
}
$im2 = imagecreatetruecolor(512, 512);
imagecopyresized($im2, $im, 0, 0, 0, 0, 512, 256, $imSX, $imSY);
imagejpeg($im2, "{$temp_dir}/" . "1_0_0_0_.jpeg", 90);
}
开发者ID:marcelo066,项目名称:codeigniter-admin-svn,代码行数:60,代码来源:pano_model.php
示例10: getColors
/**
* Отримати кольора
* @return array
*/
public function getColors()
{
$image = imageCreateFromJpeg($this->address);
$color = imagecolorat($image, 10, 15);
$colors = imagecolorsforindex($image, $color);
array_pop($colors);
return $colors;
}
开发者ID:serj1chen,项目名称:college_uawebchallenge,代码行数:12,代码来源:Color.php
示例11: read
/**
* Read a jpg image from file
* @param File file of the image
* @return resource internal PHP image resource of the file
*/
public function read(File $file)
{
$this->checkIfReadIsPossible($file, $this->supportedExtensions);
$image = imageCreateFromJpeg($file->getAbsolutePath());
if ($image === false) {
throw new ImageException($file->getPath() . ' is not a valid JPG image');
}
return $image;
}
开发者ID:BGCX261,项目名称:zibo-svn-to-git,代码行数:14,代码来源:JpgImageIO.php
示例12: __construct
public function __construct($uploaded_img_name, $save_path, $name)
{
$this->_save_path = $save_path;
if (!is_dir($this->_save_path)) {
mkdir($this->_save_path, 0777);
}
$this->_new_img_name = $name . '.jpg';
$this->_orig_img = imageCreateFromJpeg($uploaded_img_name);
$this->w = imagesx($this->_orig_img);
$this->h = imagesy($this->_orig_img);
}
开发者ID:alexposseda,项目名称:events,代码行数:11,代码来源:image.class.php
示例13: loadFile
/**
* @see \wcf\system\image\adapter\IImageAdapter::loadFile()
*/
public function loadFile($file)
{
list($this->width, $this->height, $this->type) = getImageSize($file);
switch ($this->type) {
case IMAGETYPE_GIF:
$this->image = imageCreateFromGif($file);
break;
case IMAGETYPE_JPEG:
$this->image = imageCreateFromJpeg($file);
break;
case IMAGETYPE_PNG:
$this->image = imageCreateFromPng($file);
break;
default:
throw new SystemException("Could not read image '" . $file . "', format is not recognized.");
break;
}
}
开发者ID:nick-strohm,项目名称:WCF,代码行数:21,代码来源:GDImageAdapter.class.php
示例14: loadImage
function loadImage($path)
{
if ($this->image) {
imagedestroy($this->image);
}
$img_sz = getimagesize($path);
switch ($img_sz[2]) {
case 1:
$this->image_type = "GIF";
if (!($this->image = imageCreateFromGif($path))) {
return FALSE;
} else {
return TRUE;
}
break;
case 2:
$this->image_type = "JPG";
if (!($this->image = imageCreateFromJpeg($path))) {
return FALSE;
} else {
return TRUE;
}
break;
case 3:
$this->image_type = "PNG";
if (!($this->image = imageCreateFromPng($path))) {
return FALSE;
} else {
return TRUE;
}
break;
case 4:
$this->image_type = "SWF";
if (!($this->image = imageCreateFromSwf($path))) {
return FALSE;
} else {
return TRUE;
}
break;
default:
return FALSE;
}
}
开发者ID:nachoweb,项目名称:mbf-dev,代码行数:43,代码来源:Image2.php
示例15: actionTest
public function actionTest()
{
$i = 10;
$g = 20;
$photo = new GeneratorImageColorPalette();
// $t1 = $photo->getImageColor('https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s150x150/e35/11820536_519767031505386_1692984693_n.jpg',$i,$g);
// $t2 = $photo->getImageColor('https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e35/11850151_147906375552698_1188110438_n.jpg',$i,$g);
// $t3 = $photo->getImageColor('https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e35/11850151_147906375552698_1188110438_n.jpg',$i,$g);
// $t4 = $photo->getImageColor('https://scontent.cdninstagram.com/hphotos-xfp1/t51.2885-15/s150x150/e35/1389277_898236996891339_792704999_n.jpg',$i,$g);
// $t5 = $photo->getImageColor('https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s150x150/e35/11375282_1475416576086732_1622940988_n.jpg',$i,$g);
$t = 'https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s150x150/e35/11375282_1475416576086732_1622940988_n.jpg';
// $t = 'https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s150x150/e35/11820536_519767031505386_1692984693_n.jpg';
// $t = 'https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e35/11850151_147906375552698_1188110438_n.jpg';
$t = 'https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e15/11325634_802930826488058_1599582105_n.jpg';
$t = 'https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e15/11382549_922947047728394_1720425873_n.jpg';
$t = 'https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e15/11287495_1640746426170859_1360888926_n.jpg';
$t = 'https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e15/11358192_686709151434224_172548493_n.jpg';
// $t = 'https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s150x150/e35/11820536_519767031505386_1692984693_n.jpg';
// $t = 'https://scontent.cdninstagram.com/hphotos-xaf1/t51.2885-15/s150x150/e35/c216.0.648.648/11950711_476949739149891_1670913693_n.jpg';
//Загрузка JPG-изображения из файла Image.jpg
$image = imageCreateFromJpeg($t);
//Возвращаем цвет пикселя с координатами (10, 15) на изображении $image
$color = imagecolorat($image, 10, 15);
$colors = imagecolorsforindex($image, $color);
//Получаем составляющие цвета (red, green, blue)
// $r = ($color >> 16) & 0xFF;
// $g = ($color >> 8) & 0xFF;
// $b = $color & 0xFF;
//Выводим результат
// echo $r."<br />";
// echo $g."<br />";
// echo $b."<br />";
//
var_dump($colors);
var_dump(max(array(5 => 88, 99 => 55)));
//Освобождаем ресурсы сервера
// imageDestroy($image);
$t = new Color($t);
echo $t->getDominantColor();
}
开发者ID:serj1chen,项目名称:college_uawebchallenge,代码行数:40,代码来源:SiteController.php
示例16: __construct
function __construct($filename)
{
$this->_filename = $filename;
list($this->_width, $this->_height) = getimagesize($this->_filename);
$pathinfo = pathinfo($filename);
switch (strtolower($pathinfo['extension'])) {
case 'jpg':
case 'jpeg':
$this->_source = imageCreateFromJpeg($filename);
break;
case 'gif':
$this->_source = imageCreateFromGif($filename);
$this->_createImageCallback = 'imagecreate';
break;
case 'png':
$this->_source = imageCreateFromPng($filename);
break;
default:
throw new Naf_Image_Exception('Unsupported file extension');
break;
}
}
开发者ID:BackupTheBerlios,项目名称:naf-svn,代码行数:22,代码来源:Image.php
示例17: resizeImage
/**
* Generate images of alternate sizes.
*/
function resizeImage($cnvrt_arry)
{
global $platform, $imgs, $cnvrt_path, $reqd_image, $convert_writable, $convert_magick, $convert_GD, $convert_cmd, $cnvrt_alt, $cnvrt_mesgs, $compat_quote;
if (empty($imgs) || $convert_writable == FALSE) {
return;
}
if ($convert_GD == TRUE && !($gd_version = gdVersion())) {
return;
}
if ($cnvrt_alt['no_prof'] == TRUE) {
$strip_prof = ' +profile "*"';
} else {
$strip_prof = '';
}
if ($cnvrt_alt['mesg_on'] == TRUE) {
$str = '';
}
foreach ($imgs as $img_file) {
if ($cnvrt_alt['indiv'] == TRUE && $img_file != $reqd_image['file']) {
continue;
}
$orig_img = $reqd_image['pwd'] . '/' . $img_file;
$cnvrtd_img = $cnvrt_path . '/' . $cnvrt_arry['prefix'] . $img_file;
if (!is_file($cnvrtd_img)) {
$img_size = GetImageSize($orig_img);
$height = $img_size[1];
$width = $img_size[0];
$area = $height * $width;
$maxarea = $cnvrt_arry['maxwid'] * $cnvrt_arry['maxwid'] * 0.9;
$maxheight = $cnvrt_arry['maxwid'] * 0.75 + 1;
if ($area > $maxarea || $width > $cnvrt_arry['maxwid'] || $height > $maxheight) {
if ($width / $cnvrt_arry['maxwid'] >= $height / $maxheight) {
$dim = 'W';
}
if ($height / $maxheight >= $width / $cnvrt_arry['maxwid']) {
$dim = 'H';
}
if ($dim == 'W') {
$cnvt_percent = round(0.9375 * $cnvrt_arry['maxwid'] / $width * 100, 2);
}
if ($dim == 'H') {
$cnvt_percent = round(0.75 * $cnvrt_arry['maxwid'] / $height * 100, 2);
}
// convert it
if ($convert_magick == TRUE) {
// Image Magick image conversion
if ($platform == 'Win32' && $compat_quote == TRUE) {
$winquote = '"';
} else {
$winquote = '';
}
exec($winquote . $convert_cmd . ' -geometry ' . $cnvt_percent . '%' . ' -quality ' . $cnvrt_arry['qual'] . ' -sharpen ' . $cnvrt_arry['sharpen'] . $strip_prof . ' "' . $orig_img . '"' . ' "' . $cnvrtd_img . '"' . $winquote);
$using = $cnvrt_mesgs['using IM'];
} elseif ($convert_GD == TRUE) {
// GD image conversion
if (eregi('\\.jpg$|\\.jpeg$', $img_file) == TRUE && (imageTypes() & IMG_JPG) == TRUE) {
$src_img = imageCreateFromJpeg($orig_img);
} elseif (eregi('\\.gif$', $img_file) == TRUE && (imageTypes() & IMG_PNG) == TRUE) {
$src_img = imageCreateFromPng($orig_img);
} elseif (eregi('\\.gif$', $img_file) == TRUE && (imageTypes() & IMG_GIF) == TRUE) {
$src_img = imageCreateFromGif($orig_img);
} else {
continue;
}
$src_width = imageSx($src_img);
$src_height = imageSy($src_img);
$dest_width = $src_width * ($cnvt_percent / 100);
$dest_height = $src_height * ($cnvt_percent / 100);
if ($gd_version >= 2) {
$dst_img = imageCreateTruecolor($dest_width, $dest_height);
imageCopyResampled($dst_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_height, $src_width, $src_height);
} else {
$dst_img = imageCreate($dest_width, $dest_height);
imageCopyResized($dst_img, $src_img, 0, 0, 0, 0, $dest_width, $dest_height, $src_width, $src_height);
}
imageDestroy($src_img);
if (eregi('\\.jpg$|\\.jpeg$/i', $img_file) == TRUE && (imageTypes() & IMG_JPG) == TRUE) {
imageJpeg($dst_img, $cnvrtd_img, $cnvrt_arry['qual']);
} elseif (eregi('\\.gif$', $img_file) == TRUE && (imageTypes() & IMG_PNG) == TRUE) {
imagePng($dst_img, $cnvrtd_img);
} elseif (eregi('\\.gif$/i', $img_file) == TRUE && (imageTypes() & IMG_GIF) == TRUE) {
imageGif($dst_img, $cnvrtd_img);
}
imageDestroy($dst_img);
$using = $cnvrt_mesgs['using GD'] . $gd_version;
}
if ($cnvrt_alt['mesg_on'] == TRUE && is_file($cnvrtd_img)) {
$str .= " <small>\n" . ' ' . $cnvrt_mesgs['generated'] . $cnvrt_arry['txt'] . $cnvrt_mesgs['converted'] . $cnvrt_mesgs['image_for'] . $img_file . $using . ".\n" . " </small>\n <br />\n";
}
}
}
}
if (isset($str)) {
return $str;
}
}
开发者ID:kleopatra999,项目名称:PHPhoto,代码行数:99,代码来源:index.php
示例18: Main
//.........这里部分代码省略.........
// サイズが同じ場合には、そのままコピーする。(画質劣化を防ぐ)
copy($path, $dst_file);
} else {
imagepng($dst_im, $dst_file);
}
}
imagedestroy($src_im);
imagedestroy($dst_im);
}
} else {
// サムネイル作成不可の場合(旧バージョン対策)
$dst_im = imageCreate($re_size[0], $re_size[1]);
imageColorAllocate($dst_im, 255, 255, 214);
//背景色
// 枠線と文字色の設定
$black = imageColorAllocate($dst_im, 0, 0, 0);
$red = imageColorAllocate($dst_im, 255, 0, 0);
imagestring($dst_im, 5, 10, 10, "GIF {$size['0']}x{$size['1']}", $red);
imageRectangle($dst_im, 0, 0, $re_size[0] - 1, $re_size[1] - 1, $black);
// 画像出力
if ($header) {
header("Content-Type: image/png");
imagepng($dst_im);
return "";
} else {
$dst_file = $dst_file . ".png";
imagepng($dst_im, $dst_file);
}
imagedestroy($src_im);
imagedestroy($dst_im);
}
break;
// jpg形式
// jpg形式
case "2":
$src_im = imageCreateFromJpeg($path);
$dst_im = $imagecreate($re_size[0], $re_size[1]);
$imageresize($dst_im, $src_im, 0, 0, 0, 0, $re_size[0], $re_size[1], $size[0], $size[1]);
// 画像出力
if ($header) {
header("Content-Type: image/jpeg");
imageJpeg($dst_im);
return "";
} else {
$dst_file = $dst_file . ".jpg";
if ($re_size[0] == $size[0] && $re_size[1] == $size[1]) {
// サイズが同じ場合には、そのままコピーする。(画質劣化を防ぐ)
copy($path, $dst_file);
} else {
imageJpeg($dst_im, $dst_file);
}
}
imagedestroy($src_im);
imagedestroy($dst_im);
break;
// png形式
// png形式
case "3":
$src_im = imageCreateFromPNG($path);
$colortransparent = imagecolortransparent($src_im);
$has_alpha = ord(file_get_contents($path, false, null, 25, 1)) & 0x4;
if ($colortransparent > -1 || $has_alpha) {
$dst_im = $imagecreate($re_size[0], $re_size[1]);
// アルファチャンネルが存在する場合はそちらを使用する
if ($has_alpha) {
imagealphablending($dst_im, false);
imagesavealpha($dst_im, true);
}
imagepalettecopy($dst_im, $src_im);
imagefill($dst_im, 0, 0, $colortransparent);
imagecolortransparent($dst_im, $colortransparent);
imagecopyresized($dst_im, $src_im, 0, 0, 0, 0, $re_size[0], $re_size[1], $size[0], $size[1]);
} else {
$dst_im = $imagecreate($re_size[0], $re_size[1]);
imagecopyresized($dst_im, $src_im, 0, 0, 0, 0, $re_size[0], $re_size[1], $size[0], $size[1]);
imagecolorstotal($src_im) == 0 ? $colortotal = 65536 : ($colortotal = imagecolorstotal($src_im));
imagetruecolortopalette($dst_im, true, $colortotal);
}
// 画像出力
if ($header) {
header("Content-Type: image/png");
imagepng($dst_im);
return "";
} else {
$dst_file = $dst_file . ".png";
if ($re_size[0] == $size[0] && $re_size[1] == $size[1]) {
// サイズが同じ場合には、そのままコピーする。(画質劣化を防ぐ)
copy($path, $dst_file);
} else {
imagepng($dst_im, $dst_file);
}
}
imagedestroy($src_im);
imagedestroy($dst_im);
break;
default:
return array(0, "イメージの形式が不明です。");
}
return array(1, $dst_file);
}
开发者ID:casan,项目名称:eccube-2_13,代码行数:101,代码来源:gdthumb.php
示例19: imageCreateFromFile
/**
* Creates a new GDlib image resource based on the input image filename.
* If it fails creating an image from the input file a blank gray image with the dimensions of the input image will be created instead.
*
* @param string $sourceImg Image filename
* @return resource Image Resource pointer
*/
public function imageCreateFromFile($sourceImg)
{
$imgInf = pathinfo($sourceImg);
$ext = strtolower($imgInf['extension']);
switch ($ext) {
case 'gif':
if (function_exists('imagecreatefromgif')) {
return imageCreateFromGif($sourceImg);
}
break;
case 'png':
if (function_exists('imagecreatefrompng')) {
$imageHandle = imageCreateFromPng($sourceImg);
if ($this->saveAlphaLayer) {
imagesavealpha($imageHandle, true);
}
return $imageHandle;
}
break;
case 'jpg':
case 'jpeg':
if (function_exists('imagecreatefromjpeg')) {
return imageCreateFromJpeg($sourceImg);
}
break;
}
// If non of the above:
$i = @getimagesize($sourceImg);
$im = imagecreatetruecolor($i[0], $i[1]);
$Bcolor = ImageColorAllocate($im, 128, 128, 128);
ImageFilledRectangle($im, 0, 0, $i[0], $i[1], $Bcolor);
return $im;
}
开发者ID:TYPO3Incubator,项目名称:TYPO3.CMS,代码行数:40,代码来源:GraphicalFunctions.php
示例20: getImageType
function getImageType($file)
{
//使用getimagesize()函数,返回图像相关数据
file_exists($file) ? $TempImage = getimagesize($file) : die("文件不存在!");
switch ($TempImage[2]) {
case 1:
$image = imageCreateFromGif($file);
$this->_type = "gif";
break;
case 2:
$image = imageCreateFromJpeg($file);
$this->_type = "jpg";
break;
case 3:
$image = imageCreateFromPng($file);
$this->_type = "png";
break;
default:
die("不支持该文件格式,请使用GIF、JPG、PNG格式。");
}
unset($TempImage);
$this->_im = $image;
}
开发者ID:dalinhuang,项目名称:kiwind,代码行数:23,代码来源:Image.php
注:本文中的imageCreateFromJpeg函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论