이미지 처리는 웹 개발에서 매우 일반적인 요구 사항입니다. 백엔드 언어로서 PHP는 다양한 이미지 작업을 지원하는 강력한 GD 라이브러리를 제공합니다. 이 기사는 PHP의 내장 ImageFlip 함수를 사용하여 이미지를 뒤집고 압축 기술을 결합하여 이미지 파일의 크기를 효과적으로 줄이는 방법을 소개합니다.
ImageFlip 은 PHP 5.5.0 이상에서 도입 된 기능이며 이미지 리소스를 뒤집는 데 사용됩니다. 수평 플립, 수직 플립 및 동시에 수평 및 수직 플립을 지원합니다.
기능 프로토 타입 :
bool imageflip ( resource $image , int $mode )
$ 이미지 : 뒤집어 야하는 이미지 리소스.
$ 모드 : 플립 모드, 선택적 값 :
img_flip_horizontal (수평 플립)
img_flip_vertical (수직 플립)
img_flip_both (동시에 수평 및 수직으로 플립)
input.jpg 라는 이미지가 있다고 가정하고 다음이 이미지를 가로로 뒤집는 방법을 보여줍니다.
<?php
// 1. 이미지 파일을 읽으십시오
$imagePath = 'input.jpg';
$image = imagecreatefromjpeg($imagePath);
if (!$image) {
die('사진을로드 할 수 없습니다');
}
// 2. 사용 imageflip 이미지를 뒤집습니다(수평 플립)
if (!imageflip($image, IMG_FLIP_HORIZONTAL)) {
imagedestroy($image);
die('이미지 플립이 실패했습니다');
}
// 3. 뒤집힌 이미지를 저장하십시오
$outputPath = 'flipped.jpg';
if (!imagejpeg($image, $outputPath)) {
imagedestroy($image);
die('이미지를 저장하지 못했습니다');
}
// 4. 리소스를 자유롭게합니다
imagedestroy($image);
echo "그림을 성공적으로 뒤집습니다,저장:{$outputPath}";
?>
PHP의 ImageJPeg 함수는 0 (최악의 품질, 최소 파일)에서 100 (최상의 품질, 최대 파일) 범위의 압축 품질 설정을 지원합니다. 압축 품질의 적절한 조정은 시각적 효과를 유지하면서 그림의 크기를 효과적으로 줄일 수 있습니다.
위 코드에서 저장된 부분을 수정하십시오.
// 압축 품질을 설정하십시오 75
$quality = 75;
if (!imagejpeg($image, $outputPath, $quality)) {
imagedestroy($image);
die('이미지를 저장하지 못했습니다');
}
다음은 이미지의 읽기를 보여주는 포괄적 인 예입니다. 수평으로 뒤집힌 후 압축 및 저장된 예제입니다.
<?php
$imagePath = 'input.jpg';
$outputPath = 'flipped_compressed.jpg';
// 1. 이미지로드
$image = imagecreatefromjpeg($imagePath);
if (!$image) {
die('사진을로드 할 수 없습니다');
}
// 2. 이미지를 뒤집습니다(수직 플립 예제)
if (!imageflip($image, IMG_FLIP_VERTICAL)) {
imagedestroy($image);
die('이미지 플립이 실패했습니다');
}
// 3. 압축 품질을 설정하여 이미지를 저장하십시오
$quality = 70; // 요구 사항에 따라 조정할 수 있습니다
if (!imagejpeg($image, $outputPath, $quality)) {
imagedestroy($image);
die('이미지를 저장하지 못했습니다');
}
// 4. 리소스를 자유롭게합니다
imagedestroy($image);
echo "이미지가 성공적으로 뒤집히고 압축되었습니다,경로를 저장하십시오:{$outputPath}";
?>
ImageFlip 함수를 사용하면 이미지의 수평, 수직 또는 양방향 플립을 빠르게 달성 할 수 있습니다.
ImageJPeg 함수의 세 번째 매개 변수를 통해 출력 JPEG 이미지의 압축 품질을 제어하여 파일 크기를 줄일 수 있습니다.
압축 품질을 합리적으로 조정하면 사진의 시각적 효과를 유지하고 웹 사이트로드 속도를 향상시키는 동시에 파일 크기가 크게 줄어 듭니다.
더 많은 PHP 이미지 처리 자습서를 보려면 https://gitbox.net/tutorials/php-image-processing을 방문하십시오