PHP/Graphics Image/Draw String
Содержание
Draw char with color
<source lang="html4strict">
<html> <body>
<?php
$img=ImageCreate(200,200); $bgcolor=ImageColorAllocate($img,200,200,200); $red=ImagecolorAllocate($img,255,0,0); $green=ImagecolorAllocate($img,0,255,0); $blue=ImagecolorAllocate($img,0,0,255); $grey=ImagecolorAllocate($img,50,50,50); $black=ImagecolorAllocate($img,0,0,0); ImageChar($img,0,20,20,"S",$red); ImageChar($img,1,20,40,"S",$green); ImageChar($img,2,20,60,"S",$blue); ImageChar($img,3,20,80,"S",$grey); ImageChar($img,4,20,100,"S",$black); ImageChar($img,5,20,120,"S",$red); ImageCharUp($img,0, 20,160,"S",$red); ImageCharUp($img,1, 40,160,"S",$green); ImageCharUp($img,2, 60,160,"S",$blue); ImageCharUp($img,3, 80,160,"S",$grey); ImageCharUp($img,4,100,160,"S",$black); ImageCharUp($img,5,120,160,"S",$red); /* RGB Red = 0..255 , Green = 0..255 , Blue = 0..255. */ ImageSetPixel($img,50,50,$pixelcolor); ImagePNG($img,"pic.png"); ImageDestroy($img);
?> <img src="pic.png" border=0> </body> </html>
</source>
Drawing a Square and a string
<source lang="html4strict">
<?php
header ("Content-type: image/png"); $im = ImageCreate (150, 150); $grey = ImageColorAllocate ($im, 230, 230, 230); // background color $black = ImageColorAllocate ($im, 0, 0, 0); ImageRectangle($im, 40, 40, 140, 140, $black); ImageString($im, 3, 5, 5, "Figure 18.3: Square", $black); ImagePng ($im); ImageDestroy ($im);
?>
</source>
Draw string and fill rectangle
<source lang="html4strict">
<?php
header("Content-type: image/gif"); $imgcord = imagecreate(500,500); $blue = imagecolorallocate($imgcord, 0,0,255); $red = imagecolorallocate($imgcord, 255,0,0); ImageRectangle($imgcord, 175,165, 200,225, $blue); ImageFill($imgcord, 0,0, $red); ImageString($imgcord, 3,170, 220,"www.wbex.ru", $blue); ImagePNG($imgcord); ImageDestroy($imgcord);
?>
</source>
Paint string value with different colors and position
<source lang="html4strict">
<html> <body> <?php
$img=ImageCreate(300,300); $bgcolor=ImageColorAllocate($img,200,200,200); $red=ImagecolorAllocate($img,255,0,0); $green=ImagecolorAllocate($img,0,255,0); $blue=ImagecolorAllocate($img,0,0,255); $grey=ImagecolorAllocate($img,50,50,50); $black=ImagecolorAllocate($img,0,0,0); ImageString($img,0,20,20,"www.wbex.ru",$red); ImageString($img,1,20,40,"www.wbex.ru",$green); ImageString($img,2,20,60,"www.wbex.ru",$blue); ImageString($img,3,20,80,"www.wbex.ru",$grey); ImageString($img,4,20,100,"www.wbex.ru",$black); ImageString($img,5,20,120,"www.wbex.ru",$red); ImageStringUp($img,0,50,200,"www.wbex.ru",$red); ImageStringUp($img,1,100,200,"www.wbex.ru",$green); ImageStringUp($img,2,150,200,"www.wbex.ru",$blue); ImageStringUp($img,3,200,200,"www.wbex.ru",$grey); ImageStringUp($img,4,250,200,"www.wbex.ru",$black); ImageStringUp($img,5,300,200,"www.wbex.ru",$red); ImageSetPixel($img,50,50,$pixelcolor); ImagePNG($img,"pic.png"); ImageDestroy($img);
?> <img src="pic.png" border=0> </body> </html>
</source>
Using a Bounding Box to Center Text
<source lang="html4strict">
<?php
header ("Content-type: image/png"); $text = "Bounding Box!"; $font_size = 15; $height = 500; $width = 300; $im = ImageCreate ($width, $height); $grey = ImageColorAllocate ($im, 230, 230, 230); $black = ImageColorAllocate ($im, 0, 0, 0); $text_bbox = ImageTTFBBox($font_size, 0, "ARIALBD.TTF", $text); $image_center = $width / 2; $text_x = $image_center - round(($text_bbox[4]/2)); ImageTTFText($im, $font_size, 0, $text_x, 10, $black, "ARIALBD.TTF", $text); ImagePng ($im); ImageDestroy ($im);
?>
</source>