如何在PHP中旋转并保存图像?

来源:藏色散人 发布时间:2019-03-02 17:23:04 阅读量:913

如果你想在PHP中上传90度或180度旋转图像,那么本教程将帮助你。我们将使用imagecreatefrompng(),imagerotate()和imagepng()函数来旋转png图像并保存到服务器,jpeg图像同理。

在下面的代码示例中,我们给大家介绍在PHP中将指定图像旋转90度后保存,并重命名为“myUpdateImage.png”、"myUpdateImage.jpeg"的实现方法。

png示例如下:

1

2

3

4

5

6

7

8

9

10

11

<?php

$fileName = "002.png";

    $degrees = 90 ;

 

    $source = imagecreatefrompng($fileName);

 

    $rotate = imagerotate ($source,$degrees,0);

 

    imagepng($rotate,"myUpdateImage.png");

 

    print_r('图像已成功保存。');

jpeg示例如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<?php

     

    $fileName = "001.jpeg";

    $degrees = 90;

     

    $source = imagecreatefromjpeg($fileName);

      

    $rotate = imagerotate($source, $degrees, 0);

     

    imagejpeg($rotate, "myUpdateImage.jpeg");

     

    print_r('图像已成功保存。');

    

?>

函数介绍:

imagecreatefrompng()函数由文件或 URL 创建一个新图象。

1

imagecreatefrompng ( string $filename ) : resource

imagecreatefrompng() 返回一图像标识符,代表了从给定的文件名取得的图像。

参数filename表示PNG 图像的路径。返回值,成功后返回图象资源,失败后返回 FALSE 。

1、imagerotate()函数用给定角度旋转图像

1

imagerotate ( resource $image , float $angle , int $bgd_color [, int $ignore_transparent = 0 ] ) : resource

将图像用给定的 angle 角度旋转。bgd_color 指定了旋转后没有覆盖到的部分的颜色。

旋转的中心是图像的中心,旋转后的图像会按比例缩小以适合目标图像的大小——边缘不会被剪去。

参数image表示由图象创建函数(例如imagecreatetruecolor())返回的图象资源。

angle,转角度为逆时针旋转图像的角度数。

bgd_color,表示指定旋转后未覆盖区域的颜色

2、ignore_transparent,如果被设为非零值,则透明色会被忽略(否则会被保留)。

返回值返回旋转后的图像资源, 或者在失败时返回 FALSE。

3、imagejpeg()函数输出图象到浏览器或文件。

1

imagejpeg ( resource $image [, string $filename [, int $quality ]] ) : bool

imagejpeg() 从 image 图像以 filename 为文件名创建一个 JPEG 图像。

参数image,由图象创建函数(例如imagecreatetruecolor())返回的图象资源。

filename,文件保存的路径,如果未设置或为 NULL,将会直接输出原始图象流。如果要省略这个参数而提供 quality 参数,使用NULL。

quality 为可选项,范围从 0(最差质量,文件更小)到 100(最佳质量,文件最大)。默认为 IJG 默认的质量值(大约 75)。

返回值,成功时返回 TRUE, 或者在失败时返回 FALSE。

相关推荐:《PHP教程

本篇文章就是关于在PHP中旋转并保存图像的方法介绍,希望对需要的朋友有所帮助!


标签: PHP
分享:
评论:
你还没有登录,请先