Avatar billede michaelgm Nybegynder
17. november 2007 - 23:18 Der er 6 kommentarer og
1 løsning

Sætte kryds med gdlib

Nogen der har en et bud på hvordan man kan finde musens position på et billede og sætte et kryds med gdlib?
Avatar billede radion Nybegynder
18. november 2007 - 02:31 #1
Jeps

med en almindelig form, kan du få fat på et musens position på billedet.

Jeg har lavet et eksempel, med 2 filer:
1 phpfil: crossonimage.php
1 billedefil: crossonimagepic.php

----------crossonimagepic.php-------
<?php
header("Content-type: image/png");
$string = $_GET['text'];
//Vi låner googles logo til at tegne på
$im    = imagecreatefromgif("http://www.google.com/intl/da_ALL/images/logo.gif");
$color = imagecolorallocate($im, 255, 0, 0); //Rød farve
$iCurrentX=$_GET['crosshere_x'];
$iCurrentY=$_GET['crosshere_y'];

//Tegner første linie. længden af linien afhænger af + & - tallene
imageline($im,$iCurrentX-10,$iCurrentY-10,$iCurrentX+10,$iCurrentY+10,$color);
//Tegner anden linie
imageline($im,$iCurrentX-10,$iCurrentY+10,$iCurrentX+10,$iCurrentY-10,$color);
imagepng($im);
imagedestroy($im);
?>
------------------------------------------

-----------crossonimage.php---------------
<form action="crossonimage.php">
    <input type="image" src="crossonimagepic.php?crosshere_x=<?php echo $_GET['crosshere_x'];?>&crosshere_y=<?php echo $_GET['crosshere_y'];?>" name="crosshere">
</form>
-----------------------------------------

Det er et helt bart eksempel, der mangler inputvalidering osv, så det skal du selvfølgelig huske.

men, med ovenstående, henter jeg googles logo, og sætter kryds der hvor man klikker
Avatar billede radion Nybegynder
18. november 2007 - 02:32 #2
linien:

$string = $_GET['text'];

er ikke nødvendig i crossonimagepic.php
Avatar billede michaelgm Nybegynder
18. november 2007 - 10:23 #3
Jeg prøver lige at lege med det.. Krydset havde jeg forestillet mig en tand bredere.. Og så at man kunne sætte flere krydser. Men det er vel bare at få det til at gemme det hver gang den laver kryds..
Avatar billede michaelgm Nybegynder
18. november 2007 - 10:37 #4
Altså altså linierne som var det et X skrevet med fed
Avatar billede radion Nybegynder
18. november 2007 - 12:16 #5
ja, hvis du gemmer billedet, og så loader det ind i imagecreatefromgif linien, så kan du  sætte flere krydser.

Du kan bruge imagesetthickness til at bestemme hvor tyk linierne skal være:

http://dk2.php.net/manual/en/function.imagesetthickness.php
Avatar billede michaelgm Nybegynder
18. november 2007 - 12:26 #6
Det virkede. Tak for hjælpen.
Avatar billede radion Nybegynder
18. november 2007 - 13:10 #7
det var så lidt, tak for point. god søndag
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester