Gå til innhold

farge bilder med php


Anbefalte innlegg

Hei.

 

La oss si at jeg har ett bilde som inneholder en firkant med fire firkanter til i

 

__________

| | |

| | |

|_____|____ |

| | |

|_____|___ _|

 

Kan jeg få php til å fargelegge områdene (på bildet) rødt ved å trykke på området med php? Dette er altså på ett bilde

hvilket format er uvesentlig.

 

edit den firkanten ble skikkelig dårlig når jeg postet

Endret av Tart
Lenke til kommentar
Videoannonse
Annonse
Hei.

 

La oss si at jeg har ett bilde som inneholder en firkant med fire firkanter til i

 

__________

| | |

| | |

|_____|____ |

| | |

|_____|___ _|

 

Kan jeg få php til å fargelegge områdene (på bildet) rødt ved å trykke på området med php? Dette er altså på ett bilde

hvilket format er uvesentlig.

 

edit den firkanten ble skikkelig dårlig når jeg postet

 

Hei, vet ikke om dette er mulig i php og har heller ikke hørt om noen som har tegnet slike fikgurer. Vet det finnes klasser man kan implementere for å lage diagrammer og slikt. Men til det du skulle ha det til, så ville jeg heller sett på java applet. Der er det i alle fall en smal sak å få det til slik du ønsker.

 

Håper dette var litt til hjelp, hvis ikke er det bare å si ifra.

Lenke til kommentar

Fullt mulig såklart, men fremgangsmåten (og hvorvidt du burde bruke PHP til det i det hele tatt) kommer litt an på hva du skal bruke det til.

 

Eksempel: Du har et bilde, f.eks. "face.png". Lag en wrapper til bildet som fargelegger basert på koordinater fra requesten.

 

<?php
 header('Content-type: image/png');

 $clickedX = isset($_REQUEST['x']) ? $_REQUEST['x'] : -1;
 $clickedY = isset($_REQUEST['y']) ? $_REQUEST['y'] : -1;

 $image = imagecreatefrompng('face.png');

 if($clickedX >= 0 && $clickedX < imagesx($image) && 
  $clickedY >= 0 && $clickedY < imagesy($image)) {
imagefilltoborder($image, $clickedX, $clickedY, 0x000000, 0xFF5555);
 }

 imagepng($image);
 imagedestroy($image);
?>

 

Vis bildet på siden din (via wrapperen) med en onclick-event som rerendrer bildet basert på hvor du klikket.

 

<script type="text/javascript">
 function rerender(click) {
myimage = document.getElementById("myimage");
x = click.offsetX ? (click.offsetX) : click.pageX-myimage.offsetLeft;
y = click.offsetY ? (click.offsetY) : click.pageY-myimage.offsetTop;
myimage.src = "myimage.php?x=" + x + "&y=" + y;
 }
</script>

<img src="myimage.php" id="myimage" onclick="rerender(event)" />

 

Da får du noe ganske unyttig, omtrent slik: http://home.uia.no/froden04/temp/imagefilltoborder/

 

Kan jeg gjette på at du holder på med en løsning for plassregistrering eller liknende? I så fall ville jeg brukt en litt annen metode, uten bruk av PHP til bilderedigeringen.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...