Computer >> 컴퓨터 >  >> 프로그램 작성 >> PHP

PHP에서 imagepalettecopy() 함수를 사용하여 한 이미지에서 다른 이미지로 팔레트를 복사하는 방법은 무엇입니까?

<시간/>

이미지팔레트카피() 한 이미지에서 다른 이미지로 팔레트를 복사하는 데 사용되는 내장 PHP 기능입니다. 이 기능은 팔레트를 소스 이미지에서 대상 이미지로 복사합니다.

구문

void imagepalettecopy(resource $destination, resource $source)

매개변수

이미지팔레트카피() $source라는 두 개의 매개변수를 허용합니다. 및 $destination .

  • $destination − 대상 이미지 리소스를 지정합니다.

  • $소스 - 소스 이미지 리소스를 지정합니다.

반환 값

이미지팔레트카피() 값을 반환하지 않습니다.

예시 1

<?php
   // Create two palette images using imagecreate() function.
   $palette1 = imagecreate(700, 300);
   $palette2 = imagecreate(700, 300);
   
   // Allocate the background to be
   // gray in the first palette image
   $gray = imagecolorallocate($palette1, 122, 122, 122);

   // Copy the palette from image 1 to image 2
   imagepalettecopy($palette2, $palette1);

   // gray color allocated to image 1 without using
   // imagecolorallocate() twice
   imagefilledrectangle($palette2, 0, 0, 99, 99, $gray);

   // Output image to the browser
   header('Content-type: image/png');
   imagepng($palette2);
   imagedestroy($palette1);
   imagedestroy($palette2);
?>

출력

PHP에서 imagepalettecopy() 함수를 사용하여 한 이미지에서 다른 이미지로 팔레트를 복사하는 방법은 무엇입니까?

예시 2

<?php
   // Created two palette images using imagecreate() function.
   $palette1 = imagecreate(500, 200);
   $palette2 = imagecreate(500, 200);

   // Create a gray color
   $gray= imagecolorallocate($palette1, 0, 255, 0);

   // gray color as the background to palette 1
   imagefilledrectangle($palette1, 0, 0, 99, 99, $gray);

   // Copy the palette from image 1 to image 2
   imagepalettecopy($palette2, $palette1);

   // Get the number of colors in the image
   $color1 = imagecolorstotal($palette1);
   $color2 = imagecolorstotal($palette2);
   
   echo "Colors in image 1 are " . $color1 . "<br>";
   echo "Colors in image 2 is " . $color2;
?>

출력

Colors in image 1 are 1
Colors in image 2 are 1