Heim >Backend-Entwicklung >PHP-Tutorial >如何在服务器端调整图片大小

如何在服务器端调整图片大小

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOriginal
2016-07-25 09:09:261239Durchsuche
在服务器端完成图片大小的调整,会比在浏览器的处理有很多的好处。
本文介绍了PHP如何在服务器端调整图片大小。
代码包括两部分:
  • imageResizer() is used to process the image
  • loadimage() inserts the image url in a simpler format
  1. function imageResizer($url, $width, $height) {
  2. header('Content-type: image/jpeg');
  3. list($width_orig, $height_orig) = getimagesize($url);
  4. $ratio_orig = $width_orig/$height_orig;
  5. if ($width/$height > $ratio_orig) {
  6. $width = $height*$ratio_orig;
  7. } else {
  8. $height = $width/$ratio_orig;
  9. }
  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. }
  17. //works with both POST and GET
  18. $method = $_SERVER['REQUEST_METHOD'];
  19. if ($method == 'GET') {
  20. imageResize($_GET['url'], $_GET['w'], $_GET['h']);
  21. } elseif ($method == 'POST') {
  22. imageResize($_POST['url'], $_POST['w'], $_POST['h']);
  23. }
  24. // makes the process simpler
  25. function loadImage($url, $width, $height){
  26. echo 'image.php?url=', urlencode($url) ,
  27. '&w=',$width,
  28. '&h=',$height;
  29. }
  30. ?>
复制代码
  1. //Above code would be in a file called image.php.
  2. //Images would be displayed like this:
复制代码


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
Vorheriger Artikel:HTML预览 正则替换 Nächster Artikel:php 无限分类父子追溯方法