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

yipeiwu_com6年前服务器

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

在服务器端完成图片大小的调整,会比在浏览器的处理有很多的好处。
本文介绍了PHP如何在服务器端调整图片大小。

代码包括两部分:

① imageResizer() is used to process the image
② loadimage() inserts the image url in a simpler format

<?php
 function imageResizer($url, $width, $height) {
  header('Content-type: image/jpeg');
  list($width_orig, $height_orig) = getimagesize($url);
  $ratio_orig = $width_orig/$height_orig;
  if ($width/$height > $ratio_orig) {
   $width = $height*$ratio_orig;
  } else {
   $height = $width/$ratio_orig;
  }
  // This resamples the image
  $image_p = imagecreatetruecolor($width, $height);
  $image = imagecreatefromjpeg($url);
  imagecopyresampled($image_p, $image, 0, 0, 0, 0, $width, $height, $width_orig, $height_orig);
  // Output the image
  imagejpeg($image_p, null, 100);
 }
 //works with both POST and GET
 $method = $_SERVER['REQUEST_METHOD'];
 if ($method == 'GET') {
  imageResize($_GET['url'], $_GET['w'], $_GET['h']);
  } elseif ($method == 'POST') {
  imageResize($_POST['url'], $_POST['w'], $_POST['h']);
  }
 // makes the process simpler
 function loadImage($url, $width, $height){
  echo 'image.php?url=', urlencode($url) ,
  '&w=',$width,
  '&h=',$height;
 }
?>

用法:

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

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

相关文章

python定时采集摄像头图像上传ftp服务器功能实现

首先是截图,从摄像头截取一幅图像: 复制代码 代码如下:while 1:   #测试摄像头的存在    try:  ...

php采集中国代理服务器网的方法

本文实例讲述了php采集中国代理服务器网的方法。分享给大家供大家参考。具体如下: <?php /** * 采集中国代理服务器网 最新列表 */ class prox...

Pycharm保存不能自动同步到远程服务器的解决方法

Pycharm保存不能自动同步到远程服务器的解决方法

Deployment已经设置了远程服务,Pycharm也已经取消自动保存,确保Ctrl+S可以触发,可是依旧不能自动同步到远程服务器。捣鼓了半天发现在Delployment的mappin...

在Mac OS上使用mod_wsgi连接Python与Apache服务器

一、安装mod_wsgi 3.4: ./configure --with-apxs=/Users/levin/dev/apache2.2.27/bin/apxs --with-pyt...

python网络编程学习笔记(三):socket网络服务器

1、TCP连接的建立方法 客户端在建立一个TCP连接时一般需要两步,而服务器的这个过程需要四步,具体见下面的比较。 步骤 TCP客户端 TCP服务器 第一步 建立socket对象...