• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP Imagejpeg函数代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了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&eacute;pertoire de la photo 
  * @param $photo la photo que l'on souhaite redimensionner
  * @param $taille la taille d&eacute;sir&eacute; 
  */
 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;
        

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP Imagepng函数代码示例发布时间:2022-05-24
下一篇:
PHP AMP_get_renderer函数代码示例发布时间:2022-05-24
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap