PHP에서 imageCreatetRuecolor () 및 imageColorallocatealpha ()는 이미지를 처리 할 때 일반적으로 사용되는 두 가지 기능입니다. 이 두 기능은 투명성으로 이미지 효과를 만들어야 할 때 사용하는 핵심 도구입니다.
이 기사는이 두 기능을 사용하여 투명한 이미지를 만들고 주요 단계와 예방 조치를 설명하는 방법을 자세히 소개합니다.
imageCreatetRueColor ()는 진정한 색상 빈 이미지 캔버스를 만드는 데 사용됩니다. 이 기능으로 반환 된 이미지 캔버스에는 24 비트 색상 (빨간색, 녹색 및 파란색)이 포함되어있어 고품질 이미지를 처리하는 데 적합합니다.
$width = 200; // 이미지의 너비
$height = 200; // 이미지의 높이
$image = imagecreatetruecolor($width, $height); // 빈 진정한 색상 이미지를 만듭니다
imagecolorallocatealpha ()는 투명성이있는 색상을 할당하는 데 사용됩니다. 정상적인 imageColorAllocate () 와 달리 imageColoralLocatealpha ()를 사용하면 색상의 투명성 값을 설정할 수 있습니다. 투명성의 값은 0에서 127, 0 범위는 완전히 불투명하며 127은 완전히 투명한 것을 의미합니다.
$transColor = imagecolorallocatealpha($image, 255, 255, 255, 50); // 반투명 흰색을 만듭니다
다음으로, 투명한 배경으로 이미지를 만들고 싶다고 가정하고 imageCreatetRueColor () 와 imageColoralLocateAlpha ()를 결합하고 이미지 fill () 함수로 백그라운드를 채울 수 있습니다.
<?php
// 设置이미지의 너비和高度
$width = 200;
$height = 200;
// 진정한 색상 이미지를 만듭니다
$image = imagecreatetruecolor($width, $height);
// 이미지의 투명한 배경을 설정합니다
imagesavealpha($image, true); // 저장을 활성화하십시오 alpha 통로
$transColor = imagecolorallocatealpha($image, 255, 255, 255, 127); // 완전히 투명한 흰색
// 배경색은 투명합니다
imagefill($image, 0, 0, $transColor);
// 이미지에 다른 것을 그립니다(예를 들어, 반투명 사각형을 추가하십시오)
$rectColor = imagecolorallocatealpha($image, 255, 0, 0, 50); // 반투명 빨간색
imagefilledrectangle($image, 50, 50, 150, 150, $rectColor);
// 출력 이미지
header('Content-Type: image/png');
imagepng($image);
// 무료 메모리
imagedestroy($image);
?>
이미지 생성 : imageCreateTrueColor ()는 200x200 픽셀의 이미지를 만듭니다.
투명성 지원 활성화 : ImagesAvealpha ($ image, true)는 PHP에 이미지가 알파 채널, 즉 투명성 정보를 지원할 것이라고 말합니다.
투명한 배경 설정 : imagecolorallocatealpha ()는 전체 이미지의 배경을 채우는 완전히 투명한 흰색을 만듭니다.
반투명 사각형을 그리십시오 : imagecolorallocatealpha ()는 반투명 빨간색을 만드는 데 다시 사용됩니다. 다음으로 ImageFilledRectangle ()은 이미지에 투명한 사각형을 그립니다.
출력 이미지 : 마지막으로, 이미지는 자연스럽게 투명한 배경을 지원하는 ImagePng () 을 통해 PNG 형식으로 출력됩니다.
이미지 형식 : PNG 형식은 투명성을 지원합니다. JPEG 또는 GIF 형식으로 투명성을 사용하려고하면 예상치 못한 결과가 발생합니다.
색상 및 투명성 값 : imagecolorallocatealpha ()는 0 (완전히 불투명)에서 127 (완전히 투명) 범위의 투명성을 갖습니다. 필요에 따라 투명성을 조정할 수 있습니다.
성능 : 투명한 이미지를 작동 할 때는 더 많은 컴퓨팅과 메모리가 필요합니다. 특히 이미지가 큰 경우 실제 사용에서 성능 문제에주의를 기울여야합니다.
PHP는 imageCreatetRueColor () 및 imageColoralLocatealpha ()를 함께 사용하여 투명한 효과로 이미지를 생성 할 수있는 유연성을 제공합니다. 이미지 처리, 이미지 편집 또는 그래픽 디자인에 관계없이 투명성은보다 창의적인 공간을 제공 할 수 있습니다. 이 기사 가이 두 기능이 어떻게 사용되는지 이해하고 향후 이미지 처리 작업을 지원하는 데 도움이되기를 바랍니다.