
trainmen
Mitglieder-
Gesamte Inhalte
7 -
Benutzer seit
-
Letzter Besuch
-
Hi, ich habe ein Problem mit Fonts in Linux. Wenn ich die Fonts Van Helsing.ttf und TektonPro-BoldCond.otf unter einem Windows Server benutze hab ich damit keine Probleme. Aber wenn ich dies mit einem Linux Server mache werden die Schriften nicht angezeigt. Kann ich was machen damit damit es auch unter Linux geht? Vielleicht was installieren oder die Fonts umändern? Ich brauch die Schriften für eine dymanische Grafik.
-
Fehler bei Textausgabe in dynmaischen Bild
trainmen antwortete auf trainmen's Thema in Skript- und Webserverprogrammierung
Jo der Fehler ist weg *vor Freude in die Luft spring*. Danke Danke für die Hilfe und ich sitzt da schon seit 5 Tagen drann xD -
Fehler bei Textausgabe in dynmaischen Bild
trainmen antwortete auf trainmen's Thema in Skript- und Webserverprogrammierung
OK hab ich jetzt gemacht, nun erhalte ich diese Meldung: Notice: Undefined offset: 171 in E:\xampp\htdocs\banner\signatur.php on line 300 Notice: Undefined offset: 171 in E:\xampp\htdocs\banner\signatur.php on line 301 Notice: Undefined offset: 171 in E:\xampp\htdocs\banner\signatur.php on line 300 Notice: Undefined offset: 171 in E:\xampp\htdocs\banner\signatur.php on line 301 Also das heißt ja das dieser Key nicht enthalten ist ich versteh nur nicht warum -.- EDIT: So hab mir jetzt noch $skilling mit print_r ausgeben lassen und bekam das als Ergebnis: Array ( [171] => 12 ) Array ( [182] => 1 ) Array ( [] => 0 ) -
Fehler bei Textausgabe in dynmaischen Bild
trainmen antwortete auf trainmen's Thema in Skript- und Webserverprogrammierung
Wenn ich wie gesagt imagefttext auskommentiere ist kein Fehler. Hab ich gemacht aber wie soll da ein Fehler drin stehen? Falls du meinst stat den Text der dort stehen sollte ein Fehlertext, nein es steht keiner drin Nein da sind keine Ich arbeite noch net lange mit PHP, also versteh ich das net ganz jetzt ^^ -
Fehler bei Textausgabe in dynmaischen Bild
trainmen antwortete auf trainmen's Thema in Skript- und Webserverprogrammierung
Da ich mein Beitrag nicht ändern kann muss ich das so machen, also ich habe dort ein Fehler gemacht. Ich meinte $skillstring und nicht $skilling. -
Fehler bei Textausgabe in dynmaischen Bild
trainmen antwortete auf trainmen's Thema in Skript- und Webserverprogrammierung
foreach( $newskillstring as $key => $val ) { if( $newskillstring[$key] != "0 0 0" or $newskillstring[$key] != "0;0;0" ) { if( $skillType == 0 ) { $subparts = explode( ";" , $newskillstring[$key] ); $skill_000 = $subparts[0]; $skill_001 = $subparts[1]; #$skill_00 = implode (" ", $skill_000); #$skill_01 = implode (" ", $skill_001); $skill_0 = array ($skill_000); $skill_1 = array ($skill_001); $skilling = array_combine($skill_0, $skill_1); #$skill = array_key_exists(171, $skilling); #$skill = $skilling[10]; imagefttext($img, $size_1, 0, 1, 1, $black, $font_2, $skilling[171]); imagefttext($img, $size_1, 0, 1, 1, $yellow, $font_2, $skilling[171]); } else { $subparts = explode( ";" , $newskillstring[$key] ); $skill_000 = $subparts[0]; $skill_001 = $subparts[1]; #$skill_00 = implode (" ", $skill_000); #$skill_01 = implode (" ", $skill_001); $skill_0 = array ($skill_000); $skill_1 = array ($skill_001); $skilling = array_combine($skill_0, $skill_1); #$skill = array_key_exists(171, $skilling); #$skill = $skilling[10]; imagefttext($img, $size_1, 0, 1, 1, $black, $font_2, $skilling[171]); imagefttext($img, $size_1, 0, 1, 1, $yellow, $font_2, $skilling[171]); } #$yellow = ImageColorAllocate($img, 255, 218, 88); #$black = ImageColorAllocate($img, 0, 0, 0); #ImageString($img, 5, 1, 1, $skill, $yellow); } } ImagePNG($img); } } [/PHP] -
Hi, ich will in einem dynamischen Bild Text ausgeben nur bekomme ich eine Fehler wenn ich dies tu. Die Textausgabe ist ganz unten im PHP Code. imagefttext($img, $size_1, 0, 1, 1, $black, $font_2, $skilling[171]); imagefttext($img, $size_1, 0, 1, 1, $yellow, $font_2, $skilling[171]);. Wenn ich die Textausgabe raus nehme würd das Bild generiert. Fehlermeldung: Die Grafik "http://127.0.0.1/banner/signatur.php?char=Train" kann nicht angezeigt werden, weil sie Fehler enthält. Dies ist der PHP Code wo ich den Fehler nicht finde. $skilling = 172;12;75;182;1;75; ini_set('display_errors','1'); error_reporting(E_ALL); @mysql_connect('192.168.178.24', 'trainmen', '2351020') or die("Could not connect to server"); mysql_select_db('ascent') or die("Could not find database"); if (!empty($_GET['char'])) { $sql = " SELECT c.guid, c.name, c.race, c.class, c.gender, c.level, c.skills, c.online, gd.guildid, gd.playerid, g.guildName FROM characters c INNER JOIN guild_data gd ON gd.playerid = c.guid INNER JOIN guilds g USING(guildId) WHERE name = '" . htmlspecialchars($_GET['char']) . "'"; $query = mysql_query($sql) or die(mysql_error()); $row = mysql_fetch_assoc($query); $counter = mysql_num_rows($query); if($counter == 0) { $guild = ""; } else { $name = $row['name']; $race = $row['race']; $classe = $row['class']; $gender = $row['gender']; $level = $row['level']; $skillstring = $row['skills']; $online = $row['online']; $guild = "" . $row['guildName']; if($race >= 1 && $race <= 11) { $im_ar = array('', 'Mensch_', 'Orc_', 'Zwerg_', 'Nachtelf_', 'Untoter_', 'Taure_', 'Gnom_', 'Troll_', '', 'Blutelf_', 'Draenei_') or die("Rasse nicht spezifizierbar"); $imag2 = $im_ar[$race]; $im_ar = array('', 'Krieger_', 'Paladin_', 'Jaeger_', 'Schurke_', 'Priester_', '', 'Schamane_', 'Magier_', 'Hexenmeister_', 'Druide_') or die("Klasse nicht spezifizierbar"); $imag3 = $im_ar[$classe]; $im_ar = array('m.png', 'w.png') or die("Geschlecht nicht spezifizierbar"); $imag4 = $im_ar[$gender]; } Header("Content-Type: image/png"); $img = ImageCreateFromPNG ('images/' . $imag2 . $imag3 . $imag4); $yellow = ImageColorAllocate($img, 255, 218, 88); $black = ImageColorAllocate($img, 0, 0, 0); $font_1 = "fonts/Van Helsing.ttf"; $font_2 = "fonts/TektonPro-BoldCond.otf"; $size_1 = 10; $size_2 = 19; $banner_x = 500; $banner_y = 167; $banner_pos1 = 28; //Charname $banner_s1 = imagettfbbox($size_2, 0, $font_1, $name); $char_font = 500 - ($banner_pos1 + $banner_s1[4]); $charn_x = $char_font; $charn_y = 134; imagefttext($img, $size_2, 0, $charn_x, $charn_y, $black, $font_1, $name); imagefttext($img, $size_2, 0, $charn_x - 2, $charn_y -2, $yellow, $font_1, $name); //Leveltext imagefttext($img, $size_1, 0, 266, 164, $black, $font_2, $level); imagefttext($img, $size_1, 0, 265, 163, $yellow, $font_2, $level); //Gilde $banner_s1 = imagettfbbox($size_2, 0, $font_1, $guild); $char_font = 500 - ($banner_pos1 + $banner_s1[4]); $charn_x = $char_font; $guildn_y = 164; imagefttext($img, $size_2, 0, $charn_x, $guildn_y, $black, $font_1, $guild); imagefttext($img, $size_2, 0, $charn_x - 2, $guildn_y -2, $yellow, $font_1, $guild); if( stristr( $skillstring , ";" ) ) { $skillType = 1; // new type $allparts = explode( ";" , $skillstring ); } else { $skillType = 0; // old type $allparts = explode( " " , $skillstring ); } $professions = array( 164 , 165 , 171 , 182 , 186 , 197 , 202 , 333 , 393 , 755 ); $badprofessions = array( 65700, 65701, 65707, 65718, 65722, 65733, 65738, 65869, 65929, 66291 ); $parts = array(); $newskillstring = array(); for( $i = 0; $i < count( $allparts ) ; $i += 3 ) { $parts[$i] = $allparts[$i]; if( !isset( $allparts[$i+1] ) ) $parts[$i+1] = 0; else $parts[$i+1] = $allparts[$i+1]; if( !isset( $allparts[$i+2] ) ) $parts[$i+2] = 0; else $parts[$i+2] = $allparts[$i+2]; if( $skillType == 0 ) { $newskillstring[$i] = str_replace( "\n" , "" , $parts[$i] . " " . $parts[$i+1] . " " . $parts[$i+2] ); } else { $newskillstring[$i] = str_replace( "\n" , "" , $parts[$i] . ";" . $parts[$i+1] . ";" . $parts[$i+2] ); } } $beruf = array(); foreach( $newskillstring as $key => $val ) { if( $newskillstring[$key] != "0 0 0" and $newskillstring[$key] != "0;0;0" ) { if( $skillType == 0 ) { $subparts = explode( " " , $newskillstring[$key] ); $skillid = $subparts[0]; } else { $subparts = explode( ";" , $newskillstring[$key] ); $skillid = $subparts[0]; } //$skillid = $subparts[0] - 0x10000; switch( $skillid ) { case 164: $beruf[] = "professions/Schmiedekunst.png"; break; case 165: $beruf[] = "professions/Lederverarbeitung.png"; break; case 171: $beruf[] = "professions/Alchemie.png"; break; case 182: $beruf[] = "professions/Kraeuterkunde.png"; break; case 186: $beruf[] = "professions/Bergbau.png"; break; case 197: $beruf[] = "professions/Schneiderei.png"; break; case 202: $beruf[] = "professions/Ingenieurkunst.png"; break; case 333: $beruf[] = "professions/Verzauberungskunst.png"; break; case 393: $beruf[] = "professions/Kürschnnerei.png"; break; case 755: $beruf[] = "professions/Juwelenschleifen.png"; break; default: $proficon = ""; } @$beruf_0 = imagecreatefrompng($beruf[0]); @imagecopy($img, $beruf_0, 4, 86, 0, 0, 22, 22); } } foreach( $newskillstring as $key => $val ) { if( $newskillstring[$key] != "0 0 0" and $newskillstring[$key] != "0;0;0" ) { if( $skillType == 0 ) { $subparts = explode( " " , $newskillstring[$key] ); $skillid = $subparts[0]; } else { $subparts = explode( ";" , $newskillstring[$key] ); $skillid = $subparts[0]; } //$skillid = $subparts[0] - 0x10000; switch( $skillid ) { case 164: $beruf[] = "professions/Schmiedekunst.png"; break; case 165: $beruf[] = "professions/Lederverarbeitung.png"; break; case 171: $beruf[] = "professions/Alchemie.png"; break; case 182: $beruf[] = "professions/Kraeuterkunde.png"; break; case 186: $beruf[] = "professions/Bergbau.png"; break; case 197: $beruf[] = "professions/Schneiderei.png"; break; case 202: $beruf[] = "professions/Ingenieurkunst.png"; break; case 333: $beruf[] = "professions/Verzauberungskunst.png"; break; case 393: $beruf[] = "professions/Kürschnnerei.png"; break; case 755: $beruf[] = "professions/Juwelenschleifen.png"; break; default: $proficon = ""; } if(@$beruf[0] == @$beruf[1]) break; else { $beruf_1 = imagecreatefrompng($beruf[1]); imagecopy($img, $beruf_1, 31, 91, 0, 0, 22, 22); } } } [/PHP]