How to rotate and save image in PHP?

藏色散人
Release: 2023-04-05 12:28:02
Original
3210 people have browsed it

If you want to upload a 90 degree or 180 degree rotated image in PHP, then this tutorial will help you. We will use the imagecreatefrompng(), imagerotate() and imagepng() functions to rotate png images and save them to the server. The same goes for jpeg images.

How to rotate and save image in PHP?

In the following code example, we will introduce to you how to rotate the specified image 90 degrees in PHP, save it, and rename it to "myUpdateImage.png", "myUpdateImage. jpeg" implementation method.

png examples are as follows:

<?php
$fileName = "002.png";
    $degrees = 90 ;

    $source = imagecreatefrompng($fileName);

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

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

    print_r(&#39;图像已成功保存。&#39;);
Copy after login

jpeg examples are as follows:

<?php
    
    $fileName = "001.jpeg";
    $degrees = 90;
    
    $source = imagecreatefromjpeg($fileName);
     
    $rotate = imagerotate($source, $degrees, 0);
    
    imagejpeg($rotate, "myUpdateImage.jpeg");
    
    print_r(&#39;图像已成功保存。&#39;);
   
?>
Copy after login

Function introduction:

imagecreatefrompng() function Create a new image from a file or URL.

imagecreatefrompng ( string $filename ) : resource
Copy after login

imagecreatefrompng() Returns an image identifier representing the image obtained from the given file name.

The parameter filename represents the path of the PNG image. Return value, image resource is returned after success, FALSE is returned after failure.

1. imagerotate() function Rotate the image at a given angle

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

Rotate the image at a given angle. bgd_color specifies the color of the parts that are not covered after rotation.

The center of rotation is the center of the image, and the rotated image will be scaled down to fit the size of the target image - the edges will not be clipped.

The parameter image represents the image resource returned by the image creation function (such as imagecreatetruecolor()).

angle, the rotation angle is the number of degrees to rotate the image counterclockwise.

bgd_color, indicating the color of the area not covered by the specified rotation

2, ignore_transparent, if set to a non-zero value, the transparent color will be ignored (otherwise it will be retained).

Return value returns the rotated image resource, or returns FALSE on failure.

3. imagejpeg() function Output the image to the browser or file.

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

imagejpeg() Creates a JPEG image with filename as the file name from the image image.

Parameter image, the image resource returned by the image creation function (such as imagecreatetruecolor()).

filename, the path where the file is saved. If not set or NULL, the original image stream will be output directly. If you want to omit this parameter and provide the quality parameter, use NULL.

quality is optional and ranges from 0 (worst quality, smaller file size) to 100 (best quality, largest file size). Defaults to IJG's default quality value (approximately 75).

Return value, TRUE on success, or FALSE on failure.

Related recommendations: "PHP Tutorial"

This article is about how to rotate and save images in PHP. I hope it will be helpful to friends in need!

The above is the detailed content of How to rotate and save image in PHP?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template