
imagettfbbox 함수는 텍스트 박스의 크기와 위치를 반환하는 함수입니다. 하지만 실제로 그려진 텍스트 크기와 다르게 나올 수 있습니다. 이 문제를 해결하려면, 실제로 그려진 텍스트 크기를 사용해야 합니다.
이미지 자원의 위치를 반영해야 하는 경우, 텍스트 박스의 위치를 계산할 때 이미지 자원의 위치를 추가해야 합니다. 예를 들어, 이미지 자원의 위치가 (10, 20)이라면, 텍스트 박스의 위치를 계산할 때 (10, 20)만큼 추가해야 합니다.
imagettfbbox 함수의 반환 값은 다음과 같습니다.
- left: 텍스트 박스의 왼쪽 위치
- top: 텍스트 박스의 위쪽 위치
- right: 텍스트 박스의 오른쪽 위치
- bottom: 텍스트 박스의 아래쪽 위치
- x: 텍스트 박스의 왼쪽 위치
- y: 텍스트 박스의 위쪽 위치
- w: 텍스트 박스의 너비
- h: 텍스트 박스의 높이
이러한 값을 사용하여 텍스트 박스의 크기와 위치를 계산할 수 있습니다.
예를 들어, 다음 코드는 텍스트 박스의 크기와 위치를 계산하는 방법을 보여줍니다.
#hostingforum.kr
php
$image = imagecreate(100, 100);
$color = imagecolorallocate($image, 255, 255, 255);
$font = 'arial.ttf';
$fontsize = 24;
$text = 'Hello World';
$bbox = imagettfbbox($fontsize, 0, $font, $text);
$x = $bbox[0];
$y = $bbox[1];
$w = $bbox[2] - $bbox[0];
$h = $bbox[5] - $bbox[1];
imagestring($image, $fontsize, $x, $y, $text, $color);
imagepng($image);
imagedestroy($image);
이 코드는 텍스트 박스의 크기와 위치를 계산하고, 텍스트 박스를 이미지에 그립니다.
2025-03-14 21:16