亚洲精品中文字幕无乱码_久久亚洲精品无码AV大片_最新国产免费Av网址_国产精品3级片

php語言

PHP用GD庫(kù)生成高質(zhì)量的縮略圖片

時(shí)間:2024-09-17 15:39:10 php語言 我要投稿
  • 相關(guān)推薦

PHP用GD庫(kù)生成高質(zhì)量的縮略圖片

  PHP用GD庫(kù)生成高質(zhì)量的縮略圖片,PHP一般情況下生成的縮略圖都比較不理想。今天試用PHP,GD庫(kù)來生成縮略圖。雖然并不100%完美。可是也應(yīng)該可以滿足縮略圖的要求了。

  以下是PHP源代碼(ResizeImage.php)。

  復(fù)制代碼 代碼如下:

  <?php

  $FILENAME="image.thumb";

  // 生成圖片的寬度

  $RESIZEWIDTH=400;

  // 生成圖片的高度

  $RESIZEHEIGHT=400;

  function ResizeImage($im,$maxwidth,$maxheight,$name){

  $width = imagesx($im);

  $height = imagesy($im);

  if(($maxwidth && $width > $maxwidth) || ($maxheight && $height > $maxheight)){

  if($maxwidth && $width > $maxwidth){

  $widthratio = $maxwidth/$width;

  $RESIZEWIDTH=true;

  }

  if($maxheight && $height > $maxheight){

  $heightratio = $maxheight/$height;

  $RESIZEHEIGHT=true;

  }

  if($RESIZEWIDTH && $RESIZEHEIGHT){

  if($widthratio < $heightratio){

  $ratio = $widthratio;

  }else{

  $ratio = $heightratio;

  }

  }elseif($RESIZEWIDTH){

  $ratio = $widthratio;

  }elseif($RESIZEHEIGHT){

  $ratio = $heightratio;

  }

  $newwidth = $width * $ratio;

  $newheight = $height * $ratio;

  if(function_exists("imagecopyresampled")){

  $newim = imagecreatetruecolor($newwidth, $newheight);

  imagecopyresampled($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

  }else{

  $newim = imagecreate($newwidth, $newheight);

  imagecopyresized($newim, $im, 0, 0, 0, 0, $newwidth, $newheight, $width, $height);

  }

  ImageJpeg ($newim,$name . ".jpg");

  ImageDestroy ($newim);

  }else{

  ImageJpeg ($im,$name . ".jpg");

  }

  }

  if($_FILES['image']['size']){

  if($_FILES['image']['type'] == "image/pjpeg"){

  $im = imagecreatefromjpeg($_FILES['image']['tmp_name']);

  }elseif($_FILES['image']['type'] == "image/x-png"){

  $im = imagecreatefrompng($_FILES['image']['tmp_name']);

  }elseif($_FILES['image']['type'] == "image/gif"){

  $im = imagecreatefromgif($_FILES['image']['tmp_name']);

  }

  if($im){

  if(file_exists("$FILENAME.jpg")){

  unlink("$FILENAME.jpg");

  }

  ResizeImage($im,$RESIZEWIDTH,$RESIZEHEIGHT,$FILENAME);

  ImageDestroy ($im);

  }

  }

  ?>

  以下是測(cè)試代碼(demo.php)

  復(fù)制代碼 代碼如下:

  <?php

  include('ResizeImage.php');

  if(!empty($_POST)){

  echo($FILENAME.".jpg?cache=".rand(0,999999));

  }

  ?>

  <form name="test" action="?submit=true" enctype="multipart/form-data" method="post" >

  <input type="file" name="image" size="50" value="瀏覽"><p>

  <input type="submit" value="上傳圖片">

  </form>

【PHP用GD庫(kù)生成高質(zhì)量的縮略圖片】相關(guān)文章:

php生成圖片縮略圖的方法08-23

PHP生成圖片縮略圖類示例代碼07-31

PHP生成縮略圖的方法10-13

php生成高清縮略圖實(shí)例08-12

PHP生成縮略圖的類的方法07-11

php生成圓角圖片的方法技巧07-20

php生成縮略圖的兩種方法05-24

php生成縮略圖的兩種方法(代碼)08-08

PHP學(xué)習(xí):QRCode PHP生成二維碼類庫(kù)10-28

如何利用PHP代碼在網(wǎng)頁(yè)上生成圖片10-12