如何使用PHP中的imagecreatefromjpeg()函数从JPEG文件创建一个新图像?


imagecreatefromjpeg() 是PHP中的一个内置函数,用于从JPEG文件创建一个新图像。它返回一个图像标识符,表示从给定文件名获得的图像。

语法

resource imagecreatefromjpeg(string $filename)

参数

imagecreatefromjpeg() 只使用一个参数,$filename,它包含图像的名称或JPEG图像的路径。

返回值

imagecreatefromjpeg() 成功时返回图像资源标识符,失败时返回错误。

示例1

<?php
   // Load an image from local drive/file
   $img = imagecreatefromjpeg('C:\xampp\htdocs\test\1.jpeg');
   
   // it will show the loaded image in the browser
   header('Content-type: image/jpg');
   
   imagejpeg($img);
   
   imagedestroy($img);
?>

输出

示例2

<?php
   // Load a JPEG image from local drive/file
   $img = imagecreatefromjpeg('C:\xampp\htdocs\test\1(a).jpeg');
   
   // Flip the image
   imageflip($img, 1);
   
   // Save the GIF image in the given path.
   imagejpeg($img,'C:\xampp\htdocs\test\1(b).png');
   imagedestroy($img);
?>

输入图像

输出图像

解释 − 在示例2中,我们使用imagecreatefromjpeg()函数从本地路径加载jpeg图像。然后,我们使用imageflip()函数翻转图像。

示例3 − 处理加载JPEG图像期间的错误

<?php
   function LoadJpeg($imgname) {
      /* Attempt to open */
      $im = @imagecreatefromjpeg($imgname);
     
      /* See if it failed */
      if(!$im) {
         /* Create a black image */
         $im = imagecreatetruecolor(700, 300);
         $bgc = imagecolorallocate($im, 0, 0, 255);
         $tc = imagecolorallocate($im, 255,255, 255);
         imagefilledrectangle($im, 0, 0, 700, 300, $bgc);
         
         /* Output an error message */
         imagestring($im, 20, 80, 80, 'Error loading ' . $imgname, $tc);
      }
      return $im;
   }
   header('Content-Type: image/jpeg');
   $img = LoadJpeg('bogus.image');
   imagejpeg($img);
   imagedestroy($img);
?>

输出

更新于:2021年8月9日

2K+ 浏览量

开启你的职业生涯

完成课程获得认证

开始学习
广告