현재 위치: > 최신 기사 목록> imagetftext ()와 함께 투명 텍스트 추가

imagetftext ()와 함께 투명 텍스트 추가

M66 2025-05-17

이미지 처리에 PHP를 사용할 때 GD 라이브러리는 다양한 효과를 달성하기위한 풍부한 기능을 제공합니다. imageTtfText ()를 사용하여 이미지의 TrueType 글꼴로 텍스트를 그릴 수있는 곳, ImageColoralLocatealpha () 는 투명성이있는 색상을 할당 할 수 있습니다. 이 두 기능을 조합하여 사용하면 이미지에 투명한 효과가있는 텍스트를 추가 할 수 있습니다.

이 기사는이 효과를 달성하는 방법을 보여주기 위해 예제를 사용합니다.

1 단계 : 캔버스 생성

먼저 캔버스를 만들어야합니다. 여기서는 imageCreatetRueColor ()를 사용하여 진정한 색상 이미지를 만듭니다.

 <?php
// 사진을 만듭니다 400x200 캔버스
$width = 400;
$height = 200;
$image = imagecreatetruecolor($width, $height);

// 배경에 흰색을 할당하십시오
$white = imagecolorallocate($image, 255, 255, 255);
imagefill($image, 0, 0, $white);

2 단계 : 투명성으로 텍스트 색상을 할당합니다

imagecolorallocatealpha () 의 네 번째 파라미터는 투명성을 나타내며, 값은 0 (완전히 불투명)에서 127 (완전히 투명)입니다.

 // 빨간색을 할당하십시오,50% 투명도(거의 동일합니다 alpha = 63)
$red_alpha = imagecolorallocatealpha($image, 255, 0, 0, 63);

3 단계 : 텍스트를 그립니다

우리는 imagettftext ()를 사용하여 캔버스에 텍스트를 그립니다. TTF 글꼴 파일의 경로를 제공해야합니다.

 // 글꼴 파일 경로
$font_path = __DIR__ . '/arial.ttf';

// 캔버스에 텍스트를 작성하십시오
imagettftext(
    $image,        // 이미지 리소스
    30,           // 글꼴 크기
    0,            // 각도
    50,           // X 동등 어구
    100,          // Y 동등 어구(기준선 위치)
    $red_alpha,   // 색상(带투명도)
    $font_path,   // 글꼴 파일 경로
    'Hello, m66.net!' // 쓰기 텍스트
);

4 단계 : 그림을 출력하십시오

투명성으로 PNG 이미지를 출력하려면 투명한 색상을 설정하고 PNG 형식으로 출력해야합니다.

 // 열려 있는 alpha 채널 믹싱
imagesavealpha($image, true);

// 출력 헤더를 설정하십시오
header('Content-Type: image/png');

// 출력 사진
imagepng($image);

// 자원을 파괴하십시오
imagedestroy($image);
?>

  • GD 라이브러리가 서버에 설치되어 있고 Truetype 글꼴에 대한 지원이 php.ini 에서 활성화되어 있는지 확인하십시오.

  • imagecolorallocatealpha () 의 투명성 값이 127에 가까워 질수록 그 효과가 더 투명합니다.

  • ImagePng () 출력을 사용하는 경우 투명 채널을 더 잘 보존 할 수 있습니다.