|
|
|
php ผมให้มันเขียนข้อความสีฟ้าลงรูป แต่พอลองรันสคริปแล้วผลที่ได้คือรูปนั้นถูกเปลี่ยนกลายเป็นสีฟ้าแบบตัวอักษรครับ |
|
|
|
|
|
|
|
ตามโค๊ดนี้ครับ
Code
$img = ImageCreateFromJpeg("images/$nimg");
$height = Imagesx($img);
$width = Imagesy($img);
$fontsize = 20;
if (!isset($String))
$String = "text text";
$im = imagecreate($width, $height );
$color = ImageColorAllocate($im, 102, 202, 219);
$font = "pahnto.ttf";
$textwidth = $width;
while (1){
$box = imageTTFbbox( $fontsize, 0, $font, $String );
$textwidth = abs( $box[2] );
$textbodyheight = (abs($box[7]))-2;
if ( $textwidth < $width - 20 )
break;
$fontsize--;
}
$Xcenter = (int)($width/2 );
$Ycenter = (int)($height/2 );
imageTTFtext($im, $fontsize, 0,(int) ($Xcenter-($textwidth/2)),(int)($Ycenter+(($textbodyheight)/2) ),
$color, $font, $String );
imageJpeg($im,"images/$nimg");
ไม่รู้ว่าทำผิดตรงไหนเพราะเอาโค๊ดจากตัวอย่างของเว็บนี้อันนึงมาผสมกับอีกอันน่ะครับ ผสมมั่วไปหมด -,-
Tag : PHP
|
|
|
|
|
|
Date :
2012-07-28 18:55:18 |
By :
peam |
View :
960 |
Reply :
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
เพิ่มเติมครับ ก่อนหน้านี้ใช้โค๊ดนี้มันก็ได้แต่ว่า ข้อความที่เขียนลงภาพมันชอบเลยขอบภาพไปน่ะครับ
Code
$font = 'pahnto.ttf';
$string = "text text";
$im = ImageCreateFromJpeg("images/$nimg");
$color = ImageColorAllocate($im, 102, 202, 219);
$pxX = (Imagesx($im) - 4 * strlen($string))/2;
$pxY = Imagesy($im)- 10;
ImagettfText($im, 20, 0, $pxX, $pxY, $color, $font, $string);
imageJpeg($im,"images/$nimg");
ImageDestroy($im);
|
|
|
|
|
Date :
2012-07-28 18:57:15 |
By :
peam |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 04
|