> 백엔드 개발 > PHP 문제 > PHP에서 캔버스 색상을 설정하는 방법

PHP에서 캔버스 색상을 설정하는 방법

青灯夜游
풀어 주다: 2023-03-11 17:38:02
원래의
2794명이 탐색했습니다.

캔버스 색상을 설정하는 방법: 1. "imagecolorallocate(image,red,green,blue)" 문을 사용합니다. 2. "imagecolorallocatealpha(image,red,green,blue,alpha)" 문을 사용합니다.

PHP에서 캔버스 색상을 설정하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

방법 1: imagecolorallocate() 함수

imagecolorallocate() 함수는 이미지 리소스에 색상을 할당할 수 있습니다. 이미지에 여러 색상을 설정해야 하는 경우 이 함수를 여러 번 호출하면 됩니다. 함수의 구문 형식은 다음과 같습니다.

imagecolorallocate(resource $image, int $red, int $green, int $blue):
로그인 후 복사

그 중 $image는 설정할 이미지 리소스이며, imagecolorallocate() 함수는 주어진 RGB 구성 요소인 $red로 구성된 색상을 나타내는 식별자를 반환합니다. $green 및 $blue는 각각 필요한 색상의 빨간색, 녹색, 파란색 구성 요소이며 값 범위는 0~255의 정수 또는 0x00~0xFF의 16진수 값입니다.

Tips: imagecreate() 함수를 사용하여 이미지 리소스를 생성한 경우, imagecolorallocate() 함수가 처음 호출될 때 기본적으로 배경색으로 채워집니다.

【예제】이미지 색상을 설정하려면 imagecolorallocate() 함수를 사용하세요.

<?php
    $image = imagecreate(100, 100);
    $blue = imagecolorallocate($image, 0, 0, 255);
    $red = imagecolorallocate($image, 255, 0, 0);
    $green = imagecolorallocate($image, 0, 255, 0);
    header(&#39;Content-type:image/jpeg&#39;);
    imagejpeg($image);
    imagedestroy($image);
?>
로그인 후 복사

실행 결과는 다음과 같습니다.

PHP에서 캔버스 색상을 설정하는 방법

방법 2: imagecolorallocatealpha() 함수 사용

imagecolorallocatealpha() 이 함수는 imagecolorallocate()와 동일하지만 설정할 추가 매개변수 alpha가 있습니다. 투명도, 함수의 구문 형식은 다음과 같습니다.

imagecolorallocatealpha(resource $image, int $red, int $green, int $blue, int $alpha)
로그인 후 복사

그 중 $image는 색상을 설정하는 이미지 리소스입니다. $red, $green 및 $blue는 필요한 색상의 빨간색, 녹색 및 파란색 구성 요소입니다. 각각 값 범위는 0 ~ 255 또는 16진수 0x00 ~ 0xFF입니다. $alpha는 색상의 투명도를 설정하는 데 사용되며 값 범위는 0 ~ 127입니다. 0은 완전히 불투명함을 의미하고 127은 완전히 불투명함을 의미합니다. 투명한.

【예제】이미지 색상을 설정하려면 imagecolorallocatealpha() 함수를 사용하세요.

<?php
    $size=300;
    $image=imagecreatetruecolor($size,$size);
    //用白色背景加黑色边框画个方框
    $back=imagecolorallocate($image,255,255,255);
    $border=imagecolorallocate($image,0,0,0);
    imagefilledrectangle($image,0,0,$size-1,$size-1,$back);
    imagerectangle($image,0,0,$size-1,$size-1,$border);
    $yellow_x=100;
    $yellow_y=75;
    $red_x=120;
    $red_y=165;
    $blue_x=187;
    $blue_y=125;
    $radius=150;
    //用alpha值分配一些颜色
    $yellow=imagecolorallocatealpha($image,255,255,0,75);
    $red=imagecolorallocatealpha($image,255,0,0,75);
    $blue=imagecolorallocatealpha($image,0,0,255,75);
    //画3个交迭的圆
    imagefilledellipse($image,$yellow_x,$yellow_y,$radius,$radius,$yellow);
    imagefilledellipse($image,$red_x,$red_y,$radius,$radius,$red);
    imagefilledellipse($image,$blue_x,$blue_y,$radius,$radius,$blue);
    //不要忘记输出正确的header!
    header(&#39;Content-type:image/png&#39;);
    //最后输出结果
    imagepng($image);
    imagedestroy($image);
?>
로그인 후 복사

실행 결과는 아래 그림과 같습니다.

PHP에서 캔버스 색상을 설정하는 방법

추천 학습: "PHP Video Tutorial"

위 내용은 PHP에서 캔버스 색상을 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
php
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿