GD und Umlaute bei imagettftext()

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • GD und Umlaute bei imagettftext()

    Hallo,

    ich versuche mit imagettftext(...) und
    PHP-Code:
    $text "Ungültiger Aufruf !";
    $font "fonts/arialbd.ttf";
    $text_color ImageColorAllocate($im,255,0,0);
    $size imagettfbbox(100$font$text);
    $breite $size[4] - $size[6];
    $x = (400 $breite) / 2;
    imagettftext($im100$x140$text_color$font$text); 
    eine Fehlermeldung zu erzeugen. Leider zeigt er mir dabei das "ü" (und komischerweise auch das folgende "l") nicht an. Hab auch schon mit der Kodierung herumprobiert, aber das mittelschwer erfolglos. Also entwederwar ich da zu blöd, oder es liegt (wie ich über google entdeckt habe) am Font selber. Den Font hab ich einfach mal aus dem Windows Ordner genommen, und bei arial.ttf tritt das gleiche Problem auf. Kann mir jemand nen Tipp geben, wie ich das richtig kodieren muß bzw wo ich einen kompatiblen Font herbekomme ?

    Vielen Dank im Voraus !
    Grüße, Christian

    Achja, GD ist auf dem Server wie folgt eingebunden:

    GD Support enabled
    GD Version bundled (2.0.28 compatible)
    FreeType Support enabled
    FreeType Linkage with freetype
    FreeType Version 2.1.3
    T1Lib Support enabled
    GIF Read Support enabled
    GIF Create Support enabled
    JPG Support enabled
    PNG Support enabled
    WBMP Support enabled
    XPM Support enabled
    XBM Support enabled
    JIS-mapped Japanese Font Support enabled

  • #2
    versuch mal die standard-fonts von PHP. Sollte für das was du vorhast ja sowieso reichen.

    Kommentar


    • #3
      Mit Standart-Fonts meinst du den, den man bei imagestring() verpasst bekommt ?

      Naja, der sieht aber wirklich mau aus, und ich brauch das ja nicht nur um Fehlermeldungen zu erstellen ^^ Ne saubere Lösung mit TTF wäre schon recht gut.

      Kommentar


      • #4
        Schau mal im Manual bei imagettftext, Suchbegriff "Umlauts" in den User COntributed Notes. Vielleicht hilft das.
        Zuletzt geändert von pekka; 01.08.2006, 05:55.

        Kommentar


        • #5
          Leider nicht, das hatte ich auch schon ausprobiert. Im ursprünglichen Beispiel zeigte er mir das "ü" gar nicht an, mit der foxy_utf8_to_nce Funktion von der Seite zeigt er mir statt des 'ü' nen kleines Quadrat an.

          Kommentar


          • #6
            Hmmm. Das ist echt komisch.
            ImageFTText() und Konsorten schon probiert? Freetype hast Du ja.

            Kommentar


            • #7
              Das wird leider auch nicht richtig dargestellt.

              Hatte auch mal mit

              PHP-Code:
              $text "Ungültiger Aufruf !";
              $text str_replace("ü"chr(252), $text);
              $font "fonts/arialbd.ttf";
              $text_color ImageColorAllocate($im,255,0,0);
              $size imagettfbbox(100$font$text);
              $breite $size[4] - $size[6];
              $x = (400 $breite) / 2;
              imagettftext($im120$x140$text_color$font$text); 
              versucht auf einfache Art und Weise die entsprechenden Zeichen zu ersetzen, aber das hat leider auch nicht geklappt. Wobei ich mir allerdings mit chr(252) durchaus das "ü" richtig auf dem Bild darstellen lassen kann - hier bin ich wohl nur zu blöd für die Tauschfunktion. Aber vielleicht kann ja jemand noch mehr damit anfangen, daß chr(252) klappt... ?

              Kommentar


              • #8
                Hat denn wirklich keiner mehr noch ne Möglichkeit, die ich versuchen könnte auf Lager, oder weiß was ich beim ersetzen im letzten Code-Abschnitt falsch gemacht habe ?
                Zuletzt geändert von chriditz; 02.08.2006, 20:37.

                Kommentar

                Lädt...
                X