Koordinaten auf ein Bild schreiben

  • Themenstarter Themenstarter wader
  • Beginndatum Beginndatum
W

wader

Hallo an alle,

folgendes Problem.

Habe ein Karte(JPEG-Bild) worüber ich ein raster mit PHP gelegt habe. Jetzt möchte ich mittels php in jedes Feld die Koordinaten und ein Link für dieses Feld schreiben. Es soll oben links mit 1/1 anfangen und dann weiter mit 1/2,1/3 folgen. Die nächste untere Reihe dann mit 2/1,2/2.

Die Felder sind nicht gleich hoch und breit und das ist für mich noch ein weiteres Problem. (Im bezug auf die Position der Koordinaten der Felder)


Hier mal mein Versuch für mein Problem:
PHP:
//Grafik vorberiten
$image = 'karte.jpg';

//Grafik laden
$source = imagecreatefromjpeg($image) ;

//Raster farbe
$colorWhite=imagecolorallocate($source, 255, 255, 255);

//Größe ermitteln
$size = getimagesize($image);
$breiteBild = $size[0]; //Pixel breit
$hoeheBild = $size[1]; //Pixel hoch
(int)$karteFelderBreit = 50; //flexibler Wert
(int)$karteFelderHoch = 102; // felxibler Wert
$breiteXFelder = $breiteBild / $karteFelderBreit; // errechnete Feldbreite
$breiteYFelder = $hoeheBild / $karteFelderHoch; // errechnete Feldhöhe

// Schriftgröße                                            
$font  = 2;
$width  = ImageFontWidth($font)* strlen($string) ;
$height = ImageFontHeight($font) ;
$x=imagesx($source)-$width ;
$y=imagesy($source)-$height;
$position['x'] = 20;
$position['y'] = 15;

for ($i=1; $i<$karteFelderBreit; $i++)
{	
	for ($j=1; $j<$karteFelderHoch; $j++)
	{
		imageline($source, 0, $j*$breiteYFelder, $breiteBild, $j*$breiteYFelder, $colorWhite); //horizontal
		imageline($source, $i*$breiteXFelder, 0, $i*$breiteXFelder, $hoeheBild, $colorWhite);//Vertikal
	
		imagestring ($source, $font, $position['x'], $position['y'],  "$i", $colorWhite);
		$position['x']= $position['x']+$breiteXFelder;

	}
}

Und hier hab ich mal eine Vorschau wie es im moment ausschaut:
http://img218.imageshack.us/my.php?image=kartenasuschnittmh9.jpg

Hoffe ihr könnt mir bei meinem Problem weiterhelfen.


gruß wader
 
Zurück