php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 19.10.2011, 14:40  
Neuer Benutzer
 
Registriert seit: 08.10.2011
Beiträge: 7
PHP-Kenntnisse:
Anfänger
suslik87 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] imagesetthickness() Gestrichelte Linien werden eigenartig schräg versetzt.

Hey,

eigentlich ist es recht einfach. Ich möchte gestrichelte Linien in ein Bild zeichnen.

Soweit funktioniert es auch...

PHP-Code:
<?php
header
("Content-type: image/jpeg");
$im  imagecreatetruecolor(100100);
$w   imagecolorallocate($im255255255);
$red imagecolorallocate($im25500);            

$style = array($red$red$red$red$red,$red$red$red$red$red,$red$red$red$red$red$w$w$w$w$w$w$w$w$w$w$w$w$w$w$w);
imagesetstyle($im$style);
imageline($im00100100IMG_COLOR_STYLED);

imagejpeg($im);
imagedestroy($im);
?>
Sobald ich jedoch mit imagesetthickness() arbeite, um die Linien breiter / dicker zu machen, dann werden die Abstände und die Linien komisch verkürzt.

PHP-Code:
<?php
header
("Content-type: image/jpeg");
$im  imagecreatetruecolor(100100);
$w   imagecolorallocate($im255255255);
$red imagecolorallocate($im25500);

//-----------------------------
imagesetthickness($im5);            
//-----------------------------

$style = array($red$red$red$red$red,$red$red$red$red$red,$red$red$red$red$red$w$w$w$w$w$w$w$w$w$w$w$w$w$w$w);
imagesetstyle($im$style);
imageline($im00100100IMG_COLOR_STYLED);

imagejpeg($im);
imagedestroy($im);
?>

Wo liegt mein fehler?
suslik87 ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 19.10.2011, 14:52  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

vermutlich nicht "in" deinem Code. Versuch bitte mal herauszufinden, welche Version der GD-Library installiert ist. Bis zur Version 2.0.28 hat diese Funktion starke Einschränkungen (funktionierte nur mit imageline und auch da nur eingeschränkt)

bzw - tausche bitte mal die beiden Aufrufe für imagesetthickness und imagestyle miteinander - damit imagesetthickness direkt vor imageline ausgeführt wird
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste
eagle275 ist offline   Mit Zitat antworten
Alt 19.10.2011, 14:58  
Neuer Benutzer
 
Registriert seit: 08.10.2011
Beiträge: 7
PHP-Kenntnisse:
Anfänger
suslik87 befindet sich auf einem aufstrebenden Ast
Standard

GD Support enabled
GD Version bundled (2.0.34 compatible)

Also in der phpinfo() kommt Version 2.0.34.

Also könnte es daran liegen, dass ich imagesetstyle() verwende?
suslik87 ist offline   Mit Zitat antworten
Alt 19.10.2011, 16:12  
Erfahrener Benutzer
 
Registriert seit: 01.09.2010
Beiträge: 4.561
PHP-Kenntnisse:
Fortgeschritten
eagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Menscheagle275 ist ein sehr geschätzer Mensch
Standard

nein - es geht um die PURE Reihenfolge der Funktionen.

Imagesetthickness "hält" halt genau einen weiteren Aufruf (einer GD-FUnktion) lang - wenn das direkt der Zeichenbefehl ist, klappt es wohl - bei dir ist der nächstfolgende Aufruf aber diese Style-Festlegung ... kann sein, dass er dann unerwünscht das setthickness dafür verbrät und damit das Zeichnen der Strichel-Linie versaut .

Also :

zuerst Muster definieren
Dann Dicke Festlegen
Dann Strich machen
__________________
"Irren ist männlich", sprach der Igel und stieg von der Drahtbürste
eagle275 ist offline   Mit Zitat antworten
Alt 19.10.2011, 16:40  
Neuer Benutzer
 
Registriert seit: 08.10.2011
Beiträge: 7
PHP-Kenntnisse:
Anfänger
suslik87 befindet sich auf einem aufstrebenden Ast
Standard

jetzt ist es anders, aber immer noch nicht richtig.

Bild 1 ohne Befehl imagesetthickness().


Bild 2 mit Befehl imagesetthickness()


Hier ist für mich eben klar, dass da irgendetwas schief geht, da die Strichlänge sich verkürzt.

Geändert von suslik87 (19.10.2011 um 16:42 Uhr). Grund: Bilder falsch Verlinkt
suslik87 ist offline   Mit Zitat antworten
Alt 19.10.2011, 17:20  
Neuer Benutzer
 
Registriert seit: 08.10.2011
Beiträge: 7
PHP-Kenntnisse:
Anfänger
suslik87 befindet sich auf einem aufstrebenden Ast
Standard

Vielen dank für die Hilfe.
Ich konnte das Problem mit einem Script lösen.

Jemand war so freundlich und hat das Script als Kommentar unten angehängt.

Script für gestrichelte Linien und Dicke
Die Funktion nennt sich "imagepatternedline()"

Danke für die Hilfe!
suslik87 ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] Breite Gestrichelte Linien verändern imagedashedline suslik87 PHP Einsteiger 2 18.10.2011 15:16

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php gd gestrichelte linie, php image gepunktete linie, linien über bild php, image gestrichelten kreis php, gestrichelte linie php, php image striche, php imagesetthickness not working, php gd strichel linie, imagesetthickness funktioniert nicht, imagesetthickness beispiel, imagesetthickness, versetzte gestrichelte linie illustrator, w mit gestrichelte linie, php gestrichelte linie image, php gepunktete linie einfügen, php gd imageline style beispiel

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:14 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum