On Fri, 1 Dec 2006 17:08:40 +0100, Bertel Lund Hansen
<unospamo@lundhansen.dk> wrote:
>For at træne klokken vil jeg gerne vise et ur. Det er nemt nok at
>lave et digital visning, men hvordan laver jeg en analog visning
>af et klokkeslet?
Kig på billed-funktionerne:
http://php.net/image
Du kan starte med at skabe et billede med imagecreatetruecolor().
Derefter definerer du nogle farver med imagecolorallocate().
Så kan du tegne en urskive med imagefilledellipse() og sætte nogle
streger hele vejen rundt med imageline() og lidt matematik.
Derefter kan du så tegne nogle visere med fx imagefilledpolygon() (for
at tegne en trekant) eller for den sags skyld imagefilledarc() for at
lade din viser have form som et tyndt stykke lagkage.
Du kan også tilføje lidt tekst på billedet med imagettftext(), hvor du
henviser til en TrueType-fontfil.
Til sidst outputter du så resultatet ved først at sætte en passende
HTTP-header med header() og så afvikle en kommando til at generere
billedet til en bestemt billedformat (der tilsvarer headeren), fx JPEG
med imagejpeg().
Når du arbejder og tester, kan du starte helt basalt, og så tilføje
kode "i midten" for at se ændringerne. Altså, start fx med:
<?php
$im = imagecreatetruecolor(500,500);
// tilføj mere kode her
// output
header("Content-Type: image/jpeg");
imagejpeg($im);
?>
... og tilføj så kode stille og roligt undervejs:
<?php
$im = imagecreatetruecolor(500,500);
$yellow = imagecolorallocate($im, 255, 240, 0);
imagefilledellipse($im, 250, 250, 400, 400, $yellow);
// tilføj mere kode her
// output
header("Content-Type: image/jpeg");
imagejpeg($im);
?>
... og så fremdeles.
Men ellers tror jeg, du kan google dig til PHP-kode, der genererer
urskive-billede.
(og så et lille hint: klokkeslæt, ikke klokkeslet)
--
- Peter Brodersen
Kendt fra Internet