Are there any best practices for adjusting letter spacing when using GDLib to create circular text in PHP?

When creating circular text using GDLib in PHP, adjusting letter spacing can be challenging due to the curvature of the text. One way to address this is by manually adjusting the spacing between letters to ensure they are evenly distributed along the circular path. This can be achieved by calculating the angle between each letter and spacing them accordingly.

<?php
$text = "Circular Text";
$radius = 100;
$centerX = 150;
$centerY = 150;
$angle = 0;

$image = imagecreatetruecolor(300, 300);
$white = imagecolorallocate($image, 255, 255, 255);
$black = imagecolorallocate($image, 0, 0, 0);

imagefilledrectangle($image, 0, 0, 300, 300, $white);

$textLength = strlen($text);
$letterSpacing = 360 / $textLength;

for($i = 0; $i < $textLength; $i++){
    $letter = substr($text, $i, 1);
    $x = $centerX + $radius * cos(deg2rad($angle));
    $y = $centerY + $radius * sin(deg2rad($angle));
    
    imagettftext($image, 20, $angle, $x, $y, $black, 'arial.ttf', $letter);
    
    $angle += $letterSpacing;
}

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