PHP imagecopy() 함수란?
PHP의 imagecopy() 함수는 한 이미지의 일부를 다른 이미지로 복사할 때 사용하는 GD 라이브러리 함수입니다. 워터마크 삽입, 이미지 합성, 썸네일 제작 등 다양한 이미지 편집 작업에 폭넓게 활용됩니다.
구문
imagecopy( dst_img, src_img, dst_x, dst_y, src_x, src_y, src_w, src_h)
매개변수
dst_im — 복사된 이미지가 저장될 대상 이미지의 링크 리소스를 설정합니다.
src_im — 복사할 원본 이미지의 링크 리소스를 설정합니다.
dst_x — 대상 이미지에서 복사 영역이 위치할 x 좌표를 설정합니다.
dst_y — 대상 이미지에서 복사 영역이 위치할 y 좌표를 설정합니다.
src_x — 원본 이미지에서 복사를 시작할 지점의 x 좌표를 설정합니다.
src_y — 원본 이미지에서 복사를 시작할 지점의 y 좌표를 설정합니다.
src_w — 복사할 원본 영역의 너비를 설정합니다.
src_h — 복사할 원본 영역의 높이를 설정합니다.
반환값
imagecopy() 함수는 복사에 성공하면 TRUE를 반환하고, 실패하면 FALSE를 반환합니다.
예제 1
다음은 GIF 이미지를 불러와 다른 이미지로 복사하는 기본적인 예제입니다:
<?php
$srcImg = imagecreatefromgif('https://www.tutorialspoint.com/images/html.gif');
$dest = imagecreatetruecolor(170, 140);
imagecopy($dest, $srcImg, 0, 0, 0, 0, 180, 260);
header('Content-Type: image/gif');
imagegif($dest);
imagedestroy($dest);
imagedestroy($srcImg);
?>
출력 결과
위 코드를 실행하면 다음과 같은 출력이 생성됩니다:

예제 2
이번에는 이미지의 특정 부분만 골라서 복사하는 또 다른 예제를 살펴보겠습니다:
<?php
$srcImg = imagecreatefromgif('https://www.tutorialspoint.com/images/html.gif');
$dest = imagecreatetruecolor(170, 140);
imagecopy($dest, $srcImg, 10, 20, 0, 0, 100, 280);
header('Content-Type: image/gif');
imagegif($dest);
imagedestroy($dest);
imagedestroy($srcImg);
?>
출력 결과
위 코드를 실행하면 다음과 같은 출력이 생성됩니다:
