ΠΠ²Π΅ ΡΠΎΡΠΊΠΈ Π½Π°Π·ΡΠ²Π°ΡΡΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΠΌΠΈ ΡΠΈΠ»ΡΠ½ΠΎ, Π΅ΡΠ»ΠΈ Ρ Π½ΠΈΡ ΡΠΎΠ²ΠΏΠ°Π΄Π°Π΅Ρ, ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅, ΠΎΠ΄Π½Π° ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°, Π° ΠΏΠΎ Π΄ΡΡΠ³ΠΎΠΉ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ΅ ΠΎΠ½ΠΈ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ Π½Π΅ Π±ΠΎΠ»Π΅Π΅, ΡΠ΅ΠΌ Π½Π° 1 Π² Π»ΡΠ±ΡΡ ΡΡΠΎΡΠΎΠ½Ρ.
imageFillToBorder
ΠΠ°Π»ΠΈΠ²ΠΊΠ° ΠΎΠ±Π»Π°ΡΡΠΈ, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½ΠΎΠΉ Π±ΠΎΡΠ΄ΡΡΠΎΠΌ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
int imageFillToBorder(int im, int x, int y, int border, int color)
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΡ ΠΎΠΆΠ° Π½Π° imageFill(), ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ½Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π·Π°ΠΊΡΠ°ΡΠΊΡ ΡΠ²Π΅ΡΠΎΠΌ color Π½Π΅ ΠΎΠ΄Π½ΠΎΡΠ²Π΅ΡΠ½ΡΡ ΡΠΎΡΠ΅ΠΊ, Π° Π»ΡΠ±ΡΡ , Π½ΠΎ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΠΈΠ³Π½ΡΡΠ° Π³ΡΠ°Π½ΠΈΡΠ° ΡΠ²Π΅ΡΠ° border.
imagePolygon
Π ΠΈΡΡΠ΅Ρ ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌΠΈ Π²Π΅ΡΡΠΈΠ½Π°ΠΌΠΈ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
int imagePolygon(int im, array points, int num_points, int color)
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΡΠΈΡΡΠ΅Ρ Π² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ im ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ, Π·Π°Π΄Π°Π½Π½ΡΠΉ ΡΠ²ΠΎΠΈΠΌΠΈ Π²Π΅ΡΡΠΈΠ½Π°ΠΌΠΈ. ΠΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ ΡΠ³Π»ΠΎΠ² ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ points, ΠΏΡΠΈΡΠ΅ΠΌ $points[0]=x0, $points[1]=y0, $points[2]=x1, $points[3]=y1 ΠΈ Ρ.Π΄.
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ num_points ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΎΠ±ΡΠ΅Π΅ ΡΠΈΡΠ»ΠΎ Π²Π΅ΡΡΠΈΠ½ - Π½Π° ΡΠΎΡ ΡΠ»ΡΡΠ°ΠΉ, Π΅ΡΠ»ΠΈ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ ΠΈΡ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π½ΡΠΆΠ½ΠΎ Π½Π°ΡΠΈΡΠΎΠ²Π°ΡΡ. ΠΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ Π½Π΅ Π·Π°ΠΊΡΠ°ΡΠΈΠ²Π°Π΅ΡΡΡ - ΡΠΎΠ»ΡΠΊΠΎ ΡΠΈΡΡΠ΅ΡΡΡ Π΅Π³ΠΎ Π³ΡΠ°Π½ΠΈΡΠ° ΡΠ²Π΅ΡΠΎΠΌ color.
<?php
// ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ 400x300
$image = imagecreate(400, 300);
// ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΠΌ ΡΠ²Π΅Ρ Π±ΠΎΡΠ΄ΡΡΠ° ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°
$col_poly = imagecolorallocate($image, 255, 255, 255);
// ΡΠΈΡΡΠ΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ
imagepolygon($image,
array (
0, 0,
100, 200,
300, 200
),
3, $col_poly);
// Π²ΡΠ²ΠΎΠ΄ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ Π² Π±ΡΠ°ΡΠ·Π΅Ρ
header("Content-type: image/png");
imagepng($image);
?>
imageFilledPolygon
Π ΠΈΡΡΠ΅Ρ Π·Π°ΠΊΡΠ°ΡΠ΅Π½Π½ΡΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ Ρ Π·Π°Π΄Π°Π½Π½ΡΠΌΠΈ Π²Π΅ΡΡΠΈΠ½Π°ΠΌΠΈ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
int imageFilledPolygon(int im, array points, int num_points, int color)
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ Π΄Π΅Π»Π°Π΅Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅, ΡΡΠΎ ΠΈ imagePolygon(), Π·Π° ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡΠ΅Π½Ρ Π²Π°ΠΆΠ½ΠΎΠ³ΠΎ ΡΠ²ΠΎΠΉΡΡΠ²Π°: ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠΉ ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ Π·Π°Π»ΠΈΠ²Π°Π΅ΡΡΡ ΡΠ²Π΅ΡΠΎΠΌ color.
ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΎΠ±ΡΠ°Π±Π°ΡΡΠ²Π°ΡΡΡΡ Π²ΠΎΠ³Π½ΡΡΡΠ΅ ΡΠ°ΡΡΠΈ ΡΠΈΠ³ΡΡΡ, Π΅ΡΠ»ΠΈ ΠΎΠ½Π° Π½Π΅ Π²ΡΠΏΡΠΊΠ»Π°.
<?php
// Π·Π°Π΄Π°Π΅ΠΌ ΠΌΠ°ΡΡΠΈΠ² Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ ΡΠ³Π»ΠΎΠ²
$values = array(
0 => 40, // x1
1 => 50, // y1
2 => 20, // x2
3 => 240, // y2
4 => 60, // x3
5 => 60, // y3
6 => 240, // x4
7 => 20, // y4
8 => 50, // x5
9 => 40, // y5
10 => 10, // x6
11 => 10, // y6
);
// ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ 250x250
$im = imagecreate(250, 250);
// Π·Π°Π΄Π°Π΅ΠΌ ΡΠ²Π΅Ρ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°
$blue = imagecolorallocate($im, 0, 0, 255);
// ΡΠΈΡΡΠ΅ΠΌ ΠΌΠ½ΠΎΠ³ΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊ
imagefilledpolygon($im, $values, 6, $blue );
// Π²ΡΠ²ΠΎΠ΄ ΠΊΠ°ΡΠΈΠ½ΠΊΠΈ Π² Π±ΡΠ°ΡΠ·Π΅Ρ ΠΈ Π΅Π΅ Π·Π°ΠΊΡΡΡΠΈΠ΅
header('Content-type: image/png');
imagepng($im);
imagedestroy($im);
?>
Π Π°Π±ΠΎΡΠ° Ρ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌΠΈ ΡΡΠΈΡΡΠ°ΠΌΠΈ
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° GD ΠΈΠΌΠ΅Π΅Ρ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎ ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠ΅ΠΊΡΡΠΎΠΌ ΠΈ ΡΡΠΈΡΡΠ°ΠΌΠΈ. Π¨ΡΠΈΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΡΠ΅ΡΡΡΡΡ, ΠΈΠΌΠ΅ΡΡΠΈΠ΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ, ΠΈ ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π·Π°Π³ΡΡΠΆΠ°Π΅ΠΌΡΠ΅ ΠΈΠ· ΡΠ°ΠΉΠ»Π° ΠΈΠ»ΠΈ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ Π² GD. ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΡΡΠΈΡΡΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΠΎΠ±ΡΠ°ΠΆΠ΅Π½ Π»ΠΈΡΡ Π² ΠΌΠΎΠ½ΠΎΡΠ²Π΅ΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅, Ρ.Π΅. "ΡΠΈΡΠΎΠ²Π°Π½Π½ΡΠ΅" ΡΠΈΠΌΠ²ΠΎΠ»Ρ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡΡΡ. ΠΡΡΡΠΎΠ΅Π½Π½ΡΡ ΡΡΠΈΡΡΠΎΠ² Π²ΡΠ΅Π³ΠΎ 5 (ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡΡ ΠΎΡ 1 Π΄ΠΎ 5), ΡΠ°ΡΠ΅ Π²ΡΠ΅Π³ΠΎ Π² Π½ΠΈΡ Π²Ρ ΠΎΠ΄ΡΡ ΠΌΠΎΠ½ΠΎΡΠΈΡΠ½ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΡΠ°Π·Π½ΡΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠ². ΠΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠΈΡΡΡ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π·Π°Π³ΡΡΠΆΠ΅Π½Ρ.
imageLoadFont
ΠΠ°Π³ΡΡΠ·ΠΊΠ° ΡΡΠΈΡΡΠ°.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
int imageLoadFont(string file)
Π€ΡΠ½ΠΊΡΠΈΡ Π·Π°Π³ΡΡΠΆΠ°Π΅Ρ ΡΠ°ΠΉΠ» ΡΡΠΈΡΡΠΎΠ² file ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΡΠΈΡΡΠ° - ΡΡΠΎ Π±ΡΠ΄Π΅Ρ ΡΠΈΡΡΠ°, Π±ΠΎΠ»ΡΡΠ°Ρ 5, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΡΡΡ ΠΏΠ΅ΡΠ²ΡΡ Π½ΠΎΠΌΠ΅ΡΠΎΠ² Π·Π°ΡΠ΅Π·Π΅ΡΠ²ΠΈΡΠΎΠ²Π°Π½ΠΎ ΠΊΠ°ΠΊ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅. Π€ΠΎΡΠΌΠ°Ρ ΡΠ°ΠΉΠ»Π° - Π±ΠΈΠ½Π°ΡΠ½ΡΠΉ, Π° ΠΏΠΎΡΠΎΠΌΡ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΌΠ°ΡΠΈΠ½Ρ. ΠΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ ΡΠ°ΠΉΠ» ΡΠΎ ΡΡΠΈΡΡΠ°ΠΌΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½ ΠΏΠΎ ΠΊΡΠ°ΠΉΠ½Π΅ΠΉ ΠΌΠ΅ΡΠ΅ Π½Π° ΠΌΠ°ΡΠΈΠ½Π΅ Ρ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡΠΎΠΌ ΡΠ°ΠΊΠΎΠΉ ΠΆΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ, ΠΊΠ°ΠΊ ΠΈ Ρ ΡΠΎΠΉ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ Π²Ρ ΡΠΎΠ±ΠΈΡΠ°Π΅ΡΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ PHP.
Π€ΠΎΡΠΌΠ°Ρ ΡΠ°ΠΉΠ»Π° ΡΠΎ ΡΡΠΈΡΡΠΎΠΌ
Π§ΠΈΡΠ»ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² ΡΡΠΈΡΡΠ΅ (nchars)
ΠΠ΅Π²Π°Ρ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ° Π·Π°Π΄Π°Π΅Ρ ΡΠΌΠ΅ΡΠ΅Π½ΠΈΠ΅ Π½Π°ΡΠ°Π»Π° Π΄Π°Π½Π½ΡΡ Π²Π½ΡΡΡΠΈ ΡΠ°ΠΉΠ»Π°, Π° Π³ΡΡΠΏΠΏΠ°ΠΌΠΈ ΡΠΈΡΡ, Π·Π°ΠΏΠΈΡΠ°Π½Π½ΡΡ ΡΠ΅ΡΠ΅Π· Π΄Π΅ΡΠΈΡ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ, Π΄ΠΎ ΠΊΠ°ΠΊΠΎΠ³ΠΎ Π°Π΄ΡΠ΅ΡΠ° ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡΡΡ Π΄Π°Π½Π½ΡΠ΅.
imageFontHeight
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° Π²ΡΡΠΎΡΡ ΡΡΠΈΡΡΠ°.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
int imageFontHeight(int font)
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π²ΡΡΠΎΡΡ Π² ΠΏΠΈΠΊΡΠ΅Π»ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠΈΡΡΠ΅.
imageFontWidth
Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΡΠΈΡΠΈΠ½Ρ ΡΡΠΈΡΡΠ°.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
int imageFontWidth(int font)
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΈΡΠΈΠ½Ρ Π² ΠΏΠΈΠΊΡΠ΅Π»ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΡΡΠΈΡΡΠ΅.
imageString
ΠΡΠ²ΠΎΠ΄ΠΈΡ ΡΡΡΠΎΠΊΡ Π² Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
int imageString(int im, int font, int x, int y, string s, int color)
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΡΡΠΎΠΊΡ s Π² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ im, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΠΈΡΡ font ΠΈ ΡΠ²Π΅Ρ color.ΠΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ (x, y) Π±ΡΠ΄ΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°, Π² ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΏΠΈΡΠ°Π½Π° ΡΡΡΠΎΠΊΠ°.
ΠΡΠ»ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ font Π·Π°Π΄Π°Π½ ΠΊΠ°ΠΊ 1, 2, 3, 4 ΠΈΠ»ΠΈ 5, ΡΠΎ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΡΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°.
<?php
// ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ 100x30
$im = imagecreate(100, 30);
// Π·Π°Π΄Π°Π΅ΠΌ ΡΠ²Π΅Ρ ΡΠ΅ΠΊΡΡΠ°
$textcolor = imagecolorallocate($im, 0, 0, 255);
// Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ Π½Π°Π΄ΠΏΠΈΡΡ Π² Π²Π΅ΡΡ Π½Π΅ΠΌ Π»Π΅Π²ΠΎΠΌ ΡΠ³Π»Ρ
imagestring($im, 5, 0, 0, "Hello world!", $textcolor);
// Π²ΡΠ²ΠΎΠ΄ΠΈΠΌ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π² Π±ΡΠ°ΡΠ·Π΅Ρ
header("Content-type: image/jpg");
imagejpeg($im);
?>
imageStringUp
ΠΡΠ²ΠΎΠ΄ΠΈΡ ΡΡΡΠΎΠΊΡ Π² Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
int imageStringUp(int im, int font, int x, int y, string s, int color)
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΡΡΠΎΠΊΡ ΡΠ΅ΠΊΡΡΠ°, Π½ΠΎ Π½Π΅ Π² Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠΌ, Π° Π² Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΌ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠΈ.
ΠΠ΅ΡΡ Π½ΠΈΠΉ Π»Π΅Π²ΡΠΉ ΡΠ³ΠΎΠ» Π·Π°Π΄Π°Π΅ΡΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ (x, y).
ΠΡΠ»ΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ font Π·Π°Π΄Π°Π½ ΠΊΠ°ΠΊ 1, 2, 3, 4 ΠΈΠ»ΠΈ 5, ΡΠΎ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΡΠΈΡΡ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°.
imageChar
ΠΡΠ²ΠΎΠ΄ ΡΠΈΠΌΠ²ΠΎΠ»Π° Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
int imageChar(int im, int font, int x, int y, string c, int color)
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ» c Π² Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΡΠ½ΠΎΠΌ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π² ΠΌΠ΅ΡΡΠ΅ Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅, Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ (x, y). Π¨ΡΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Π° Π·Π°Π΄Π°Π΅ΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ font. ΠΡΠ»ΠΈ ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ 1 Π΄ΠΎ 5, ΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΡΠΈΡΡΡ. Π¦Π²Π΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° Π·Π°Π΄Π°Π΅ΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ color.
<?php
// ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 100x100
$im = imagecreate(100, 100);
$string = "PHP";
// Π·Π°Π΄Π°Π΅ΠΌ ΡΠ²Π΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π°
$black = imagecolorallocate($im, 0, 0, 0);
// ΠΡΠ²Π΅Π΄Π΅ΠΌ ΡΠΈΠΌΠ²ΠΎΠ» "P" Π² Π²Π΅ΡΡ Π½Π΅ΠΌ Π»Π΅Π²ΠΎΠΌ ΡΠ³Π»Ρ
imagechar($im, 1, 0, 0, $string, $black);
// Π²ΡΠ²Π΅Π΄Π΅ΠΌ ΠΊΠ°ΡΡΠΈΠ½ΠΊΡ Π² Π±ΡΠ°ΡΠ·Π΅Ρ
header("Content-type: image/png");
imagepng($im);
?>
imageCharUp
ΠΡΠ²ΠΎΠ΄ ΡΠΈΠΌΠ²ΠΎΠ»Π° Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
int imageCharUp(int im, int font, int x, int y, string c, int color)
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΈΠΌΠ²ΠΎΠ» c Π² Π²Π΅ΡΡΠΈΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π² ΠΌΠ΅ΡΡΠ΅ Π½Π° ΡΠΈΡΡΠ½ΠΊΠ΅, Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΠ°ΠΌΠΈ (x, y). Π¨ΡΠΈΡΡ ΡΠΈΠΌΠ²ΠΎΠ»Π° Π·Π°Π΄Π°Π΅ΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ font. ΠΡΠ»ΠΈ ΡΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΎΡ 1 Π΄ΠΎ 5, ΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ Π²ΡΡΡΠΎΠ΅Π½Π½ΡΠ΅ ΡΡΠΈΡΡΡ. Π¦Π²Π΅Ρ ΡΠΈΠΌΠ²ΠΎΠ»Π° Π·Π°Π΄Π°Π΅ΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ color.
Π Π°Π±ΠΎΡΠ° ΡΠΎ ΡΡΠΈΡΡΠ°ΠΌΠΈ TrueType ΠΈ PostScript Type 1
ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° GD ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠ°ΠΊΠΆΠ΅ ΡΠ°Π±ΠΎΡΡ ΡΠΎ ΡΡΠΈΡΡΠ°ΠΌΠΈ PostScript ΠΈ TrueType. ΠΠ»Ρ ΡΠΎΠ³ΠΎ ΡΡΠΎΠ±Ρ Π·Π°ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ ΠΏΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠ΅ Π½ΠΈΠΆΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ, PHP Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ ΠΎΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡΠΎΠ²Π°Π½ ΠΈ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ Π²ΠΌΠ΅ΡΡΠ΅ Ρ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΎΠΉ FreeType, Π΄ΠΎΡΡΡΠΏΠ½ΠΎΠΉ ΠΏΠΎ Π°Π΄ΡΠ΅ΡΡ http://www.freetype.org. Π Windows-Π²Π΅ΡΡΠΈΠΈ PHP ΠΎΠ½Π° ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
imageTTFText
Π ΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ° ΡΡΠΈΡΡΠΎΠΌ TrueType.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
array imageTTFText(int im, int size, int angle, int x, int y, int color, string fontfile, string text)
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅Ρ ΡΡΡΠΎΠΊΡ text Π² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ im ΡΠ²Π΅ΡΠΎΠΌ color. ΠΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ, color Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡ ΡΠΎΠ±ΠΎΠΉ Π΄ΠΎΠΏΡΡΡΠΈΠΌΡΠΉ ΠΈΠ΄Π΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΎΡ ΡΠ²Π΅ΡΠ°. ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ angle Π·Π°Π΄Π°Π΅Ρ ΡΠ³ΠΎΠ» Π½Π°ΠΊΠ»ΠΎΠ½Π° Π² Π³ΡΠ°Π΄ΡΡΠ°Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΡΡΡΠΎΠΊΠΈ, ΠΎΡΡΡΠΈΡΡΠ²Π°Π΅ΠΌΠΎΠΉ ΠΎΡ Π³ΠΎΡΠΈΠ·ΠΎΠ½ΡΠ°Π»ΠΈ ΠΏΡΠΎΡΠΈΠ² ΡΠ°ΡΠΎΠ²ΠΎΠΉ ΡΡΡΠ΅Π»ΠΊΠΈ. ΠΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ (x, y) ΡΠΊΠ°Π·ΡΠ²Π°ΡΡ ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΊ Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠΉ Π±Π°Π·ΠΎΠ²ΠΎΠΉ ΡΠΎΡΠΊΠΈ ΡΡΡΠΎΠΊΠΈ (ΠΎΠ±ΡΡΠ½ΠΎ ΡΡΠΎ Π΅Π΅ Π»Π΅Π²ΡΠΉ Π½ΠΈΠΆΠ½ΠΈΠΉ ΡΠ³ΠΎΠ»). ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ size Π·Π°Π΄Π°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΡΡΠΈΡΡΠ°, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΠΏΡΠΈ Π²ΡΠ²ΠΎΠ΄Π΅ ΡΡΡΠΎΠΊΠΈ. fontfile Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΠΈΠΌΡ TTF-ΡΠ°ΠΉΠ»Π°, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΈ Ρ ΡΠ°Π½ΠΈΡΡΡΡ ΡΡΠΈΡΡ.
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ ΠΈΠ· 8 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΠ΅ΡΠ²Π°Ρ ΠΈΡ ΠΏΠ°ΡΠ° Π·Π°Π΄Π°Π΅Ρ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ (x,y) Π²Π΅ΡΡ Π½Π΅Π³ΠΎ Π»Π΅Π²ΠΎΠ³ΠΎ ΡΠ³Π»Π° ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΠΈΠΊΠ°, ΠΎΠΏΠΈΡΠ°Π½Π½ΠΎΠ³ΠΎ Π²ΠΎΠΊΡΡΠ³ ΡΡΡΠΎΠΊΠΈ ΡΠ΅ΠΊΡΡΠ° Π² ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠΈ, Π²ΡΠΎΡΠ°Ρ ΠΏΠ°ΡΠ° - ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°ΡΡ Π²Π΅ΡΡ Π½Π΅Π³ΠΎ ΠΏΡΠ°Π²ΠΎΠ³ΠΎ ΡΠ³Π»Π°, ΠΈ Ρ.Π΄. Π’Π°ΠΊ ΠΊΠ°ΠΊ Π² ΠΎΠ±ΡΠ΅ΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΡΡΠΎΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π»ΡΠ±ΠΎΠΉ Π½Π°ΠΊΠ»ΠΎΠ½ angle, Π·Π΄Π΅ΡΡ ΡΡΠ΅Π±ΡΡΡΡΡ 4 ΠΏΠ°ΡΡ ΠΊΠΎΠΎΡΠ΄ΠΈΠ½Π°Ρ.
Π‘ΡΡΠΎΠΊΠ° ΡΠ΅ΠΊΡΡΠ° text ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠ°ΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΡΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ UTF-8 (Π² Π²ΠΈΠ΄Π΅ {) Π΄Π»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Ρ ΠΊΠΎΠ΄Π°ΠΌΠΈ, Π±ΠΎΠ»ΡΡΠΈΠΌΠΈ 255.
ΠΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΡΡΠΈΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ²Π΅ΡΠ° color ΠΎΡΠΊΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ³Π»Π°ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΡΡΠΈΡΡΠ° (antialiasing).