Computer >> 컴퓨터 >  >> 프로그래밍 >> PHP

PHP imagecolortransparent() 함수 완벽 가이드 – 이미지 투명 색상 설정 방법

PHP의 imagecolortransparent() 함수는 이미지 내에서 투명하게 표시할 색상을 지정할 때 사용하는 GD 라이브러리 함수입니다. 이 함수를 활용하면 PNG 등의 이미지에서 특정 색상 영역을 투명하게 처리할 수 있습니다.

구문

imagecolortransparent ( img, color )

매개변수

  • img: imagecreatetruecolor() 함수로 생성한 이미지 리소스입니다.

  • color: imagecolorallocate() 함수로 생성한 색상 식별자입니다.

반환값

imagecolortransparent() 함수는 새롭게 지정된 투명 색상의 식별자(identifier)를 반환합니다. 만약 색상이 지정되지 않았고 해당 이미지에 투명 색상도 설정되어 있지 않다면 -1을 반환합니다.

사용 예제

다음은 imagecolortransparent() 함수를 사용하여 이미지의 배경색을 투명하게 처리하는 예제입니다.

<?php
    $img = imagecreatetruecolor(500, 400);
    $blue = imagecolorallocate($img, 0, 0, 255);
    $transparent = imagecolorallocate($img, 0, 0, 0);
    imagecolortransparent($img, $transparent);
    imagefilledrectangle($img, 80, 90, 400, 220, $blue);
    header('Content-Type: image/png');
    imagepng($img);
    imagedestroy($img);
?>

위 예제의 동작 과정을 살펴보면 다음과 같습니다.

  1. imagecreatetruecolor(500, 400)으로 500×400 크기의 빈 캔버스를 생성합니다.

  2. imagecolorallocate()로 파란색(RGB 0, 0, 255)과 검은색(RGB 0, 0, 0) 색상 식별자를 할당합니다.

  3. imagecolortransparent()를 통해 검은색을 투명 색상으로 지정합니다. 따라서 캔버스의 기본 검은 배경은 투명하게 표시됩니다.

  4. imagefilledrectangle()로 파란색 사각형을 그린 후, PNG 형식으로 출력하고 메모리를 해제합니다.

실행 결과

위 코드를 실행하면 검은색 배경이 투명 처리된 PNG 이미지가 출력되며, 그 위에 파란색 사각형이 그려진 것을 확인할 수 있습니다.

PHP imagecolortransparent() 함수 완벽 가이드 – 이미지 투명 색상 설정 방법