<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. php語言

    php生成圖片縮略圖功能示例

    時間:2025-05-28 12:57:32 php語言 我要投稿
    • 相關推薦

    php生成圖片縮略圖功能示例

      php生成圖片縮略圖功能,結合完整實例形式分析了php縮略圖生成的詳細步驟與相關實現技巧,需要的朋友可以參考下。

      本文實例講述了php生成圖片縮略圖功能。分享給大家供大家參考,具體如下:

      完整代碼如下(為方便閱讀,代碼使用http://tools.jb51.net/code/phpformat進行了格式化處理):

      <?php

      /*

      * Created on 2011-3-18

      *

      * To change the template for this generated file go to

      * Window - Preferences - PHPeclipse - PHP - Code Templates

      */

      /*構造函數-生成縮略圖+水印,參數說明:

      $srcFile-圖片文件名,

      $dstFile-另存文件名,

      $markwords-水印文字,

      $markimage-水印圖片,

      $dstW-圖片保存寬度,

      $dstH-圖片保存高度,

      $rate-圖片保存品質*/

      makethumb("1.jpg", "aa/b.jpg", "50", "50");

      function makethumb($srcFile, $dstFile, $dstW, $dstH, $rate = 100, $markwords = null, $markimage = null) {

      $data = GetImageSize($srcFile);

      switch ($data[2]) {

      case 1:

      $im = @ImageCreateFromGIF($srcFile);

      break;

      case 2:

      $im = @ImageCreateFromJPEG($srcFile);

      break;

      case 3:

      $im = @ImageCreateFromPNG($srcFile);

      break;

      }

      if (!$im) return False;

      $srcW = ImageSX($im);

      $srcH = ImageSY($im);

      $dstX = 0;

      $dstY = 0;

      if ($srcW * $dstH > $srcH * $dstW) {

      $fdstH = round($srcH * $dstW / $srcW);

      $dstY = floor(($dstH - $fdstH) / 2);

      $fdstW = $dstW;

      } else {

      $fdstW = round($srcW * $dstH / $srcH);

      $dstX = floor(($dstW - $fdstW) / 2);

      $fdstH = $dstH;

      }

      $ni = ImageCreateTrueColor($dstW, $dstH);

      $dstX = ($dstX < 0) ? 0 : $dstX;

      $dstY = ($dstX < 0) ? 0 : $dstY;

      $dstX = ($dstX > ($dstW / 2)) ? floor($dstW / 2) : $dstX;

      $dstY = ($dstY > ($dstH / 2)) ? floor($dstH / s) : $dstY;

      $white = ImageColorAllocate($ni, 255, 255, 255);

      $black = ImageColorAllocate($ni, 0, 0, 0);

      imagefilledrectangle($ni, 0, 0, $dstW, $dstH, $white); // 填充背景色

      ImageCopyResized($ni, $im, $dstX, $dstY, 0, 0, $fdstW, $fdstH, $srcW, $srcH);

      if ($markwords != null) {

      $markwords = iconv("gb2312", "UTF-8", $markwords);

      //轉換文字編碼

      ImageTTFText($ni, 20, 30, 450, 560, $black, "simhei.ttf", $markwords); //寫入文字水印

      //參數依次為,文字大小|偏轉度|橫坐標|縱坐標|文字顏色|文字類型|文字內容

      } elseif ($markimage != null) {

      $wimage_data = GetImageSize($markimage);

      switch ($wimage_data[2]) {

      case 1:

      $wimage = @ImageCreateFromGIF($markimage);

      break;

      case 2:

      $wimage = @ImageCreateFromJPEG($markimage);

      break;

      case 3:

      $wimage = @ImageCreateFromPNG($markimage);

      break;

      }

      imagecopy($ni, $wimage, 500, 560, 0, 0, 88, 31); //寫入圖片水印,水印圖片大小默認為88*31

      imagedestroy($wimage);

      }

      ImageJpeg($ni, $dstFile, $rate);

      ImageJpeg($ni, $srcFile, $rate);

      imagedestroy($im);

      imagedestroy($ni);

      }

      ?>

    【php生成圖片縮略圖功能示例】相關文章:

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

    php上傳圖片生成縮略圖07-31

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

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

    php生成高清縮略圖實例08-12

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

    PHP用GD庫生成高質量的縮略圖片09-17

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

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

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人