Heim  >  Artikel  >  Backend-Entwicklung  >  PHP implementiert eine Funktion zum Generieren von Miniaturansichten von Bildern

PHP implementiert eine Funktion zum Generieren von Miniaturansichten von Bildern

小云云
小云云Original
2018-02-10 09:29:593706Durchsuche

Dieser Artikel stellt Ihnen hauptsächlich die von PHP implementierte Funktion zum Generieren von Bildminiaturansichten vor, die die Betriebsfähigkeiten von PHP in Bezug auf Bildattribute beinhaltet. Ich hoffe, es kann Ihnen helfen.


<?php
/**
 * 生成缩略图函数(支持图片格式:gif、jpeg、png和bmp)
 * @author ruxing.li
 * @param string $src   源图片路径
 * @param int  $width  缩略图宽度(只指定高度时进行等比缩放)
 * @param int  $width  缩略图高度(只指定宽度时进行等比缩放)
 * @param string $filename 保存路径(不指定时直接输出到浏览器)
 * @return bool
 */
function mkThumbnail($src, $width = null, $height = null, $filename = null) {
  if (!isset($width) && !isset($height))
    return false;
  if (isset($width) && $width <= 0)
    return false;
  if (isset($height) && $height <= 0)
    return false;
  $size = getimagesize($src);
  if (!$size)
    return false;
  list($src_w, $src_h, $src_type) = $size;
  $src_mime = $size[&#39;mime&#39;];
  switch($src_type) {
    case 1 :
      $img_type = &#39;gif&#39;;
      break;
    case 2 :
      $img_type = &#39;jpeg&#39;;
      break;
    case 3 :
      $img_type = &#39;png&#39;;
      break;
    case 15 :
      $img_type = &#39;wbmp&#39;;
      break;
    default :
      return false;
  }
  if (!isset($width))
    $width = $src_w * ($height / $src_h);
  if (!isset($height))
    $height = $src_h * ($width / $src_w);
  $imagecreatefunc = &#39;imagecreatefrom&#39; . $img_type;
  $src_img = $imagecreatefunc($src);
  $dest_img = imagecreatetruecolor($width, $height);
  imagecopyresampled($dest_img, $src_img, 0, 0, 0, 0, $width, $height, $src_w, $src_h);
  $imagefunc = &#39;image&#39; . $img_type;
  if ($filename) {
    $imagefunc($dest_img, $filename);
  } else {
    header(&#39;Content-Type: &#39; . $src_mime);
    $imagefunc($dest_img);
  }
  imagedestroy($src_img);
  imagedestroy($dest_img);
  return true;
}
$result = mkThumbnail(&#39;./IMG_3324.JPG&#39;, 147, 147);

Hinweis: Denken Sie daran, zuerst die GD-Bibliotheksunterstützung zu aktivieren

Verwandte Empfehlungen:

PHP-Implementierung kann hinzufügen Wasserzeichen-Verarbeitungstools zum Generieren von Miniaturansichten

thinkphp5-Methode zum Hochladen von Bildern und Generieren von Miniaturansichten

AJAX-Methode zum Anzeigen einer Vorschau und zum Hochladen von Bildern und zum Generieren von Miniaturansichten

Das obige ist der detaillierte Inhalt vonPHP implementiert eine Funktion zum Generieren von Miniaturansichten von Bildern. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn