本文整理汇总了PHP中Imagejpeg函数的典型用法代码示例。如果您正苦于以下问题:PHP Imagejpeg函数的具体用法?PHP Imagejpeg怎么用?PHP Imagejpeg使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了Imagejpeg函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: lagBildeMedStorrelse
private function lagBildeMedStorrelse($sti, $filnavn, $nyttFilnavn, $nyBredde, $nyHoyde)
{
$gammeltBilde = $sti . $filnavn;
$bi = ImageCreateFromJPEG($gammeltBilde) or $bi = ImageCreateFromPNG($gammeltBilde) or $bi = ImageCreateFromGIF($gammeltBilde) or $bi = false;
if ($bi) {
$naStorrelse = @getimagesize($gammeltBilde);
$bredde = $naStorrelse[0];
$hoyde = $naStorrelse[1];
$hx = 100 / ($bredde / $nyBredde) * 0.01;
$hx = @round($hoyde * $hx);
$wx = 100 / ($hoyde / $nyHoyde) * 0.01;
$wx = @round($bredde * $wx);
if ($hx < $nyHoyde) {
$nyHoyde = 100 / ($bredde / $nyBredde) * 0.01;
$nyHoyde = @round($hoyde * $nyHoyde);
} else {
$nyBredde = 100 / ($hoyde / $nyHoyde) * 0.01;
$nyBredde = @round($bredde * $nyBredde);
}
$resBilde = @ImageCreateTrueColor($nyBredde, $nyHoyde);
@ImageCopyResampled($resBilde, $bi, 0, 0, 0, 0, $nyBredde, $nyHoyde, $bredde, $hoyde);
@Imagejpeg($resBilde, $sti . $nyttFilnavn, 50);
return $nyttFilnavn;
} else {
return -1;
}
}
开发者ID:Jeremiah0211,项目名称:airdog,代码行数:27,代码来源:BildeendringController.php
示例2: captcha
function captcha($numchars)
{
$vals = "ABCDEFGHIJKLMNOPQRSETUVWZYZabcdefghijklmnopqrstuvwxyz0123456789";
$numvals = strlen($vals);
$im = ImageCreate(38 * $numchars + 10, 40);
$white = ImageColorAllocate($im, 0, 0, 0);
$black = ImageColorAllocate($im, 120, 200, 68);
srand((double) microtime() * 1000000);
$string = "";
ImageFill($im, 0, 0, $black);
ImageString($im, 1, 0, 0, "Arcath.net", $white);
for ($i = 1; $i <= $numchars; $i++) {
$rand = rand(0, $numvals - 1);
$out = $vals[$rand];
$string .= $out;
ImageString($im, rand(1, 5), $i * 38, rand(5, 25), $out, $white);
}
Imagejpeg($im, "images/verify.jpeg");
ImageDestroy($im);
return $string;
}
开发者ID:Arcath,项目名称:arcath.net-site-cms,代码行数:21,代码来源:captcha.php
示例3: create_do
private function create_do()
{
$this->im = Imagecreate($this->config['width'], $this->config['height']);
//设置背景为白色
Imagecolorallocate($this->im, $this->config['color'][0], $this->config['color'][1], $this->config['color'][2]);
//为此背景加个边框
if ($this->config['boxline'] == True) {
$bordercolor = Imagecolorallocate($this->im, 37, 37, 37);
Imagerectangle($this->im, 0, 0, $this->config['width'] - 1, $this->config['height'] - 1, $bordercolor);
}
//生成验证码
$this->create_str();
$coder = $_SESSION[$this->config['codname']];
//输入文字
$fontcolor = Imagecolorallocate($this->im, 46, 46, 46);
for ($i = 0; $i < $this->config['length']; $i++) {
Imagestring($this->im, 5, $i * 10 + 6, rand(2, 5), $coder[$i], $fontcolor);
}
//加入干扰线
$interfere = $this->config['interfere'];
$interfere = $interfere > 30 ? "30" : $interfere;
if (!empty($interfere) && $interfere > 1) {
for ($i = 1; $i < $interfere; $i++) {
$linecolor = Imagecolorallocate($this->im, rand(0, 255), rand(0, 255), rand(0, 255));
$x = rand(1, $this->config['width']);
$y = rand(1, $this->config['height']);
$x2 = rand($x - 10, $x + 10);
$y2 = rand($y - 10, $y + 10);
Imageline($this->im, $x, $y, $x2, $y2, $linecolor);
}
}
ob_clean();
Header("Pragma:no-cache\r\n");
Header("Cache-Control:no-cache\r\n");
Header("Expires:0\r\n");
Header("Content-type:Image/jpeg\r\n");
Imagejpeg($this->im);
Imagedestroy($this->im);
exit;
}
开发者ID:s137740,项目名称:lg,代码行数:40,代码来源:ValidateCode.php
示例4: forumbadge_run
function forumbadge_run()
{
global $session;
$acctid = httpget("acctid");
page_header("Badge!");
//PHP's GD class functions can create a variety of output image
//types, this example creates a jpeg
header("Content-Type: image/jpeg");
//open up the image you want to put text over
$im = ImageCreateFromPng("modules/buttonbase.png");
//The numbers are the RGB values of the color you want to use
$black = ImageColorAllocate($im, 0, 0, 0);
//The canvas's (0,0) position is the upper left corner
//So this is how far down and to the right the text should start
$start_x = 10;
$start_y = 20;
$sql = "SELECT race, login, level, dragonkills FROM " . db_prefix("accounts") . " WHERE acctid = {$acctid}";
$result = db_fetch_assoc(db_query($sql));
$name = $result['login'];
$race = $result['race'];
$level = "Level " . $result['level'];
$dragonkills = "Drive Kills: " . $result['dragonkills'];
debug($result);
//This writes your text on the image in 12 point using verdana.ttf
//For the type of effects you quoted, you'll want to use a truetype font
//And not one of GD's built in fonts. Just upload the ttf file from your
//c: windows fonts directory to your web server to use it.
Imagettftext($im, 10, 0, 65, 12, $black, 'modules/verdana.ttf', $name);
Imagettftext($im, 10, 0, 65, 27, $black, 'modules/verdana.ttf', $race);
Imagettftext($im, 10, 0, 65, 42, $black, 'modules/verdana.ttf', $level);
Imagettftext($im, 10, 0, 65, 57, $black, 'modules/verdana.ttf', $dragonkills);
//Creates the jpeg image and sends it to the browser
//100 is the jpeg quality percentage
Imagejpeg($im, '', 60);
ImageDestroy($im);
page_footer();
}
开发者ID:CavemanJoe,项目名称:Improbable-Island---DragonScales---DragonBones---LotGD-2.0---Season-Three,代码行数:37,代码来源:forumbadge.php
示例5: imageResize
function imageResize()
{
global $engine_path, $ImageTrimX, $ImageTrimY;
$source = $this->image;
$newWidth = $this->newWidth;
$newHeight = $this->newHeight;
$imType = $this->type;
if ($imType == "jpeg" || $imType == "pjpeg") {
$srcImage = ImageCreateFromJPEG($source);
} elseif ($imType == "gif") {
$srcImage = LoadGif($source);
} else {
$srcImage = ImageCreateFromPNG($source);
}
$srcWidth = ImageSX($srcImage);
$srcHeight = ImageSY($srcImage);
$ratioWidth = $srcWidth / $newWidth;
$ratioHeight = $srcHeight / $newHeight;
if ($ratioWidth < 1 && $this->fix == "width" || $ratioHeight < 1 && $this->fix == "height") {
$destWidth = $srcWidth;
$destHeight = $srcHeight;
//print "mode 1";
//exit;
} elseif ($ratioWidth > $ratioHeight || $ratioWidth < $ratioHeight && $this->fix != "width" || $this->fix == "height") {
$destWidth = $srcWidth / $ratioHeight;
$destHeight = $newHeight;
//print "mode 2";
//exit;
} else {
$destWidth = $newWidth;
$destHeight = $srcHeight / $ratioWidth;
//print "mode 3 $ratioHeight $ratioWidth $this->fix";
//exit;
}
//$this->newWidth=$destWidth;
//$this->newHeight=$desHeight;
//print "$this->newWidth - $this->newHeight";
//print $srcImage." $ratioWidth $ratioHeight $this->fix $destWidth $destHeight";
//print "-($newHeight-$destHeight)/2";
//exit;
if ($newWidth != $srcWidth && $newHeight != $srcHeight && $newWidth != 160) {
if (!strlen($ImageTrim)) {
$ImageTrim = 2;
}
if ($ImageTrimY == 0) {
$y = 0;
} elseif ($ImageTrimY == 1) {
$y = ($newHeight - $destHeight) / 4;
} elseif ($ImageTrimY == 2) {
$y = ($newHeight - $destHeight) / 2;
} elseif ($ImageTrimY == 3) {
$y = 3 * ($newHeight - $destHeight) / 2;
} elseif ($ImageTrimY == 4) {
$y = 5 * ($newHeight - $destHeight) / 2;
}
if ($ImageTrimX == 0) {
$x = 0;
} elseif ($ImageTrimX == 1) {
$x = ($newWidth - $destWidth) / 4;
} elseif ($ImageTrimX == 2) {
$x = ($newWidth - $destWidth) / 2;
} elseif ($ImageTrimX == 3) {
$x = 3 * ($newWidth - $destWidth) / 2;
} elseif ($ImageTrimX == 4) {
$x = 5 * ($newWidth - $destWidth) / 2;
}
//print "$ImageTrimY $ImageTrimX $x $y";
//exit;
$destImage = imagecreatetruecolor($newWidth, $newHeight);
imagecopyresampled($destImage, $srcImage, $x, $y, 0, 0, $destWidth, $destHeight, $srcWidth, $srcHeight);
} else {
$destImage = imagecreatetruecolor($destWidth, $destHeight);
imagecopyresampled($destImage, $srcImage, 0, 0, 0, 0, $destWidth, $destHeight, $srcWidth, $srcHeight);
}
if ($this->mix) {
$destImage = $this->mix($destImage);
}
$name = $engine_path . "img/small/" . $this->name;
if ($imType == "jpeg" || $imType == "pjpeg") {
Imagejpeg($destImage, $name);
} elseif ($imType == "gif") {
Imagegif($destImage, $name);
} else {
Imagepng($destImage, $name);
}
$file['tmp_name'] = $name;
ImageDestroy($srcImage);
ImageDestroy($destImage);
return $file;
}
开发者ID:dapfru,项目名称:gladiators,代码行数:90,代码来源:_cls_image.php
示例6: define
<?php
define("THUMB_MAX_HEIGHT", 75);
define("THUMB_MAX_WIDTH", 75);
if (is_file("{$image}")) {
header("Content-type: image/jpeg");
Header("Last-Modified: " . gmdate('D, d M Y H:i:s T', filemtime($image)));
Header("Expires: " . gmdate('D, d M Y H:i:s T', filemtime($image) + 60 * 60 * 24 * 7));
$src_img = imagecreatefromjpeg("{$image}");
if (imagesx($src_img) > imagesy($src_img)) {
$xsize = THUMB_MAX_HEIGHT;
$ysize = intval(THUMB_MAX_WIDTH / imagesx($src_img) * imagesy($src_img));
} else {
$ysize = THUMB_MAX_WIDTH;
$xsize = intval(THUMB_MAX_HEIGHT / imagesy($src_img) * imagesx($src_img));
}
$dst_img = @imagecreatetruecolor($xsize, $ysize);
imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $xsize, $ysize, imagesx($src_img), imagesy($src_img));
Imagejpeg($dst_img);
ImageDestroy($dst_img);
} else {
header("HTTP/1.1 404 Not Found");
exit;
}
?>
开发者ID:aklepner,项目名称:bwg,代码行数:25,代码来源:thumb.php
示例7: imagettftext
imagettftext($finalimage, 9, 0, 35, 376, $black, $font, $level . "%");
$value = array(2, 19, 7, 101, 27, 101, 27, 19);
imagefilledpolygon($finalimage, $value, 4, $red);
$value = array(7, 102, 12, 162, 27, 162, 27, 102);
imagefilledpolygon($finalimage, $value, 4, $orange);
$value = array(12, 163, 17, 221, 27, 221, 27, 163);
imagefilledpolygon($finalimage, $value, 4, $yellow);
$value = array(17, 222, 22, 281, 27, 281, 27, 222);
imagefilledpolygon($finalimage, $value, 4, $yellgr);
$value = array(22, 282, 27, 348, 27, 348, 27, 282);
imagefilledpolygon($finalimage, $value, 4, $green);
imagefilledellipse($finalimage, 65, 101, 6, 6, $red);
imagefilledellipse($finalimage, 65, 161, 6, 6, $orange);
imagefilledellipse($finalimage, 65, 221, 6, 6, $yellow);
imagefilledellipse($finalimage, 65, 281, 6, 6, $yellgr);
imagefilledellipse($finalimage, 65, 346, 6, 6, $green);
if ($t_current > $t_max) {
$burstImg = ImageCreateFromjpeg('burst.jpg');
$burstW = ImageSX($burstImg);
$burstH = ImageSY($burstImg);
ImageCopy($finalimage, $burstImg, 0, 0, 0, 0, $burstW, $burstH);
}
//Create the final image
Imagejpeg($finalimage, NULL, 99);
//Destroy de rest of images
Imagedestroy($finalimage);
Imagedestroy($thermImage);
Imagedestroy($thermbarImage);
?>
开发者ID:jhbsz,项目名称:ossimTest,代码行数:29,代码来源:sec_therm.php
示例8: imagecreatetruecolor
if ($crop == 'c' and $dx > $x) {
// scale it to tempImage
$tempImage = imagecreatetruecolor($dx, $dy);
ImageCopyResampled($tempImage, $srcImage, 0, 0, 0, 0, $dx, $dy, $srcWidth, $srcHeight);
// crop it to destImage
$destImage = imagecreatetruecolor($x, $dy);
imagecopy($destImage, $tempImage, 0, 0, 0, 0, $x, $dy);
$bordercolor = ImageColorAllocate($destImage, 0, 0, 0);
ImageRectangle($destImage, 0, 0, $x - 1, $dy - 1, $bordercolor);
imagedestroy($tempImage);
} else {
$destImage = imagecreatetruecolor($dx, $dy);
ImageCopyResampled($destImage, $srcImage, 0, 0, 0, 0, $dx, $dy, $srcWidth, $srcHeight);
}
}
Imagejpeg($destImage, $file_cache_path, 100);
if (prepWritableFile($file_cache_path)) {
header("Content-type: image/jpeg");
readfile($file_cache_path);
} else {
// if all caching fails, output directly
header("Content-type: image/jpeg");
imagejpeg($destImage);
}
imagedestroy($srcImage);
imagedestroy($destImage);
}
}
function getExtension($str)
{
$i = strrpos($str, ".");
开发者ID:smbale,项目名称:open-social-media-toolkit,代码行数:31,代码来源:scaleImage.php
示例9: setThumbnail
function setThumbnail($file, $upload_dir = ".", $thumbnail_upload_dir = "./thumb", $filename = "", $thumbnail_size = 250, $thumbnail_quality = 76, $limit_size = 2, $type = 1, $check = 0, $image_type = 0, $image_width = 800, $image_height = 600, $limit_length = 30)
{
if ($filename == "") {
$filename = $file[name];
}
$img_size = $this->setFileUpload($file, $upload_dir, $filename, $limit_size, $type, $check, $image_type, $image_width, $image_height = 600, $limit_length = 30);
//앨범에서의 썸네일 이미지를 위해 JPG GD를 사용하여 썸네일 이미지를 생성한다.
if ($img_size[0] > $img_size[1]) {
//가로방향 이미지
if ($img_size[0] > $thumbnail_size) {
$img_width = $thumbnail_size;
$img_height = $img_size[1] * $thumbnail_size / $img_size[0];
} else {
$img_width = $img_size[0];
$img_height = $img_size[1];
}
} else {
//세로방향 이미지
if ($img_size[1] > $thumbnail_size) {
$img_width = $img_size[0] * $thumbnail_size / $img_size[1];
$img_height = $thumbnail_size;
} else {
$img_width = $img_size[0];
$img_height = $img_size[1];
}
}
if ($file[type] == "image/pjpeg" && (eregi("\\.jpg\$", $file[name]) || eregi("\\.jpeg\$", $file[name])) && $this->varGDPermit[jpg] == 'Y') {
$dst_img = ImageCreate($img_width, $img_height);
// 위에서 계산한대로 빈 이미지 파일을 만듭니다.
$src_img = ImageCreateFromjpeg("{$upload_dir}/{$filename}");
// 이미지파일을 읽어들입니다.
ImageCopyResized($dst_img, $src_img, 0, 0, 0, 0, $img_width, $img_height, ImageSX($src_img), ImageSY($src_img));
//빈 이미지에다 원본이미지를 줄여서 그립니다.
$creat_file_name = "{$thumbnail_upload_dir}/{$filename}";
Imagejpeg($dst_img, $creat_file_name, $thumbnail_quality);
// thumb 디렉토리에 원본과 같은 이름의 jpeg으로 저장합니다. 76이라는 숫자는 퀄리티인데요, 높을수록 용량크고 질이 좋아집니다.
} else {
if ($file[type] == "image/x-png" && eregi("\\.png\$", $file[name]) && $this->varGDPermit[png] == 'Y') {
$dst_img = ImageCreate($img_width, $img_height);
// 위에서 계산한대로 빈 이미지 파일을 만듭니다.
$src_img = ImageCreateFrompng("{$upload_dir}/{$filename}");
// 이미지파일을 읽어들입니다.
ImageCopyResized($dst_img, $src_img, 0, 0, 0, 0, $img_width, $img_height, ImageSX($src_img), ImageSY($src_img));
//빈 이미지에다 원본이미지를 줄여서 그립니다.
$creat_file_name = "{$thumbnail_upload_dir}/{$filename}";
Imagepng($dst_img, $creat_file_name, $thumbnail_quality);
// thumb 디렉토리에 원본과 같은 이름의 jpeg으로 저장합니다. 76이라는 숫자는 퀄리티인데요, 높을수록 용량크고 질이 좋아집니다.
} else {
if ($file[type] == "image/gif" && eregi("\\.gif\$", $file[name]) && $this->varGDPermit[gif] == 'Y') {
$dst_img = ImageCreate($img_width, $img_height);
// 위에서 계산한대로 빈 이미지 파일을 만듭니다.
$src_img = ImageCreateFromgif("{$upload_dir}/{$filename}");
// 이미지파일을 읽어들입니다.
ImageCopyResized($dst_img, $src_img, 0, 0, 0, 0, $img_width, $img_height, ImageSX($src_img), ImageSY($src_img));
//빈 이미지에다 원본이미지를 줄여서 그립니다.
$creat_file_name = "{$thumbnail_upload_dir}/{$filename}";
Imagegif($dst_img, $creat_file_name, $thumbnail_quality);
// thumb 디렉토리에 원본과 같은 이름의 jpeg으로 저장합니다. 76이라는 숫자는 퀄리티인데요, 높을수록 용량크고 질이 좋아집니다.
} else {
$this->errmsg("{$file['type']}은 GD를 지원하지 않습니다!!");
}
}
}
ImageDestroy($dst_img);
//로드한 메모리를 비워줍니다. gd는 꼭 이걸 해주어야 합니다.
ImageDestroy($src_img);
}
开发者ID:jin255ff,项目名称:company_website,代码行数:67,代码来源:PublicFunction.class.php
示例10: cropped
function cropped()
{
Header("Content-Type: image/jpeg");
$_SEGS = $this->uri->ruri_to_assoc();
$this->im = $this->gallery_model->get_data_row($_SEGS['file_id'], $_SEGS['id']);
$width_max = 600;
$height_max = 600;
//echo $this->im['links'];
$this->im = str_replace(base_url(), '', $this->im['links']);
if (file_exists($this->im)) {
list($width, $height, $type, $attr) = getimagesize($this->im);
if ($width >= $height) {
$percent = $width_max / $width;
$width_new = $width * $percent;
$height_new = $height * $percent;
} else {
$percent = $height_max / $height;
$width_new = $width * $percent;
$height_new = $height * $percent;
}
}
//echo $percent;die;
$new = imagecreatetruecolor($width_new, $height_new);
$this->im = imagecreatefromjpeg($this->im);
imagecopyresized($new, $this->im, 0, 0, 0, 0, $width_new, $height_new, $width, $height);
Imagejpeg($new);
ImageDestroy($new);
}
开发者ID:viktoredz,项目名称:1nf0k35-2016,代码行数:28,代码来源:admin_content.php
示例11: resizeimage
function resizeimage($imgp, $imgw, $imgh)
{
$imagepath = base64_decode($imgp);
#echo '.... ' . base64_decode( $imgp );
#flush();die(' stop!');
# Thanks to Michał Albrecht!
$suffix = strtolower(substr($imagepath, -4));
$imgsize = @getimagesize($imagepath);
# http://be.php.net/getimagesize
$head = "Content-type: {$imgsize['mime']}";
if ($suffix == ".gif") {
#$head = "Content-type: image/gif";
$img = imagecreatefromgif($imagepath);
if (!$img) {
brokenimage("Error loading GIF");
}
} else {
if ($suffix == ".jpg" or $suffix == "jpeg") {
#$head = "Content-type: image/jpeg";
$img = imagecreatefromjpeg($imagepath);
if (!$img) {
brokenimage("Error loading JPG");
}
} else {
if ($suffix == ".png") {
#$head = "Content-type: image/png";
$img = imagecreatefrompng($imagepath);
if (!$img) {
brokenimage("Error loading PNG");
}
}
}
}
# Resize the image
$src_h = ImageSY($img);
$src_w = ImageSX($img);
$dst_img = imagecreatetruecolor($imgw, $imgh);
imagecopyresampled($dst_img, $img, 0, 0, 0, 0, $imgw, $imgh, $src_w, $src_h);
$img = $dst_img;
imageinterlace($img, 1);
imagecolortransparent($img);
ob_start();
if ($suffix == ".gif") {
Imagegif($img);
} else {
if ($suffix == ".jpg" or $suffix == ".jpeg") {
Imagejpeg($img, '', 80);
} else {
if ($suffix == ".png") {
Imagepng($img);
}
}
}
$result = ob_get_clean();
#ImageDestroy($img);
$result = serialize(array($head, base64_encode($result)));
return $result;
}
开发者ID:ndp,项目名称:aida-americas.org-src,代码行数:58,代码来源:image.php
示例12: image_handler
public function image_handler($source_image, $destination, $tn_w = 100, $tn_h = 100, $quality = 80, $wmsource = false)
{
#find out what type of image this is
$info = getimagesize($source_image);
$imgtype = image_type_to_mime_type($info[2]);
#assuming the mime type is correct
switch ($imgtype) {
case 'image/jpeg':
$source = imagecreatefromjpeg($source_image);
break;
case 'image/gif':
$source = imagecreatefromgif($source_image);
break;
case 'image/png':
$source = imagecreatefrompng($source_image);
break;
default:
die('Invalid image type.');
}
#Figure out the dimensions of the image and the dimensions of the desired thumbnail
$src_w = imagesx($source);
$src_h = imagesy($source);
$src_ratio = $src_w / $src_h;
if (empty($tn_h)) {
$tn_h = $tn_w / $src_ratio;
}
if ($tn_w / $tn_h > $src_ratio) {
$new_h = $tn_w / $src_ratio;
$new_w = $tn_w;
} else {
$new_w = $tn_h * $src_ratio;
$new_h = $tn_h;
}
#Do some math to figure out which way we'll need to crop the image
#to get it proportional to the new size, then crop or adjust as needed
$x_mid = $new_w / 2;
$y_mid = $new_h / 2;
$newpic = imagecreatetruecolor(round($new_w), round($new_h));
imagecopyresampled($newpic, $source, 0, 0, 0, 0, $new_w, $new_h, $src_w, $src_h);
$final = imagecreatetruecolor($tn_w, $tn_h);
//imagecopyresampled($final, $newpic, 0, 0, 0, 0, $tn_w, $tn_h, $tn_w, $tn_h);
imagecopyresampled($final, $newpic, 0, 0, $x_mid - $tn_w / 2, $y_mid - $tn_h / 2, $tn_w, $tn_h, $tn_w, $tn_h);
#if we need to add a watermark
if ($wmsource) {
#find out what type of image the watermark is
$info = getimagesize($wmsource);
$imgtype = image_type_to_mime_type($info[2]);
#assuming the mime type is correct
switch ($imgtype) {
case 'image/jpeg':
$watermark = imagecreatefromjpeg($wmsource);
break;
case 'image/gif':
$watermark = imagecreatefromgif($wmsource);
break;
case 'image/png':
$watermark = imagecreatefrompng($wmsource);
break;
default:
die('Invalid watermark type.');
}
#if we're adding a watermark, figure out the size of the watermark
#and then place the watermark image on the bottom right of the image
$wm_w = imagesx($watermark);
$wm_h = imagesy($watermark);
imagecopy($final, $watermark, $tn_w - $wm_w, $tn_h - $wm_h, 0, 0, $tn_w, $tn_h);
}
return Imagejpeg($final, $destination, $quality);
}
开发者ID:hugoboss62,项目名称:myMVC,代码行数:69,代码来源:Upload.php
示例13: func_resize_save
public function func_resize_save($dst_file, $src_file, $save_path, $max_x, $max_y)
{
$img_size = getimagesize($src_file);
$img_replace = basename($src_file);
switch ($img_size[2]) {
//gif
case 1:
$src_img = ImageCreateFromgif($src_file);
$dst_img = ImageCreateTrueColor($max_x, $max_y);
ImageCopyResampled($dst_img, $src_img, 0, 0, 0, 0, $max_x, $max_y, $img_size[0], $img_size[1]);
Imagegif($dst_img, $save_path . $img_replace, 100);
break;
//jpeg or jpg
//jpeg or jpg
case 2:
$src_img = ImageCreateFromjpeg($src_file);
$dst_img = ImageCreateTrueColor($max_x, $max_y);
ImageCopyResampled($dst_img, $src_img, 0, 0, 0, 0, $max_x, $max_y, $img_size[0], $img_size[1]);
Imagejpeg($dst_img, $save_path . $img_replace, 100);
break;
//png
//png
case 3:
$src_img = ImageCreateFrompng($src_file);
$dst_img = ImageCreateTrueColor($max_x, $max_y);
ImageCopyResampled($dst_img, $src_img, 0, 0, 0, 0, $max_x, $max_y, $img_size[0], $img_size[1]);
Imagepng($dst_img, $save_path . $img_replace, 9);
break;
}
ImageDestroy($dst_img);
ImageDestroy($src_img);
}
开发者ID:devwit,项目名称:toonytool,代码行数:32,代码来源:lib.class.php
示例14: redimPhoto
/**
* redimensionne la photo
*
* @param $chemin répertoire de la photo
* @param $photo la photo que l'on souhaite redimensionner
* @param $taille la taille désiré
*/
function redimPhoto($chemin, $photo, $taille)
{
//redimensionnement photo petit format
$size = getimagesize($chemin . "o" . $photo);
if ($size[0] > $taille || $size[1] > $taille) {
if ($size[0] > $size[1]) {
// largeur suprieure la hauteur
$wg = $taille;
$hg = number_format($size[1] / ($size[0] / $taille), 0, ",", "");
} else {
// hauteur suprieure la largeur
$hg = $taille;
$wg = number_format($size[0] / ($size[1] / $taille), 0, ",", "");
}
} else {
$wg = $size[0];
$hg = $size[1];
}
$src_img = imagecreatefromjpeg($chemin . "o" . $photo);
$dst_img = imagecreatetruecolor($wg, $hg);
imagecopyresampled($dst_img, $src_img, 0, 0, 0, 0, $wg, $hg, $size[0], $size[1]);
Imagejpeg($dst_img, $chemin . $photo, 100);
}
开发者ID:rcampistron,项目名称:ParagrapheCMS,代码行数:30,代码来源:Photo.inc.php
示例15: str_replace
$image = $_POST['image'];
$filter_image = str_replace("data:image/png;base64,", "", $image);
// input is in format 1,2,3...|1,2,3...|...
if ($filter_image == $invalid) {
$im = "";
echo "false";
} else {
$im = imagecreatetruecolor(320, 240);
foreach (explode("|", $_POST['image']) as $y => $csv) {
foreach (explode(";", $csv) as $x => $color) {
imagesetpixel($im, $x, $y, $color);
}
}
}
} else {
// input is in format: data:image/png;base64,...
$image = $_POST['image'];
$filter_image = str_replace("data:image/png;base64,", "", $image);
if ($filter_image == $invalid) {
$im = "";
echo "false";
} else {
$im = imagecreatefrompng($_POST['image']);
}
}
if ($im) {
$filename = time() . $uid . ".jpg";
$data = $FbWall->Image_Upload($uid, $filename);
imagejpeg($im);
Imagejpeg($im, "uploads/" . $filename);
}
开发者ID:neevan1e,项目名称:Done,代码行数:31,代码来源:webcam_image_ajax.php
示例16: scaleImage
function scaleImage($image = '', $imageType = 'jpg', $path = 'default', $x = 0, $y = 0, $dx = 0, $dy = 0, $fixed = '', $crop = '', $file_cache_path = '')
{
// else create a new scaled image
switch ($path) {
case 'uploads':
$path = PATH_UPLOAD_IMAGES;
break;
case 'submissions':
$path = PATH_UPLOAD_SUBMISSIONS;
break;
default:
$path = PATH_CACHE;
break;
}
$file_orig = $path . '/' . $image . '.' . $imageType;
//$this->db->log($file_orig);
//$imageType=$this->getExtension($imaqe);
$imageType = strtolower($imageType);
//$this->db->log('scaleimage name'.$file_orig.' type'.$imageType.' '.$file_cache_path);
switch ($imageType) {
case 'jpg':
$srcImage = imagecreatefromjpeg($file_orig);
break;
case 'png':
$srcImage = imagecreatefrompng($file_orig);
break;
case 'gif':
$srcImage = imagecreatefromgif($file_orig);
break;
default:
// error
die('No valid image type');
break;
}
list($srcWidth, $srcHeight) = getimagesize($file_orig);
$srcWidth > $srcHeight ? $layout = 'landscape' : ($layout = 'portrait');
if ($layout == 'landscape' and $srcWidth < $dx or $layout == 'portrait' and $srcHeight < $dy) {
// too small, use original image
$dx = $srcWidth;
$dy = $srcHeight;
}
switch ($fixed) {
case 'y':
// scale the width to the requested height
$dx = round($srcWidth * ($dy / $srcHeight));
break;
case 'x':
// scale the height to the requested width
$dy = round($srcHeight * ($dx / $srcWidth));
break;
default:
// scale the shortest axis
if ($layout == 'portrait') {
$dx = round($srcWidth * ($dy / $srcHeight));
} else {
$dy = round($srcHeight * ($dx / $srcWidth));
}
break;
}
if ($crop == 'c' and $dy > $y) {
// scale it to tempImage
$tempImage = imagecreatetruecolor($dx, $dy);
imageColorAllocate($tempImage, 255, 255, 255);
imagealphablending($tempImage, false);
imagesavealpha($tempImage, true);
ImageCopyResampled($tempImage, $srcImage, 0, 0, 0, 0, $dx, $dy, $srcWidth, $srcHeight);
// crop it to destImage
$destImage = imagecreatetruecolor($dx, $y);
imagecopy($destImage, $tempImage, 0, 0, 0, 0, $dx, $y);
//$bordercolor = ImageColorAllocate($destImage,0,0,0);
//ImageRectangle($destImage,0,0,($dx-1),($y-1),$bordercolor);
imagedestroy($tempImage);
} else {
if ($crop == 'c' and $dx > $x) {
// scale it to tempImage
$tempImage = imagecreatetruecolor($dx, $dy);
ImageColorAllocate($tempImage, 255, 255, 255);
imagealphablending($tempImage, false);
imagesavealpha($tempImage, true);
ImageCopyResampled($tempImage, $srcImage, 0, 0, 0, 0, $dx, $dy, $srcWidth, $srcHeight);
// crop it to destImage
$destImage = imagecreatetruecolor($x, $dy);
imagecopy($destImage, $tempImage, 0, 0, 0, 0, $x, $dy);
//$bordercolor = ImageColorAllocate($destImage,0,0,0);
//ImageRectangle($destImage,0,0,($x-1),($dy-1),$bordercolor);
imagedestroy($tempImage);
} else {
$destImage = imagecreatetruecolor($dx, $dy);
ImageColorAllocate($destImage, 255, 255, 255);
imagealphablending($destImage, false);
imagesavealpha($destImage, true);
ImageCopyResampled($destImage, $srcImage, 0, 0, 0, 0, $dx, $dy, $srcWidth, $srcHeight);
}
}
Imagejpeg($destImage, $file_cache_path, 100);
if ($this->prepWritableFile($file_cache_path)) {
header("Content-type: image/jpeg");
readfile($file_cache_path);
} else {
// if all caching fails, output directly
//.........这里部分代码省略.........
开发者ID:smbale,项目名称:open-social-media-toolkit,代码行数:101,代码来源:images.class.php
示例17: imagettfbbox
$text = $username;
$textsize = imagettfbbox($fontsize, 0, $fontfile, $text);
ImageTTFText($im, $fontsize, 0, imagesx($im) - ($textsize[2] - $textsize[0]) - 5 > $maxtextwidth ? imagesx($im) - ($textsize[2] - $textsize[0]) - 5 : $maxtextwidth, 15, $clrBlack, $fontfile, $text);
$fontsize = 7.5;
$textsize = imagettfbbox($fontsize, 0, $fontfile, $logotext);
ImageTTFText($im, $fontsize, 0, imagesx($im) - ($textsize[2] - $textsize[0]) - 5 > $maxtextwidth ? imagesx($im) - ($textsize[2] - $textsize[0]) - 5 : $maxtextwidth, 32, $clrBlack, $fontfile, $logotext);
break;
case 1:
default:
// write text
$fontsize = 10;
$text = $username;
$textsize = imagettfbbox($fontsize, 0, $fontfile, $text);
ImageTTFText($im, $fontsize, 0, imagesx($im) - ($textsize[2] - $textsize[0]) - 5 > $maxtextwidth ? imagesx($im) - ($textsize[2] - $textsize[0]) - 5 : $maxtextwidth, 15, $clrBlack, $fontfile, $text);
$fontsize = 7;
$text = "Gefunden: {$found} Versteckt: {$hidden}";
$textsize = imagettfbbox($fontsize, 0, $fontfile, $text);
ImageTTFText($im, $fontsize, 0, imagesx($im) - ($textsize[2] - $textsize[0]) - 5 > $maxtextwidth ? imagesx($im) - ($textsize[2] - $textsize[0]) - 5 : $maxtextwidth, 29, $clrBlack, $fontfile, $text);
$fontsize = 8;
$textsize = imagettfbbox($fontsize, 0, $fontfile, $logotext);
ImageTTFText($im, $fontsize, 0, imagesx($im) - ($textsize[2] - $textsize[0]) - 5 > $maxtextwidth ? imagesx($im) - ($textsize[2] - $textsize[0]) - 5 : $maxtextwidth, 45, $clrBlack, $fontfile, $logotext);
}
// draw border
ImageRectangle($im, 0, 0, imagesx($im) - 1, imagesy($im) - 1, $clrBorder);
// write output
Imagejpeg($im, $opt['rootpath'] . 'images/statpics/statpic' . $userid . '.jpg', $jpeg_qualitaet);
ImageDestroy($im);
sql("INSERT INTO `user_statpic` (`user_id`) VALUES ('&1') ON DUPLICATE KEY UPDATE `date_created`=NOW()", $userid);
}
// Redirect auf das gespeicherte Bild
$tpl->redirect('images/statpics/statpic' . $userid . '.jpg');
开发者ID:RH-Code,项目名称:opencaching,代码行数:31,代码来源:ocstats.php
示例18: imageMix
function imageMix($mix)
{
global $engine_path, $ImageTrimX, $ImageTrimY;
$source = $this->image;
$imType = $this->type;
if (!$imType || $imType == "jpeg" || $imType == "pjpeg") {
$srcImage = ImageCreateFromJPEG($source);
} elseif ($imType == "gif") {
$srcImage = LoadGif($source);
} else {
$srcImage = ImageCreateFromPNG($source);
}
if ($mix) {
$srcImage = $this->mix($srcImage, $mix);
}
$name = $engine_path . "tmp/" . "mix" . $this->name;
if (!file_exists($engine_path . "tmp/")) {
mkdir_r($engine_path . "tmp/");
}
if ($imType == "jpeg" || $imType == "pjpeg") {
Imagejpeg($srcImage, $name);
} elseif ($imType == "gif") {
Imagegif($srcImage, $name);
} else {
Imagepng($srcImage, $name);
}
$file['tmp_name'] = $name;
ImageDestroy($srcImage);
return $file;
}
开发者ID:dapfru,项目名称:gladiators,代码行数:30,代码来源:cls_image.php
示例19: get_image_profile
function get_image_profile($id)
{
header('Content-Type: image/jpeg');
$config['width'] = 140;
$data = $this->spkp_model->get_user_profile($id);
$filename = getcwd() . "/media/images/user/" . $data['image'];
if (!file_exists($filename) || $data['image'] == "") {
$filename = getcwd() . "/media/images/smily-user-icon.jpg";
}
list($width, $height) = getimagesize($filename);
$percent = $config['width'] / $width;
$newwidth = $width * $percent;
$newheight = $height * $percent;
$thumb = imagecreatetruecolor($newwidth, $newheight);
$source = imagecreatefromjpeg($filename);
imagecopyresized($thumb, $source, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);
Imagejpeg($thumb);
ImageDestroy($thumb);
}
开发者ID:viktoredz,项目名称:bpom-spkp,代码行数:19,代码来源:spkp.php
示例20: GD2_make_thumb_x
function GD2_make_thumb_x($max_x, $dst_name, $src_file)
{
//가로 사이즈만 지정하는 썸네일 생성.
$img_info = @getimagesize($src_file);
$sx = $img_info[0];
$sy = $img_info[1];
//썸네일 보다 큰가?
if ($sx > $max_x) {
$thumb_y = ceil($sy * $max_x / $sx);
$thumb_x = $max_x;
} else {
$thumb_y = $sy;
$thumb_x = $sx;
}
// JPG 파일인가?
if (true) {
$_dq_tempFile = basename($src_file);
//파일명 추출
$_dq_tempDir = str_replace($_dq_tempFile, "", $src_file);
//경로 추출
$_dq_tempFile = $_dq_tempDir . $dst_name . $_dq_tempFile;
//경로 + 새 파일명 생성
$_create_thumb_file = true;
if (file_exists($_dq_tempFile)) {
//섬네일 파일이 이미 존제한다면 이미지의 사이즈 비교
$old_img = @getimagesize($_dq_tempFile);
if ($old_img[0] != $thumb_x) {
$_create_thumb_file = true;
} else {
$_create_thumb_file = false;
}
if ($old_img[1] != $thumb_y) {
$_create_thumb_file = true;
|
请发表评论