Heim > Backend-Entwicklung > PHP-Tutorial > php缩略图填充白边的示例代码

php缩略图填充白边的示例代码

WBOY
Freigeben: 2016-07-25 08:54:59
Original
1028 Leute haben es durchsucht
  1. //源图的路径,可以是本地文件,也可以是远程图片

  2. $src_path = '1.jpg';
  3. //最终保存图片的宽
  4. $width = 160;
  5. //最终保存图片的高
  6. $height = 120;
  7. //源图对象

  8. $src_image = imagecreatefromstring(file_get_contents($src_path));
  9. $src_width = imagesx($src_image);
  10. $src_height = imagesy($src_image);
  11. //生成等比例的缩略图

  12. $tmp_image_width = 0;
  13. $tmp_image_height = 0;
  14. if ($src_width / $src_height >= $width / $height) {
  15. $tmp_image_width = $width;
  16. $tmp_image_height = round($tmp_image_width * $src_height / $src_width);
  17. } else {
  18. $tmp_image_height = $height;
  19. $tmp_image_width = round($tmp_image_height * $src_width / $src_height);
  20. }
  21. $tmpImage = imagecreatetruecolor($tmp_image_width, $tmp_image_height);

  22. imagecopyresampled($tmpImage, $src_image, 0, 0, 0, 0, $tmp_image_width, $tmp_image_height, $src_width, $src_height);
  23. //添加白边

  24. $final_image = imagecreatetruecolor($width, $height);
  25. $color = imagecolorallocate($final_image, 255, 255, 255);
  26. imagefill($final_image, 0, 0, $color);
  27. $x = round(($width - $tmp_image_width) / 2);

  28. $y = round(($height - $tmp_image_height) / 2);
  29. imagecopy($final_image, $tmpImage, $x, $y, 0, 0, $tmp_image_width, $tmp_image_height);

  30. //输出图片

  31. header('Content-Type: image/jpeg');
  32. imagejpeg($final_image);
复制代码


Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage