>백엔드 개발 >PHP 튜토리얼 >PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)

PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)

WBOY
WBOY원래의
2021-10-20 11:54:423595검색

저번 글에서는 "PHP를 통해 그래픽 인증코드를 그리는 방법은?"을 가져왔습니다. "에서는 PHP로 텍스트를 그리는 방법과 이전 지식을 바탕으로 그래픽 인증 코드를 그리는 방법을 소개합니다. 이번 글에서는 그래픽 크기 조정 및 자르기 방법을 살펴보겠습니다. 모두에게 도움이 되기를 바랍니다!

PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)

앞서 그래픽 인증 코드를 그리는 방법을 배웠고, PHP에서 이미지 크기 조정 및 자르기를 구현하는 방법을 살펴보겠습니다. 하지만 이미지 크기 조정 및 자르기를 이해하기 전에 먼저 다음 두 가지 기능을 알아봅시다.

  • <strong>imagecopyresampled</strong><strong> </strong> : 이미지의 일부 복사를 리샘플링하고 크기를 조정하는 데 사용됩니다. <strong>imagecopyresampled</strong><strong> </strong>:用于重采样拷贝部分图像并调整大小    

  • <strong>imagecopyresized</strong><strong> </strong>:用于拷贝部分图像并调整大小    

这两个函数拷贝图片的,可以用于完成图像的缩放或者裁剪。它们的语法格式参数是一样的,不同的是它们拷贝的图片是部分还是整张的。它们的语法格式如下:

imagecopyresampled ($目标图 ,$来源图,$目标开始的x位置,$目标开始的y位置,$来源开始的x位置,$来源开始的y位置,$目标图片的宽 ,$目标图片的高,$来源图片的宽 ,$来源图片的高 )

从来源图片的开始点(x,y)起,指定的宽高的大小图片。放至到目标图片的起点(x,y),指定宽高大小的图片中。

缩放图片

缩放图片首先我们先准备一张名为dog.png的图片:

PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)

我们的代码需要做到以下步骤才能完成对图形的缩放:

  • 打开来源图片

  • 设置图片缩放百分比(缩放)

  • 获得来源图片,按比调整大小

  • 新建一个指定大小的图片为目标图

  • 将来源图调整后的大小放到目标中

  • 销毁资源

示例如下:

<?php
//打开来源图片
$a = imagecreatefrompng(&#39;dog.png&#39;);
//定义百分比,缩放到0.1大小
$percent = 0.1;
// 将图片宽高获取到
list($width, $height) = getimagesize(&#39;dog.png&#39;);
//设置新的缩放的宽高
$new_width = $width * $percent;
$new_height = $height * $percent;
//创建新图片
$new_image = imagecreatetruecolor($new_width, $new_height);
//将原图$image按照指定的宽高,复制到$new_image指定的宽高大小中
imagecopyresampled($new_image, $a, 0, 0, 0, 0, $new_width, $new_height, $width, $height);
header(&#39;content-type:image/jpeg&#39;);
imagejpeg($new_image);
?>

输出结果:

PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)

由上述结果,通过imagecopyresampledh函数便完成了图像的缩放。

裁剪图片

裁剪图片,需要通过imagecopyresized

<strong>imagecopyreised</strong><strong> </strong>: 일부를 복사하는 데 사용됩니다. 크기 조정

PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)

이 두 기능은 이미지를 복사하고 이미지 크기 조정 또는 자르기를 완료하는 데 사용할 수 있습니다. 구문 형식 매개변수는 동일합니다. 차이점은 그림의 일부를 복사하는지 전체 그림을 복사하는지입니다. 구문 형식은 다음과 같습니다.

    <?php
     $dst = imagecreatefrompng(&#39;dog.png&#39;);
     $src = imagecreatefrompng(&#39;logo.png&#39;);
     imagecopyresized($dst, $src, 0, 0, 0, 0, 52, 59, 52, 59);
     header(&#39;content-type:image/jpeg&#39;); 
    imagejpeg($dst); 
    imagedestroy($dst);
     imagedestroy($src);
     ?>
  • 소스 이미지의 시작점(x, y)에서 시작하여 이미지의 지정된 너비와 높이입니다. 대상 이미지의 시작점(x, y)에 배치하고 이미지의 너비와 높이를 지정합니다.

    이미지 확대
  • 이미지 확대 먼저 dog.png라는 이미지를 준비합니다:

  • 우리 코드에는 다음 단계를 완료해야 합니다. 그래픽 크기 조정 완료:

  • 소스 이미지 열기


이미지 크기 조정 백분율 설정(확대/축소)

PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)소스 이미지를 가져오고 비율에 따라 크기 조정PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)


만들기 새로 지정된 크기의 이미지가 대상 이미지입니다

소스 이미지의 조정된 크기를 대상에 넣습니다PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)

리소스를 파괴합니다

예제는 다음과 같습니다.🎜🎜rrreee🎜출력 결과: 🎜🎜PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)🎜🎜From 위의 결과는 imagecopyresampledh 함수 이미지 스케일링을 통해 완료됩니다. 🎜🎜🎜이미지 자르기🎜🎜🎜이미지 자르기, imagecopyreised를 사용해야 합니다. 그것을 달성하는 기능. 다음으로 예를 통해 설명하겠습니다. 🎜🎜dog.png와 logo.png라는 이름의 두 장의 사진이 있습니다. 이거? 모직물? 주요 단계는 다음과 같습니다. 🎜🎜🎜🎜소스 이미지와 대상 이미지를 엽니다. 🎜🎜🎜🎜소스 이미지의 점을 캡처하고 너비와 높이를 설정합니다. 대상 이미지에 넣습니다. (자르기) 🎜🎜🎜🎜이미지 입력 ​​저장🎜🎜🎜🎜리소스 삭제🎜🎜🎜🎜실제 작업은 다음과 같습니다. 🎜🎜🎜로고 이미지에서 텍스트 부분을 자르고 이미지 부분만 유지하고 싶습니다. 우리가 원하는 것이 무엇인지 알 수 있습니다. 보유된 이미지 부분은 (0,0)에서 시작하여 (52,59)에서 끝납니다. 🎜🎜🎜🎜🎜🎜그럼 잘라낸 그림을 대상 그림의 왼쪽 상단에 배치하겠습니다. 좌표는 (0, 0)부터 (52, 59)까지입니다. 이제 아이디어를 정리했으니 코드를 작성하겠습니다. 🎜 🎜rrreee🎜출력 결과: 🎜🎜🎜🎜🎜위 결과에서 imagecopyresizeh 기능을 통해 이미지 자르기를 완료했습니다. 🎜🎜추천 학습: "🎜PHP 비디오 튜토리얼🎜"🎜

위 내용은 PHP에서 이미지 크기 조정 및 자르기를 완료하는 방법은 무엇입니까? (자세한 예시)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.