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:
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
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