Tworzenie grafiki w PHP

Transkrypt

Tworzenie grafiki w PHP
Instrukcja numer 01
Grafika PHP dla początkujących
Zaawansowane techniki tworzenie stron WWW
Dynamiczne tworzenie obrazków w PHP
<html>
<head>
</head>
zadanie_08.php
<body>
<?php
$obrazek = ImageCreateFromJPEG("foto001.jpg");
$obrazekSzerokosc = ImageSX($obrazek);
$obrazekWysokosc = ImageSY($obrazek);
$logo = ImageCreateFromPNG("pogoda_04.png");
$logoSzerokosc = ImageSX($logo);
$logoWysokosc = ImageSY($logo);
$logo_duze=ImageCreateTrueColor($obrazekSzerokosc,$obrazekWysokosc);
ImageCopyResized($logo_duze,$logo,0,0,0,0,$obrazekSzerokosc,$obrazekWysokosc,$logoSzerokosc,$logoWysokosc);
ImageCopyMerge($obrazek, $logo, 700, 150, 0, 0, $logoSzerokosc, $logoWysokosc,70);
ImageJPEG($obrazek,"mini/logo.jpg");
?>
<img src="foto001.jpg">
<img src="pogoda_04.png">
<img src="mini/logo.jpg">
</body>
</html>
Komentarz / Notatka
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Dariusz Fabicki
Instrukcja numer 01
[v. 2.0]
Strona 1/9
Dynamiczne tworzenie obrazków w PHP
<html>
<head>
</head>
zadanie_09.php
<body>
<?php
$obrazek = ImageCreateFromJPEG("foto001.jpg");
$obrazekSzerokosc = ImageSX($obrazek);
$obrazekWysokosc = ImageSY($obrazek);
$logo = ImageCreateFromPNG("pogoda_04.png");
$logoSzerokosc = ImageSX($logo);
$logoWysokosc = ImageSY($logo);
$logo_duze=ImageCreateTrueColor($obrazekSzerokosc,$obrazekWysokosc);
ImageCopyResized($logo_duze,$logo,0,0,0,0,$obrazekSzerokosc,$obrazekWysokosc,$logoSzerokosc,$logoWysokosc);
ImageCopyMerge($obrazek, $logo_duze, 0, 0, 0, 0, $obrazekSzerokosc, $obrazekWysokosc,70);
ImageJPEG($obrazek,"mini/logo.jpg");
?>
<img src="foto001.jpg">
<img src="pogoda_04.png">
<img src="mini/logo.jpg">
</body>
</html>
Komentarz / Notatka
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Dariusz Fabicki
Instrukcja numer 01
[v. 2.0]
Strona 2/9
Dynamiczne tworzenie obrazków w PHP
<html>
<head>
</head>
zadanie_10.php
<body>
<?php
$obrazek = ImageCreateFromJPEG("foto001.jpg");
$obrazekSzerokosc = ImageSX($obrazek);
$obrazekWysokosc = ImageSY($obrazek);
$wymiar_napisu=imagettfbbox(36,0,"arbli.ttf","ZNAK WODNY");
$logo = ImageCreateTrueColor($wymiar_napisu[4],-$wymiar_napisu[5]);
$kolor=ImageColorExact($logo,255,255,255);
imagefill($logo,1,1,$kolor);
$kolor=ImageColorExact($logo,0,0,255);
imagettftext($logo,36,0,0,-$wymiar_napisu[5],$kolor,"arbli.ttf","ZNAK WODNY");
$logoSzerokosc = ImageSX($logo);
$logoWysokosc = ImageSY($logo);
ImageCopyMerge($obrazek, $logo, 700, 150, 0, 0, $logoSzerokosc, $logoWysokosc,20);
ImageJPEG($obrazek,"mini/logo.jpg");
?>
<img src="foto001.jpg">
<img src="mini/logo.jpg">
</body>
Komentarz / Notatka
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Dariusz Fabicki
Instrukcja numer 01
[v. 2.0]
Strona 3/9
Dynamiczne tworzenie obrazków w PHP
<html>
<head>
</head>
zadanie_11.php
<body>
<?php
$obrazek = ImageCreateFromJPEG("foto001.jpg");
$obrazekSzerokosc = ImageSX($obrazek);
$obrazekWysokosc = ImageSY($obrazek);
$wymiar_napisu=imagettfbbox(36,0,"arbli.ttf","ZNAK WODNY");
$logo = ImageCreateTrueColor($wymiar_napisu[4],-$wymiar_napisu[5]);
$kolor=ImageColorExact($logo,255,255,255);
imagefill($logo,1,1,$kolor);
ImageColorTransparent($logo,$kolor);
$kolor=ImageColorExact($logo,255,255,0);
imagettftext($logo,36,0,0,-$wymiar_napisu[5],$kolor,"arbli.ttf","ZNAK WODNY");
$logoSzerokosc = ImageSX($logo);
$logoWysokosc = ImageSY($logo);
ImageCopyMerge($obrazek, $logo, 700, 150, 0, 0, $logoSzerokosc, $logoWysokosc,20);
ImageJPEG($obrazek,"mini/logo.jpg");
?>
<img src="foto001.jpg">
<img src="mini/logo.jpg">
</body>
</html>
Komentarz / Notatka
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Dariusz Fabicki
Instrukcja numer 01
[v. 2.0]
Strona 4/9
Dynamiczne tworzenie obrazków w PHP
<html>
<head>
</head>
zadanie_12.php
<body>
<?php
$obrazek = ImageCreateFromJPEG("foto001.jpg");
$obrazekSzerokosc = ImageSX($obrazek);
$obrazekWysokosc = ImageSY($obrazek);
$wymiar_napisu=imagettfbbox(36,0,"arbli.ttf","znak wodny");
$logo = ImageCreateTrueColor($wymiar_napisu[4],-$wymiar_napisu[5]);
$kolor=ImageColorExact($logo,255,255,255);
imagefill($logo,1,1,$kolor);
ImageColorTransparent($logo,$kolor);
$kolor=ImageColorExact($logo,255,255,0);
imagettftext($logo,36,0,0,-$wymiar_napisu[5],$kolor,"arbli.ttf","znak wodny");
$logoSzerokosc = ImageSX($logo);
$logoWysokosc = ImageSY($logo);
ImageCopyMerge($obrazek, $logo, 700, 150, 0, 0, $logoSzerokosc, $logoWysokosc,20);
ImageJPEG($obrazek,"mini/logo.jpg");
?>
<img src="foto001.jpg">
<img src="mini/logo.jpg">
</body>
</html>
Komentarz / Notatka
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Dariusz Fabicki
Instrukcja numer 01
[v. 2.0]
Strona 5/9
Dynamiczne tworzenie obrazków w PHP
zadanie_12.php
Zauważ, że litera y w napisie „znak wodny” nie została wyświetlona w całości.
Korzystając z opisu funkcji imagettfbbox dostępnego na stronie: http://www.php.net
Popraw zadanie w ten sposób, aby napis „znak wodny” wyświetlany był prawidłowo.
Komentarz / Notatka
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Dariusz Fabicki
Instrukcja numer 01
[v. 2.0]
Strona 6/9
Dynamiczne tworzenie obrazków w PHP
zadanie_12.php
Popraw zadanie w ten sposób, aby napis „znak wodny” wyświetlany był w kolorze pomarańczowym na
podkoszulku wykładowcy.
Komentarz / Notatka
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Dariusz Fabicki
Instrukcja numer 01
[v. 2.0]
Strona 7/9
Dynamiczne tworzenie obrazków w PHP
zadanie_12.php
Popraw zadanie w ten sposób, aby zdjęcie wynikowe było obrócone o 30 stopni. Skorzystaj z funkcji
imagerotate
Komentarz / Notatka
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Dariusz Fabicki
Instrukcja numer 01
[v. 2.0]
Strona 8/9
Dynamiczne tworzenie obrazków w PHP
zadanie_12.php
Popraw zadanie w ten sposób, aby znak wodny obrysowany był niebieską liną.
Komentarz / Notatka
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
..................................................................................
© by Dariusz Fabicki
Instrukcja numer 01
[v. 2.0]
Strona 9/9

Podobne dokumenty