Основни форми в GD Library
09-11-2009
Предишните два урока:
Създаване на изображение с GD Library
Цветове и текст в GD Library

В този урок ще разберем как се рисуват основните фигури чрез GD Library. Ще рисуваме линии, правоъгълници, елипси и кръгове.

1. imageLine(img_resource, start_x, start_y, end_x, end_y, color)
Тази функция рисува лининия, като свързва двете точки, зададени от x и y координатите.
Стойностите на шестте параметъра:
img_resource - тук се пише променливата, в която пазим ресурса на изображението, създадено с една от функциите, описани в първия урок
start_x - x координатата на началната точка на линията
start_y - y координатата на началната точка на линията
end_x - x координатата на крайната точка на линията
end_y - y координатата на крайната точка на линията
color - цветът, създаден с една от двете функции в предишния урок

2. imageRectangle(img_resource, upper_left_x, upper_left_y, bottom_right_x, bottom_right_y, color)
Тази функция създава правоъгълник (квадрат).
Стойностите на шестте параметъра:
img_resource - тук се пише променливата, в която пазим ресурса на изображението, създадено с една от функциите, описани в първия урок
upper_left_x - x координатата на горния ляв ъгъл на правоъгълника
upper_left_y - y координатата на горния ляв ъгъл на правоъгълника
bottom_right_x - x координатата на долния десен ъгъл на правоъгълника
bottom_right_y - y координатата на долния десен ъгъл на правоъгълника
color - цветът, създаден с една от двете функции в предишния урок

3. imageArc(img_resource, center_x, center_y, width, height, start_angle, end_angle, color)
Тази функция създава кръг, като центъра на фигурата лежи на дадените координати от center_x и center_y
Стойностите на осемте параметъра:
img_resource - тук се пише променливата, в която пазим ресурса на изображението, създадено с една от функциите, описани в първия урок
center_x - x координатата на центъра на кръга
center_y - y координатата на центъра на кръга
width - широчината на кръга
height - височината на кръга
start_angle - ъгълът, от който да започне чертаенето на кръга (0 градуса е на 3 часа)
end_angle - ъгълът, в който ще свърши чертаенето на кръга (0 градуса е на 3 часа)
color - цветът, създаден с една от двете функции в предишния урок

4. imageEllipse(img_resource, center_x, center_y, width, height, color)
Тази функция създава елипса, като центъра на фигурата лежи на дадените координати от center_x и center_y
Стойностите на шестте параметъра:
img_resource - тук се пише променливата, в която пазим ресурса на изображението, създадено с една от функциите, описани в първия урок
center_x - x координатата на центъра на елипсата
center_y - y координатата на центъра на елипсата
width - широчината на елипсата
height - височината на елипсата
color - цветът, създаден с една от двете функции в предишния урок

Както ще видите във видео урока, тези функции създават само очертанията. В повечето случаи ще се налага тези фигури да са запълнени с някакъв цвят. Въпреки че съществува възможност да се изчертават рамките и след това фигурите да бъдат запълвани с imageFillToBorder(), PHP предоставя и друга възможност. Тази възможност са следните няколко функции:

1. imageFilledRectangle(img_resource, upper_left_x, upper_left_y, bottom_right_x, bottom_right_y, color)
Тази функция създава правоъгълник (квадрат), но го запълва с определен цвят.
Стойностите на шестте параметъра:
Виж 2. в горните функции

2. imageFilledArc(img_resource, center_x, center_y, width, height, start_angle, end_angle, color, style)
Тази функция създава кръг по подобие на 3. от горните функции, но го запълва с цвят и приема един последен задължителен параметър style.
Стойности на деветте параметъра:
За първите 8 виж 3. от горните функции
style - true или false. Или една от следните 4 опции: IMG_ARC_PIE, IMG_ARC_CHORD, IMG_ARC_NOFILL, IMG_ARC_EDGED

3. imageFilledEllipse(img_resource, center_x, center_y, width, height, color)
Тази функция създава елипса по подобие на 4. от горните функции, но я запълва с цвят.
Стойности на шестте параметъра:
Виж 4. от горните функции.

Примерен код от видео урока:

<?php
header("Content-type: image/jpeg");

$image = imagecreatetruecolor(400, 300);

$color = imagecolorallocate($image, 0, 255, 255);
$blue = imagecolorallocatealpha($image, 0, 0, 255, 50);
$red = imagecolorallocatealpha($image, 255, 0, 0, 127);

$upper_left_x = 40;
$upper_left_y = 40;
$bottom_right_x = 150;
$bottom_right_y = 150;

imagefilledrectangle($image, $upper_left_x, $upper_left_y, $bottom_right_x, $bottom_right_y, $color);
imagefilledrectangle($image, $upper_left_x+20, $upper_left_y+20, $bottom_right_x+20, $bottom_right_y+20, $blue);

imagejpeg($image);
imagedestroy($image);
?>


Прочетете и следващия урок за Основни функции за оразмеряване и копиране в GD Library


/ Трябва да сте регистриран за да напишете коментар /
От: lam3r4370
9:03 11-11-2009
Супер.Отлична поредица от уроци.
1