supraduk: PHP 5.3 seltsamen Problem mit deutschen Umlauten

Seit dem Umstieg auf PHP 5.3 hab ich ein Problem mit deutschen
Umlauten im Zusammenhang mit imagettftext.

Wenn nach einem deutschen Umlaut ein Freizeichen im
Text ist gibt es keine Probleme kommt danach aber
direkt das nächste Zeichen wird der Umlaut nicht dargestellt.

Wir mit imagettftext also das Wort "Zubehör" in eine
Grafik geschrieben kommt statt des ö nur ein Kasten.
Schreibt man dagegen "Zubehö r" erscheint der Umlaut richtig.

Siehe z.b.:
http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&text=Zubehör
geht nicht.

http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&text=Zubehö%20r
Umlaut wird dargestellt.

Ich könnte mir zwar auch mit:

	function uml_text($text)  
	{  
		$array_uml_conv = array("ü","ö","ä","Ü","Ö","Ä","ß","§","€");  
		while(list($dummy, $i) = each($array_uml_conv))  
			$text = str_replace( $i, "&#".ord($i).";", $text);  
		return $text;  
	}  
	$text = uml_text($text);  

behelfen nur gibt es sicher auch einen einfacheren Weg ( da das Script
rechtumfangreich in den Funktionen ist und man auch als Parameter ganze
Textfiles übergeben kann möchte ich ungern erst intern umständlich mit
str_peplace rumhantieren.

  1. NACHTRAG:

    siehe z.b. auch:
    http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&tlb=on&tfile=test.txt

  2. Du musst deine php.ini richtig configurieren, dann klappt das auch wieder. Ich hoffe für Dich, du hast die alte php.ini irgendwo noch gespeichert, dann ist es einfacher PHP 5.3 so laufen zu lassen, wie du es kennst!

    Gruß Mike(ossiman)

    1. Du musst deine php.ini richtig configurieren, dann klappt das auch wieder. Ich hoffe für Dich, du hast die alte php.ini irgendwo noch gespeichert, dann ist es einfacher PHP 5.3 so laufen zu lassen, wie du es kennst!

      Gruß Mike(ossiman)

      Das Problem ist das Script läuft auf zich Webseiten auf zich Servern
      so das ein Weg gefunden werden muß das wenn diese auf PHP5.3 umsteigen,
      mit "Standartconfig", das es auch dort läuft ( wie gesagt das Ding ist recht
      umfangreich, wird für Grafiken aber in erster Linie für Buttons genutzt
      weil so das komplette Design aller Buttons immer leicht und schnell
      über eine Configdatei zu ändern ist ohne jedesmal neue Buttonsätze
      erstellen zu müssen ).
      Der Witz ist ja auch das PHP nicht generell Probleme mit den Umlauten
      hat sondern nur sobald per imagettftext ein Umlaut verarbeitet wird, und
      denn auch nicht immer sondern wie am Beispieltext zu sehen in bestimmten
      Kombinationen.

      1. .. wie gesagt sonst könnte ich auch ein:

        	function uml_text($text)  
        	{  
        		for($i=123;$i<255;$i++)  
        			$text = str_replace(chr($i), "&#".ord(chr($i)).";", $text);  
        		return $text;  
        	}  
        	$text = uml_text($text);  
        
        

        ...einbauen nur wüßte ich gern wo imagettftext da als einzigstes
        sein Preoblem hat. :-(

        1. .. wie gesagt sonst könnte ich auch ein:

          function uml_text($text)  
          

          {
          for($i=123;$i<255;$i++)
          $text = str_replace(chr($i), "&#".ord(chr($i)).";", $text);
          return $text;
          }
          $text = uml_text($text);

          
          >   
          > ...einbauen nur wüßte ich gern wo imagettftext da als einzigstes  
          > sein Preoblem hat. :-(  
            
          Da ist alles beschrieben, warum es nicht mit Umlauten funst!  
            
          php.net/manual/de/function.imagettftext.php  
            
          (Text ist der auszugebende String, der auch UTF-8-Zeichenfolgen enthalten darf (z.B. &#123;))
          
          1. .. wie gesagt sonst könnte ich auch ein:

            function uml_text($text)  
            
            {  
              for($i=123;$i<255;$i++)  
              	$text = str_replace(chr($i), "&#".ord(chr($i)).";", $text);  
              return $text;  
            }  
            $text = uml_text($text);  
            
            
            > >   
            > > ...einbauen nur wüßte ich gern wo imagettftext da als einzigstes  
            > > sein Preoblem hat. :-(  
            >   
            > Da ist alles beschrieben, warum es nicht mit Umlauten funst!  
            >   
            > php.net/manual/de/function.imagettftext.php  
            >   
            > (Text ist der auszugebende String, der auch UTF-8-Zeichenfolgen enthalten darf (z.B. &#123;))  
              
            Da steht zwar wie es geht ( was auch nichts Anderes als meine  
            obige Lösung ist ) nur wird dadurch auch nicht klar warum "ü ü" oder "ü r"  
            geht und "üü" oder "ür" wiederum nicht. ;-)
            
            1. Tut mir Leid, ich habe php5.3 noch nicht laufen, drum kann ich das bei mir nicht auspropieren. Das Dumme ist nur, ich werde dann auch noch die Probleme bekommen, da ich diese Variable auch oft benutze! :-( Vieleicht ist das nur ein kleiner Fehler der bald seitens PHP behoben wird!
               Gruß Mike

              1. Tut mir Leid, ich habe php5.3 noch nicht laufen, drum kann ich das bei mir nicht auspropieren. Das Dumme ist nur, ich werde dann auch noch die Probleme bekommen, da ich diese Variable auch oft benutze! :-( Vieleicht ist das nur ein kleiner Fehler der bald seitens PHP behoben wird!
                Gruß Mike

                Ich hab PHP5.3 ja auch nur auf dem einen testserver laufen nur hatte
                ich heute mal gerade zeit mich damit zu beschäftigen. An Umlauten
                generell kanns ja nicht liegen da er sie ja teilweise darstellt nur
                eben nicht in bestimmten Kombinationen oder mitten im Wort.

                Warum ich eben eigentlich nicht nachträglich zeichen austauschen
                will im Script ist eben das hierüber auch ganze Textdateien dargestellt
                werden ( wenn ein Nutzer umbedingt auf einen Zeichensatz in Teilbereichen
                der Seite besteht ) siehe z.b.:
                http://www.latinta.de/_vita.php
                oder
                http://www.latinta.de/_ausstellungen.php?mode=1&aus_f=75_Eine%20proppevolle%20Palette%202007.txt

                und das Ganze denn zu langsam werden könnte.

                1. Hi,

                  Warum ich eben eigentlich nicht nachträglich zeichen austauschen
                  will im Script ist eben das hierüber auch ganze Textdateien dargestellt
                  werden ( wenn ein Nutzer umbedingt auf einen Zeichensatz in Teilbereichen
                  der Seite besteht ) siehe z.b.:
                  http://www.latinta.de/_vita.php
                  oder
                  http://www.latinta.de/_ausstellungen.php?mode=1&aus_f=75_Eine%20proppevolle%20Palette%202007.txt

                  Dieser Unfug, Text als Bild darzustellen, sollte „dem Nutzer” ausgeredet werden.

                  MfG ChrisB

                  --
                  “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
                  1. Hi,

                    Warum ich eben eigentlich nicht nachträglich zeichen austauschen
                    will im Script ist eben das hierüber auch ganze Textdateien dargestellt
                    werden ( wenn ein Nutzer umbedingt auf einen Zeichensatz in Teilbereichen
                    der Seite besteht ) siehe z.b.:
                    http://www.latinta.de/_vita.php
                    oder
                    http://www.latinta.de/_ausstellungen.php?mode=1&aus_f=75_Eine%20proppevolle%20Palette%202007.txt

                    Dieser Unfug, Text als Bild darzustellen, sollte „dem Nutzer” ausgeredet werden.

                    MfG ChrisB

                    Auf manchen Seiten soll damit halt erschwert werden Text einfach zu
                    kopieren. Oder für Leute die gerade wissen wie rum man eine Maus
                    hält ist es halt einfacher ggf. ein einfaches Textfile zu ändern
                    oder irgendwo rein zu schmeißen. Was aber alles am Thema vorbeigeht
                    das imagettftext wohl anscheinend hier einen Fehler hat bei bestimmten
                    Zeichenkombinationen und nicht bei bestimmten Zeichen.

                    1. Hi,

                      Auf manchen Seiten soll damit halt erschwert werden Text einfach zu kopieren.

                      Texte, von denen du nicht willst, dass sie *zugänglich* sind, brauchst du gar nicht erst online stellen.

                      Oder für Leute die gerade wissen wie rum man eine Maus hält ist es halt einfacher ggf. ein einfaches Textfile zu ändern oder irgendwo rein zu schmeißen.

                      Dann kannst du den Inhalt dieser Textfiles ja trotzdem nach wie vor als Text ausgeben.

                      MfG ChrisB

                      --
                      “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
                      1. Und was bitte hat diese ganze Diskussion jetzt noch mit dem
                        eigentlichen Problem/Frage zu tun?

                        1. Und was bitte hat diese ganze Diskussion jetzt noch mit dem
                          eigentlichen Problem/Frage zu tun?

                          du bist auf dem falschen Weg. Lass es!
                          Text = Text und Bild = Bild

                2. Moin Moin»» »» Tut mir Leid, ich habe php5.3 noch nicht laufen, drum kann ich das bei mir nicht auspropieren. Das Dumme ist nur, ich werde dann auch noch die Probleme bekommen, da ich diese Variable auch oft benutze! :-( Vieleicht ist das nur ein kleiner Fehler der bald seitens PHP behoben wird!

                  Gruß Mike

                  Ich hab PHP5.3 ja auch nur auf dem einen testserver laufen nur hatte
                  ich heute mal gerade zeit mich damit zu beschäftigen. An Umlauten
                  generell kanns ja nicht liegen da er sie ja teilweise darstellt nur
                  eben nicht in bestimmten Kombinationen oder mitten im Wort.

                  Warum ich eben eigentlich nicht nachträglich zeichen austauschen
                  will im Script ist eben das hierüber auch ganze Textdateien dargestellt
                  werden ( wenn ein Nutzer umbedingt auf einen Zeichensatz in Teilbereichen
                  der Seite besteht ) siehe z.b.:
                  http://www.latinta.de/_vita.php
                  oder
                  http://www.latinta.de/_ausstellungen.php?mode=1&aus_f=75_Eine%20proppevolle%20Palette%202007.txt

                  und das Ganze denn zu langsam werden könnte.

                  Na dann werde ich mich mal in der nächsten Tagen auch mit diesem Problem PHP5.3 beschäftigen.

                  Beste Grüße
                  Mike (Ossiman)

          2. ...

            ... der auch UTF-8-Zeichenfolgen enthalten darf (z.B. &#123;))

            Häh?

            brillo Agent Nr. 1

      2. Das Problem ist das Script läuft auf zich Webseiten auf zich Servern
        so das ein Weg gefunden werden muß das wenn diese auf PHP5.3 umsteigen,
        ...

        Du solltest HTML-Codes für Umlaute und Sonderzeichen benutzen. Hat den Vorteil, die werden immer dargestellt. Ich hatte das Proplem bei WML-Dateien.

        Gruß Mike

  3. hi,

    http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&text=%FC

    zeigt ein 'ü'

    http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&text=%C3%BC

    zeigt Müll.

    Dein Script geht also davon aus, dass der URI encodet ist nach ISO und kann mit einem URI-Encoding nach UTF-8 nichts anfangen.

    Dieser Hinweis sollte genügen, Dein Problem zu lösen. Evnt. nochn Tipp:

    Sorge dafür, dass die URIs Deinen Vorstellungen entsprechend encodet sind. Sofern das Benutzereingaben in der Adresszeile sind, kanns Du das jedoch nicht beeinflussen.

    Hotti

    1. Hi,

      http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&text=%FC

      zeigt ein 'ü'

      http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&text=t%FCt-t%FCt

      • was demnach „tüt-tüt” ergeben sollte, zeigt aber wieder nur tKÄSTCHEN-tKÄSTCHEN

      MfG ChrisB

      --
      “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]
      1. Hi,

        http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&text=%FC

        zeigt ein 'ü'

        http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&text=t%FCt-t%FCt

        • was demnach „tüt-tüt” ergeben sollte, zeigt aber wieder nur tKÄSTCHEN-tKÄSTCHEN

        Tja, da ist wohl dochn bischen mehr kaputt, als ich vermute ;-)

        дедский мороз

        (Väterchen Frost lässt grüßen)

        1. Hi,

          http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&text=%FC

          zeigt ein 'ü'

          http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&text=t%FCt-t%FCt

          • was demnach „tüt-tüt” ergeben sollte, zeigt aber wieder nur tKÄSTCHEN-tKÄSTCHEN

          Tja, da ist wohl dochn bischen mehr kaputt, als ich vermute ;-)

          дедский мороз

          (Väterchen Frost lässt grüßen)

          Es geht ja auch nicht wenn der Text per Textfile übergeben wird.
          siehe z.b.:
          http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&tlb=on&tfile=test.txt

          Hatte ich zwar schon geschrieben dürfte aber in der unnötigen Mülldiskussion
          untergegangen sein. Es liegt also nicht an der Übergabe aus der URL.

          1. Vor allem warum geht "üüü" oder "tüt" nicht
            dagegen macht "äää" oder "tät" keine Probleme.

          2. hi,

            Es geht ja auch nicht wenn der Text per Textfile übergeben wird.
            siehe z.b.:
            http://nashville-records.homeunix.com/__draw.php?mode=2&size=24&tlb=on&tfile=test.txt

            Dein Text ist ISO-8859-15 codiert (sagt mein Browser)

            Btw., Ein 'ü' als %FC ist ISO-8859-1

            untergegangen sein. Es liegt also nicht an der Übergabe aus der URL.

            Dann verrate uns doch endlich mal, in welcher Codierung Dein Script die Zeichen erwartet. Genau das hat nämlich tatsächlich nichts mit der Übergabe aus der URL zu tun.

            Hotti

            --
            @ChrisB: Siehe Bindestrichpropblem ;-)
            1. Jetzt mal weg vom Script vom Anfang.
              http://nashville-records.homeunix.com/test.php

              Geht genau so wenig und besteht aus folgendem ( schnell
              zusammengeschriebenen Müll ):

              <?php  
              	$font = "arial.ttf";  
              	$size = 18;  
              	$row_height = ($size*.5);  
              	$textfile = @file("test.txt");  
              	$textwerte = @imagettfbbox($size, 0, $font, "Ag");  
              	$textwerte[5] = abs($textwerte[5]);  
              	$basic_rowh = $textwerte[5];  
              	$zeilen = count($textfile);  
              	$height = $zeilen*($textwerte[5]+$row_height);  
              	$width = 0;  
              	for($count=0;$count<$zeilen;$count++)  
              	{  
              		$textwerte = @imagettfbbox($size, 0, $font, $textfile[$count]);  
              		$textwerte[5] = abs($textwerte[5]);  
              		if(($textwerte[2]+$text_sp) > $width)  
              			$width = ($textwerte[2]+$text_sp);  
              	}  
              	$img01 = imagecreatetruecolor($width, $height);  
              	$background = imagecolorallocate($img01,255,255,255);  
              	$tcolor = imagecolorallocate($img01,0,0,0);  
              	imagefilledrectangle($img01, 0, 0, $width, $height, $background);  
              	$ttt = $basic_rowh;  
              	for($count=0;$count<$zeilen;$count++)  
              	{  
              			$textwerte = @imagettfbbox($size, 0, $font, $textfile[$count]);  
              			$textwerte[5] = abs($textwerte[5]);  
              			$ttt += ($textwerte[5]+$row_height);  
              			@imagettftext ($img01, $size, 0, (($width-$textwerte[2])/2), $ttt, $tcolor, $font, $textfile[$count]);  
              	}  
              	imagegif($img01);  
              	imagedestroy($img01);  
              ?>
              
              1. Hi!

                Jetzt mal weg vom Script vom Anfang.
                http://nashville-records.homeunix.com/test.php

                Da fehlt der richtige Content-Type-HTTP-Header, ich sehe (derzeit) nur Zeichensalat und keine Grafik.

                Geht genau so wenig und besteht aus folgendem ( schnell) zusammengeschriebenen Müll ):

                Produziert bei mir nur jede Menge Fehler.

                Notice: Undefined variable: text_sp in ... on line 16
                Warning: imagecreatetruecolor() [function.imagecreatetruecolor]: Invalid image dimensions in ... on line 19
                Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in ... on line 20
                Warning: imagecolorallocate() expects parameter 1 to be resource, boolean given in ... on line 21
                Warning: imagefilledrectangle() expects parameter 1 to be resource, boolean given in ... on line 22
                Warning: imagegif() expects parameter 1 to be resource, boolean given in ... on line 31
                Warning: imagedestroy() expects parameter 1 to be resource, boolean given in ... on line 32

                Nimm doch zum Testen das Beispielscript aus dem Handbuch (englische Version) und achte auf die verwendete Zeichenkodierung.

                Lo!

              2. Moin,

                Jetzt mal weg vom Script vom Anfang.

                Genau, mach das. Hinweis: Dein Script erwartet Zeichen, die ISO-8859-1 codiert sind, die werden offensichtlich richtig dargestellt, zumindest das 'ü' hab ich getestet, das geht.

                In deiner Test.txt-Datei hingegen liegen die Zeichen in der Codierung ISO-8859-15 vor, die werden nicht richtig umgesetzt von Deinem Script, genausowenig, wie Zeichen, die UTF-8-codiert sind (Test per URL).

                Und wie ich in meinem ersten POST gestern abend schon schrieb: Stelle sicher, dass die Zeichen aus der Datenquelle in _der_ Codierung vorliegen, die _Dein Script_ richtig verarbeiten kann. Dann klappts auch mit den Sondermüll(zeichen) ;-)

                Schönen Sonntag,
                Horst Haselhuhn

                1. Hi!

                  Genau, mach das. Hinweis: Dein Script erwartet Zeichen, die ISO-8859-1 codiert sind, die werden offensichtlich richtig dargestellt, zumindest das 'ü' hab ich getestet, das geht.
                  In deiner Test.txt-Datei hingegen liegen die Zeichen in der Codierung ISO-8859-15 vor, die werden nicht richtig umgesetzt von Deinem Script, genausowenig, wie Zeichen, die UTF-8-codiert sind (Test per URL).

                  Der Unterschied zwischen ISO-8859-1 und ISO-8859-15 sind genau jeweils 6 Zeichen

                  15: €ŠšŽžŒœŸ
                   1: ¤¦¨´¸¼½¾

                  Hast du mit diesen Zeichen gestestet und Unterschiede festgestellt? Ansonsten ist 15 vs. 1 nicht von Belang. UTF-8 hingegen schon, weil die Funktion gemäß Handbuch UTF-8 haben möchte.

                  Lo!

        2. Hi!

          Tja, da ist wohl dochn bischen mehr kaputt, als ich vermute ;-)

          Беиспиелсшеизе деине руссишкеннтниссе.

          дедский мороз

          Großväterlicher Frost?

          (Väterchen Frost lässt grüßen)

          Ach, Дед мороз.

          Lo!

          1. Hallo,

            Tja, da ist wohl dochn bischen mehr kaputt, als ich vermute ;-)
            Беиспиелсшеизе деине руссишкеннтниссе.

            autsch, das ist ja schon fast "böse"!
            Ich kann zwar kein Russisch, aber zumindest kann ich Kyrillisch phonetisch lesen. :-)
            Und daher: "beispielsscheise"?

            дедский мороз
            Großväterlicher Frost?

            (Väterchen Frost lässt grüßen)
            Ach, Дед мороз.

            Da kann ich natürlich nicht mehr mithalten.

            Ciao,
             Martin

            --
            Die letzten Worte des Neandertalers:
            Möchte doch zu gern wissen, was in der Höhle ist ...
            1. Hi!

              Беиспиелсшеизе деине руссишкеннтниссе.
              autsch, das ist ja schon fast "böse"!
              Ich kann zwar kein Russisch, aber zumindest kann ich Kyrillisch phonetisch lesen. :-)
              Und daher: "beispielsscheise"?

              Mist. Das sollte so nicht kommen. Auf der W-Taste hab ich doch das ш (sch) liegen und das в (w) auf V.
              Ich hatte die Tastatur unbemerkt noch auf Kyrillisch (phonetisch) stehen, als ich den Satz schrieb. Ich ließ ihn so stehen und korrigierte nur das сцч (sch) von "Russi_sch_kenntnisse" in ein echtes sch (ш) sowie das scharfe с (s) in die weiche Variante з. Das Nicht-w übersah ich. So hätte es sein sollen: Беиспиелсвеизе (Beispielsweise). In richtiger russischer Phonetik fehlen sicher noch Weichheitszeichen und mindestens das Dehnungs-e von ie in spiel muss weg.

              дедский мороз
              Großväterlicher Frost?

              (Väterchen Frost lässt grüßen)
              Ach, Дед мороз.

              Da kann ich natürlich nicht mehr mithalten.

              Дед ist der Großvater, мороз ist Frost. Zusammen wird es als Väterchen Frost oder Weihnachtsmann übersetzt. дедский wäre ein Adjektiv, das es aber so nicht gibt. Als Adjektiv den Großvater beteffend müsste es (denke ich) дедушкий heißen.

              Lo!

  4. Hi!

    Seit dem Umstieg auf PHP 5.3 hab ich ein Problem mit deutschen Umlauten im Zusammenhang mit imagettftext.

    Ich kann mit der Version 5.3.1 unter IIS keinen Fehler nachvollziehen, außer dass diese Funktion entgegen der Handbuchbeschreibung nicht nur UTF-8-kodierte Strings sondern im Falle der deutschen Umlaute auch ISO-8859-1-kodierte Strings entgegennimmt.

    Zum Testen verwendete ich das Beispiel auf der Handbuchseite zu imagettftext().

    Apropos Handbuch: Die deutsche Übersetzung weicht stark vom englischen Original ab und enthält mit

    Text  ist der auszugebende String, der auch UTF-8-Zeichenfolgen enthalten darf (z.B. &#123;)

    einen ziemlichen Faux-Pas. &#123; ist eine nummerische Zeichenreferenz und kein UTF-8.

    Wenn nach einem deutschen Umlaut ein Freizeichen im Text ist gibt es keine Probleme kommt danach aber direkt das nächste Zeichen wird der Umlaut nicht dargestellt.

    In welcher Kodierung liegen denn deine Texte vor? Zusatzfrage: Welche Schriftart und am besten noch in welcher Ausführung verwendest du?

    Lo!

    1. Hi!

      Seit dem Umstieg auf PHP 5.3 hab ich ein Problem mit deutschen Umlauten im Zusammenhang mit imagettftext.

      Ich kann mit der Version 5.3.1 unter IIS keinen Fehler nachvollziehen, außer dass diese Funktion entgegen der Handbuchbeschreibung nicht nur UTF-8-kodierte Strings sondern im Falle der deutschen Umlaute auch ISO-8859-1-kodierte Strings entgegennimmt.

      Zum Testen verwendete ich das Beispiel auf der Handbuchseite zu imagettftext().

      Apropos Handbuch: Die deutsche Übersetzung weicht stark vom englischen Original ab und enthält mit

      Text  ist der auszugebende String, der auch UTF-8-Zeichenfolgen enthalten darf (z.B. &#123;)

      einen ziemlichen Faux-Pas. &#123; ist eine nummerische Zeichenreferenz und kein UTF-8.

      Wenn nach einem deutschen Umlaut ein Freizeichen im Text ist gibt es keine Probleme kommt danach aber direkt das nächste Zeichen wird der Umlaut nicht dargestellt.

      In welcher Kodierung liegen denn deine Texte vor? Zusatzfrage: Welche Schriftart und am besten noch in welcher Ausführung verwendest du?

      Lo!

      Das Problem tritt mit allen getesteten TTF-Fonts auf die deutsche Umlaute
      beinhalten ( wie gesagt auf einem Server mit älterem 5er PHP läuft alles
      ohne Probleme ).
      Die Zeichensatzdatei kann mit im Aufruf des Scripts übergeben werden
      ( siehe http://nashville-records.homeunix.com/__draw.php?help=on  ). Zeichensätze zum testen sind genügend
      vorhanden ( http://nashville-records.homeunix.com/__radioukcom/button%20creator/__fonts ) es liegt also nicht an einem bestimmten Zeichensatz.

      Z.b. geht's auch mit der normalen Arial.ttf nicht:
      http://nashville-records.homeunix.com/__draw.php?font=arial.ttf&size=24&text=Zubehör

      1. Laß doch bitte das Fullquote sein.

      2. Hi!

        Bitte zitiere nicht einfach alles sondern nur das worauf du dich konkret beziehst. Außerdem wäre es schön und für die Lösung des Problems vermutlich hilfreich, wenn du alle Fragen beantwortest.

        In welcher Kodierung liegen denn deine Texte vor?

        Wenn du dir bis jetzt noch keine Gedanken um Zeichensätze und Zeichenkodierungen und die Unterschiede zwischen beiden und zu Schriftart gemacht hast, dann solltest du das nachholen, denn das Grundlagenwissen, wie Zeichen in der EDV repräsentiert werden und dass es eine ganze Menge dieser Arten gibt, ist bei Problemen in diesem Bereich notwendig.

        Die Zeichensatzdatei kann mit im Aufruf des Scripts übergeben werden. Zeichensätze zum testen sind genügend vorhanden es liegt also nicht an einem bestimmten Zeichensatz.

        Der Begriff Zeichensatz ist von dir falsch verwendet worden. Du meinst Schriftart oder Font.

        Z.b. geht's auch mit der normalen Arial.ttf nicht:
        http://nashville-records.homeunix.com/__draw.php?font=arial.ttf&size=24&text=Zubehör

        Da ich nicht weiß, was dein Programm konkret mit den übergebenen Werten anstellt, will ich auch nicht mutmaßen, was da falsch läuft.

        Als UTF-8- und URL-kodiert übergeben, so wie es laut Handbuch eingentlich richtig sein müsste, wenn du den Text nicht noch manipulierst, kommt das Kästchen.

        http://nashville-records.homeunix.com/__draw.php?font=arial.ttf&size=24&text=Zubeh%C3%B6r

        Auch mit Leerzeichen nach dem ö

        http://nashville-records.homeunix.com/__draw.php?font=arial.ttf&size=24&text=Zubeh%C3%B6%20r

        In der Alternativschreibweise als nummerische Zeichenreferenz (ebenfalls URL-kodiert) erfolgt die Ausgabe fehlerfrei

        http://nashville-records.homeunix.com/__draw.php?font=arial.ttf&size=24&text=Zubeh%26%23246;r

        Zur einfacheren Lesbarkeit noch einmal ohne URL-Kodierung: Zubeh&#246;r

        Lo!

  5. Hi,

    Seit dem Umstieg auf PHP 5.3 hab ich ein Problem mit deutschen
    Umlauten im Zusammenhang mit imagettftext.

    Mal ein Schuss ins Blaue:

    Kannst du bitte mal den mbstring-Abschnitt aus der Ausgabe von phpinfo hier posten?

    MfG ChrisB

    --
    “Whoever best describes the problem is the person most likely to solve the problem.” [Dan Roam]