Создание картинки из текста. Защите e-mail от спама

Ни для кого не секрет, что сайты, особенно крупные, постоянно
сканируются роботами, и не только поисковыми. Зачастую спамеры
собирают свои базы e-mail адресов, сканируя сайты. Чтобы это
предотвратить, можно выводить e-mail пользователей не в
текстовом виде, а картинкой. Для этого необходимо
предварительно перевести текст в картинку, единственная
проблема, возникающая при этом, это динамический размер
изображения, поскольку длина e-mail всегда разная. В решении
поможет, описанная в предыдущем рецепте, функция - imagettfbbox.

Пример:
// шрифт 
$font = 'impact.ttf';  
// размер текста 
$fontSize = 12;  
// текст. e-mail 
$imgText = "admin@vk-book.ru";  
// определяем размер картинки в зависимости  
// от длины и размера текста 
$boxText = ImageTTFBBox($fontSize, 0, $font, 
$imgText); 
// размер будущей картинки 
$widthImg = $boxText[2] - $boxText[0]; 
$heightImg = $boxText[1] - $boxText[7]; 
// создаем полотно 
$img = imagecreatetruecolor($widthImg, $heightImg); 
// задаем цвет фона 
$fonColor = imagecolorallocate($img, 255, 255, 255); 
// заливаем фон 
imagefill($img, 0, 0, $fonColor); 
// цвет текста 
$textColor = imagecolorallocate ($img, 0, 0, 0); 
// наносим текст 
imagettftext ( 
$img, $fontSize, 0, 0, $fontSize,  
$textColor, $font, $imgText  
); 
// выводим картинку в браузере 
header("Content-type: image/png"); 
imagePng($img); 
// очищаем память 
imageDestroy($img);
Теги:
защита, imagettfbbox
Добавлено: 28 Марта 2018 14:25:46 Добавил: Андрей Ковальчук Нравится 0
Добавить
Комментарии:
Нету комментариев для вывода...