Основни форми в GD Library
Автор: adrian
Предишните два урока:
Създаване на изображение с GD Library
Цветове и текст в GD Library
В този урок ще разберем как се рисуват основните фигури чрез GD Library. Ще рисуваме линии, правоъгълници, елипси и кръгове.
- 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 – цветът, създаден с една от двете функции в предишния урок - 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 – цветът, създаден с една от двете функции в предишния урок - 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 – цветът, създаден с една от двете функции в предишния урок - 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 предоставя и друга възможност. Тази възможност са следните няколко функции:
- imageFilledRectangle(img_resource, upper_left_x, upper_left_y, bottom_right_x, bottom_right_y, color)
Тази функция създава правоъгълник (квадрат), но го запълва с определен цвят.
Стойностите на шестте параметъра:
Виж 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 - 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


