Danske bogstaver med imagettftext (GDlib)

Tags:    php

Jeg prøver at skrive noget på et billede med imagettftext, men det går ikke så godt.

Hvis jeg f.eks. skriver "Dette er en test" så går det godt. Men hvis jeg skriver "Rønnebær" så skriver den R*neb* (hvor * dog er en firkant, men den kan jeg ikke lige skrive her). Hvis jeg skriver "testæ" så går det sjovt nok godt, men hvis jeg skriver "testæl" så gør den igen fejl, og skriver test efterfulgt af en firkant.

Så vidt jeg kan se så erstatter den et dansk tegn og det bogstav hvis et sådant er der med en firkant. Hvis det ikke er et tegn efter det danske er det o.k.

Nogen der har en ide til hvad jeg gør?

Jeg har prøvet utf8_encode("Rønnebær"), men det gør ingen forskel



4 svar postet i denne tråd vises herunder
1 indlæg har modtaget i alt 3 karma
Sorter efter stemmer Sorter efter dato
Lav et regulært udtryk der konverterer alle tegn som ikke er a-zA-Z0-9 til deres tegnkoder med javascript funktionen charCodeAt()

Du kan omvende processen sådan her:

preg_match("/\[#([0-9]{1,3})\]/", $str, $r)



Ah, det er faktisk ikke helt rigtigt. Med utf8_encode("Rønnebær") så får jeg R*nneb*r (hvor * stadig er en firkant), - altså den ødelægger nu kun de danske bogstaver, ikke også det bogstav der kommer lige efter.



Så skal du også have sat <meta http-equiv="content-type" content="text/html; charset=UTF8" />

I din head i html'en.



Så skal du også have sat <meta http-equiv="content-type" content="text/html; charset=UTF8" />

I din head i html'en.


Men jeg generere et billede (det er det GD gør).
Så det er et billede der vises, ikke en tekst. Og som sådan kan jeg ikke lige se at det gør nogen forskal hvilke meta-tags jeg fodrer browseren med.

I øvrigt har jeg fundet en (grim!) løsning.
Hvis jeg erstatter alle mine ø'er med ø og tilsvarende mine æ'er med æ etc. så virker det.
Men jeg synes det er en grim løsning af forskellige årsager. Ikke mindst, hvornår kommer der et nyt uventet bogstav. Det jeg har brug for er at skrive nogle navne ind på mit billede.
Og nu forventer jeg så at folk hedder noget med a-z, A-Z, æ,ø,å,Æ,Ø,Å. Det virker så meget fint.

Men i morgen kommder så måske Söndergreen eller Müller eller noget med ï, eller é eller ...






t