
Gmagick::compositeimage 함수를 사용할 때, 오류가 발생하는 경우는 주로 두 번째 인자인 compositeoperator 또는 세 번째 인자인 geometry가 잘못 지정된 경우입니다.
compositeoperator는 다음과 같은 옵션을 사용할 수 있습니다.
- Over : 대상 이미지 위에 원본 이미지를 겹쳐서 합성합니다.
- In : 대상 이미지 내부에 원본 이미지를 합성합니다.
- Out : 대상 이미지 외부에 원본 이미지를 합성합니다.
- Atop : 대상 이미지 위에 원본 이미지를 겹쳐서 합성합니다.
- DestAtop : 대상 이미지 위에 원본 이미지를 겹쳐서 합성합니다.
- DestOver : 대상 이미지 위에 원본 이미지를 겹쳐서 합성합니다.
- DestIn : 대상 이미지 내부에 원본 이미지를 합성합니다.
- DestOut : 대상 이미지 외부에 원본 이미지를 합성합니다.
geometry는 다음과 같은 형식으로 지정할 수 있습니다.
- (x, y) : 이미지의 좌측 상단을 (x, y) 위치로 지정합니다.
- (x, y, width, height) : 이미지의 크기를 width와 height로 지정합니다.
Gmagick 버전 2.2.5에서는 compositeimage 함수를 사용할 때, 다음과 같은 제한사항이 있습니다.
- 대상 이미지와 원본 이미지가 동일한 크기여야 합니다.
- 대상 이미지와 원본 이미지가 겹치지 않아야 합니다.
예를 들어, 다음과 같이 compositeimage 함수를 사용할 수 있습니다.
#hostingforum.kr
php
$gmagick = new Gmagick();
$gmagick->read('원본이미지.jpg');
$gmagick->compositeimage('대상이미지.jpg', Gmagick::OVER, '10, 20');
$gmagick->write('결과이미지.jpg');
이 예제에서는 원본 이미지를 대상 이미지 위에 겹쳐서 합성합니다.
2025-04-08 02:13