Mam problem z tworzeniem przezroczystości tła w obrazkach generowanych na podstawie tekstu, niby jest ustawione na kolor biały, jednak, w powiększeniu wyraźnie widać, że dookoła liter tworzą się różne piksele w rozmaitych odcieniach szarości. Chciałbym się pozbyć tych pixeli otaczających każdą literę, nie wiem, co robię źle czy coś z moim kodem nie tak, a może wina leży po stornie użytych czcionek ? Proszę o jakieś sensowne wskazówki.
Kod:
function createImageFromText( $_text = "text", $_font_path, $_width = 1200, $_height = 30, $_font_size = 12, $_shadow = false, $_save = false, $_save_filename = "test.png", $_save_quality = 0) { if(!$_save) { } $im = imagecreatetruecolor($_width, $_height); $background_color = imagecolorallocate($im, $_background_color[0], $_background_color[1], $_background_color[2]); $font_color = imagecolorallocate($im, $_font_color[0], $_font_color[1], $_font_color[2]); imagefilledrectangle($im, 0, 0, $_width-1, $_height-1, $background_color); imagecolortransparent($im, $background_color); if($_shadow) { imagettftext($im, $_font_size, 0, 11, 21, $font_color, $_font_path, $_text); } imagettftext($im, $_font_size, 0, 10, 20, $font_color, $_font_path, $_text); if(!$_save) { imagepng($im); } else { imagepng($im, $_save_filename, $_save_quality); } imagedestroy($im); } foreach($fonts as $font) { // createImageFromText( "To jest testowy tekst", "/usr/share/fonts/truetype/polish/".$font.".ttf", 350, 30, 12, false, true, "fonty/".$font.".png", 0 ); // // }
Rezultat działania:






ps. fonty pobrane ze strony Bartka Nowaka (dzięki za polskie znaki

Do poprawnego działania skryptu należy utworzyć folder fonty (z chmod 777), do którego zostaną wrzucone wygenerowane pliki PNG, w wywołaniu funkcji podać ścieżkę do użytych czcionek oraz podmienić wartości w tablicy $fonts na nazwy właściwych fontów.