현재 위치: > 최신 기사 목록> PHP의 ImageCharup 함수를 통해 이탤릭체 또는 대담한 효과로 텍스트를 그리는 방법은 무엇입니까? 구현 방법의 설명

PHP의 ImageCharup 함수를 통해 이탤릭체 또는 대담한 효과로 텍스트를 그리는 방법은 무엇입니까? 구현 방법의 설명

gitbox 2025-06-15

이미지 처리에 PHP의 GD 라이브러리를 사용하는 경우 imageCharup ()은 이미지에서 단일 문자를 수직으로 그리는 기능입니다. imageTtftext () 와 같은 풍부한 스타일의 트루 타입 글꼴을 지원하지는 않지만 간단한 시나리오에서 여전히 기본 문자 그리기 작업을 수행 할 수 있습니다. 그러나 ImageCharup () 자체는 이탤릭체 또는 대담한 스타일을 직접 지원하지 않으므로 절차 기술을 통해 이러한 효과를 "시뮬레이션"해야합니다.

1. 기본 지식 검토

imageCharup () 함수의 기본 사용량은 다음과 같습니다.

 imagecharup(resource $image, int $font, int $x, int $y, string $char, int $color): bool
  • $ 이미지 : 이미지 리소스

  • $ font : 내장 글꼴 (0 ~ 5)

  • $ x , $ y : 문자 시작 좌표

  • $ char : 그릴 캐릭터

  • $ 색상 : 색상 식별자

이 함수는 캐릭터 배열이 수직으로 이미지의 맨 아래로 문자를 그립니다.

2. 굵은 텍스트를 시뮬레이션하는 방법

대담한 원리는 다음과 같습니다. 캐릭터 근처에서 약간의 오프셋을 만들고, 같은 캐릭터를 다시 그리워 "대담한"시각적 효과를 형성합니다. 이것은 약간 오프셋 위치에서 ImageCharup ()를 반복적으로 호출하여 수행 할 수 있습니다.

 <?php
$image = imagecreatetruecolor(100, 100);
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
imagefill($image, 0, 0, $white);

// 시뮬레이션 대담한
$font = 4;
$x = 50;
$y = 80;
$char = 'A';

for ($i = 0; $i < 2; $i++) {
    imagecharup($image, $font, $x + $i, $y, $char, $black);
}

imagepng($image, 'bold.png');
imagedestroy($image);
?>

$ x 또는 $ y 의 값을 변경하면 같은 문자를 두 번 이상 그리고 "두꺼운"가장자리를 시뮬레이션하십시오. 이 효과를 향상시키기 위해 더 큰 오프셋을 사용하려고 시도 할 수 있습니다.

3. 이탤릭체 텍스트를 시뮬레이션하는 방법

기울임 꼴 효과는 일반적으로 문자가 왜곡 된 것으로 표시됩니다. imageCharup ()은 회전 또는 틸트 드로잉을 지원하지 않지만 라인 별 문자 오프셋을 통해 틸트 느낌을 "생성"할 수 있습니다.

이를 구현하는 한 가지 방법은 각 문자를 하나씩 끌어 내고 y 축 방향으로 x 좌표 오프셋을 점차적으로 증가 또는 감소시켜 경사 배열을 형성하는 것입니다.

 <?php
$image = imagecreatetruecolor(100, 100);
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);
imagefill($image, 0, 0, $white);

$font = 3;
$x = 40;
$y = 80;
$text = "PHP";

$offset = 0;
for ($i = 0; $i < strlen($text); $i++) {
    $char = $text[$i];
    imagecharup($image, $font, $x + $offset, $y - $i * 15, $char, $black);
    $offset += 1; // 기울기 각도를 제어하십시오
}

imagepng($image, 'italic.png');
imagedestroy($image);
?>

위의 코드는 문자열 PHP를 수직으로 그릴 것이며 동시에 X 좌표를 문자 그대로 증가시켜 이탤릭체 느낌을 형성합니다. 이 방법은 Truetype 글꼴만큼 유연하지는 않지만 imageTtftext ()가 없는 실용적인 편의식입니다.

4. 효과 미리보기 및 응용 프로그램 시나리오

내장 글꼴을 통해 이탤릭체 및 굵게가 시각적으로 제한되지만 아이콘, 검증 코드, 임베디드 장치와 같은 가벼운 텍스트 렌더링 시나리오에는 여전히 실용적입니다. 일부 간단한 동적 이미지 응용 프로그램에서는 특정 요구 사항도 충족 할 수 있습니다.

PHP를 통해 생성 된 이미지를 출력하거나 다음과 같은 서버에 저장할 수 있습니다.

 header('Content-Type: image/png');
imagepng($image);

또는 다음과 같은 자체 도메인 이름 서버에 업로드하십시오.

 // 출력 주소: https://gitbox.net/images/bold.png

위의 내용은 imageCharup () 를 통해 이탤릭체와 굵은 영향을 구현하기위한 실용적인 기술입니다. 이 기능을 가벼운 이미지 처리 작업에 유연하게 적용하는 데 도움이되기를 바랍니다.