[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите изменить размер шрифта (imagestring)
websteshko
Помогите, пожалуйста, решить проблему с размером шрифта проверочного кода.
Вот здесь http://test.kit-opt.ru/joomla/index.php?op...id=7&Itemid=109

Нужно сделать шрифт крупнее, а не получается...
Сам код:
//$rand = session_name();
if(JRequest::getVar('imtype') == '1'){
$font = imageloadfont("./dr.ttf");
$image_size = imagettfbbox(20, 0, $font, 'X');
$image_size = 5*(abs($image_size[2] - $image_size[0])+7);
$im = imagecreatetruecolor($image_size, 40);

// Create some colors
$white = imagecolorallocate($im, 255, 255, 255);
$grey = imagecolorallocate($im, 128, 128, 128);
$greylight = imagecolorallocate($im, 199, 199, 199);
$black = imagecolorallocate($im, 0, 0, 0);
imagefilledrectangle($im, 0, 0, $image_size -1, 39, $white);

// The text to draw
$text = $rand;
// Replace path by your own font path
$font = imageloadfont("./dr.ttf");

$chars = array();
$chars2 = array();
for ($i = 0; $i < strlen($text); $i++) { $chars[] = $text[$i]; }
for ($i = 0; $i < strlen($rand2); $i++) { $chars2[] = $rand2[$i]; }
//$chars = str_split($text);
//$chars2 = str_split($rand2);
// Add some shadow to the text
//imagettftext($im, 20, 0, 11, 21, $grey, $font, $text);

$size2 = 20;
$angle2 = 0;
$x2 = 10;
$y2 = 25;
$bbox2 = array();
$bbox2[0] = 0;
$bbox2[2] = 0;
foreach($chars2 as $char2){
$angle2 = rand(-20, 20);
$size2 = rand(15, 20);
$y2 = rand(0, 40);
imagettftext($im, $size2, $angle2, $x2, $y2, $greylight, $font, $char2);
$bbox2 = imagettfbbox($size2, $angle2, $font, $char2);
$x2 = $x2 + abs($bbox2[2] - $bbox2[0]) + 3;
}

$size = 20;
$angle = 0;
$x = 10;
$y = 25;
$bbox = array();
$bbox[0] = 0;
$bbox[2] = 0;
// Add the text
foreach($chars as $char){
$angle = rand(-20, 20);
//$size = rand(15, 20);
imagettftext($im, $size, $angle, $x, $y, $black, $font, $char);
$bbox = imagettfbbox($size, $angle, $font, $char);
$x = $x + abs($bbox[2] - $bbox[0]) + 3;
}

// Using imagepng() results in clearer text compared with imagejpeg()
imagepng($im);
imagedestroy($im);

}else{
$image = imagecreatefrompng(dirname(__FILE__).'/background.png');
$greylight = imagecolorallocate($image, 199, 199, 199);
$black = imagecolorallocate($image, 0, 0, 0);
//imagestring ($image, 5, 8, 14, $rand2, $greylight);
imagestring ($image, 5, 35, 11, $rand, $black);
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);
header("Pragma: no-cache");
header('Content-type: image/png');
imagepng($image);
imagedestroy($image);
}

Насколько я понимаю, нужно править imagestring.
Но размер получается сделать только мельче. Крупнее никак...
Заранее благодарю за ответ!
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.