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

PHP imagestringup() 함수로 이미지에 문자열을 세로로 그리는 방법

imagestringup()은 PHP의 내장(GD) 함수로, 이미지 위에 문자열을 세로 방향(아래에서 위로)으로 그릴 때 사용됩니다. 일반적인 imagestring() 함수와 달리 텍스트가 90도 회전된 형태로 출력되므로, 세로 라벨이나 측면 텍스트가 필요한 이미지를 만들 때 유용합니다.

문법(Syntax)

bool imagestringup($image, $font, $x, $y, $string, $color)

매개변수(Parameters)

이 함수는 총 여섯 개의 매개변수를 받습니다.

  • $imageimagecreatetruecolor() 함수로 생성한 빈 이미지 리소스입니다. 이 함수를 통해 지정한 크기의 새 이미지 캔버스를 만들 수 있습니다.

  • $font − 사용할 글꼴 크기를 지정합니다. 내장 글꼴의 경우 1부터 5까지의 값을 사용하며, 숫자가 클수록 글자가 커집니다. 또는 imageloadfont() 함수로 불러온 사용자 정의 글꼴 식별자를 사용할 수도 있습니다.

  • $x − 문자열이 시작되는 가로(X축) 좌표입니다. 이미지의 왼쪽 상단 모서리를 기준으로 합니다.

  • $y − 문자열이 시작되는 세로(Y축) 좌표입니다. 마찬가지로 이미지의 상단을 기준으로 위치가 결정됩니다.

  • $string − 이미지에 그릴 실제 문자열(텍스트)입니다.

  • $color − 문자열에 적용할 색상입니다. 보통 imagecolorallocate() 함수로 생성한 색상 식별자를 전달합니다.

반환 값(Return Values)

문자열이 성공적으로 그려지면 true를 반환하고, 실패하면 false를 반환합니다.

사용 예제

<?php
   // imagecreatetruecolor() 함수로 700*300 크기의 빈 이미지 생성
   $img = imagecreatetruecolor(700, 300);

   // 이미지의 배경색 지정
   $bgcolor = imagecolorallocate($img, 122, 122, 122);

   // 선택한 색상으로 배경 채우기
   imagefill($img, 0, 0, $bgcolor);

   // 흰색 텍스트 색상 지정 후 세로로 문자열 그리기
   $textcolor = imagecolorallocate($img, 255, 255, 255);
   imagestringup($img, 6, 130, 150, 'Hello World', $textcolor);

   // 브라우저에 PNG 이미지 출력
   header('Content-type: image/png');
   imagepng($img);
?>

실행 결과

위 코드를 실행하면 회색 배경 위에 'Hello World'라는 텍스트가 세로 방향으로 그려진 PNG 이미지가 브라우저에 출력됩니다. 텍스트는 아래쪽에서 위쪽으로 읽히는 형태로 렌더링되며, $x$y 좌표 값을 조절해 원하는 위치에 자유롭게 배치할 수 있습니다.