首页 > 开发 > PHP > 正文

php实现在服务器端调整图片大小的方法

2024-05-04 23:36:15
字体:
来源:转载
供稿:网友

这篇文章主要介绍了php实现在服务器端调整图片大小的方法,实例分析了imageResizer与loadimage操作图片的相关技巧,需要的朋友可以参考下

本文实例讲述了php实现在服务器端调整图片大小的方法。分享给大家供大家参考。具体分析如下:

在服务器端完成图片大小的调整,会比在浏览器的处理有很多的好处。

本文介绍了PHP如何在服务器端调整图片大小。

代码包括两部分:

① imageResizer() is used to process the image

② loadimage() inserts the image url in a simpler format

 

 
  1. <?php 
  2. function imageResizer($url$width$height) { 
  3. header('Content-type: image/jpeg'); 
  4. list($width_orig$height_orig) = getimagesize($url); 
  5. $ratio_orig = $width_orig/$height_orig
  6. if ($width/$height > $ratio_orig) { 
  7. $width = $height*$ratio_orig
  8. else { 
  9. $height = $width/$ratio_orig
  10. // This resamples the image 
  11. $image_p = imagecreatetruecolor($width$height); 
  12. $image = imagecreatefromjpeg($url); 
  13. imagecopyresampled($image_p$image, 0, 0, 0, 0, $width$height$width_orig$height_orig); 
  14. // Output the image 
  15. imagejpeg($image_p, null, 100); 
  16. //works with both POST and GET 
  17. $method = $_SERVER['REQUEST_METHOD']; 
  18. if ($method == 'GET') { 
  19. imageResize($_GET['url'], $_GET['w'], $_GET['h']); 
  20. elseif ($method == 'POST') { 
  21. imageResize($_POST['url'], $_POST['w'], $_POST['h']); 
  22. // makes the process simpler 
  23. function loadImage($url$width$height){ 
  24. echo 'image.php?url=', urlencode($url) , 
  25. '&w=',$width
  26. '&h=',$height
  27. ?> 

用法:

 

 
  1. //Above code would be in a file called image.php. 
  2. //Images would be displayed like this: 
  3. <img src="<?php loadImage('image.jpg', 50, 50) ?>" alt="" /> 

希望本文所述对大家的php程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表