[php/GD] imagettftext en special chars

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Altaphista
  • Registratie: Juli 2001
  • Laatst online: 17-09 12:13

Altaphista

1. check manual, 2. ask

Topicstarter
ik zit vast met het printen van een string met speciale chars en zie niet meer wat ik fout doe, kan iemand een verhelderend antwoord geven? Oja, het werkt niet op de server van de hostingprovider, lokaal doet ie het wel.

- Ik heb een werkend basic bestand image.php die maakt een simpel string in een plaatje (imagettftext). Werkt voor alle normale chars.
- Ik heb alles UTF-8 (opgeslagen als).
- Font (Arial) bevat alle chars die ik wil maken
- Ik wil special chars dus ook maken, bijv é of de €.

Nu heb ik met terugwerkende kracht zitten testen en het loopt nu al fout als ik in de browser intype:
url.com/image.php?string=téstje.
Hier wordt, ná ENTER, van gemaakt:
/image.php?string=t%E9stje en ik zie een blokje ipv de é op mijn image..
Prima, dacht ik, google zegt urldecode. Maar nog steeds een blokje. Ook utf8en- en decode werken niet.

Het vreemde is nu dat als ik zeg string=h%E9 (of string=h%E9%20%E4) dan krijg ik wél (of hé ä) te zien op mijn image maar zodra ik er een char achter type dan weer blokje (dus %E9a werkt niet). Alleen een spatie (dus %20) erachter werkt...
Aan welke instelling op de server ligt het?

Weet iemand of het aan de php install kan liggen? Het is PHP versie 5.2.6RC1 op linux. Hier lokaal werkt het allemaal wel normaal (5.2.4 + Win NT). Beide geen default_charset, en moet er een variable wel of niet aan of uit staan?

edit:
hmmm, Warning: imagettftext() [function.imagettftext]: any2eucjp(): invalid code in input string in .../image.php on line 17

[ Voor 4% gewijzigd door Altaphista op 17-11-2009 17:09 . Reden: een bug gevonden? ]

Je gaat het pas zien als je het doorhebt.


Acties:
  • 0 Henk 'm!

  • Cartman!
  • Registratie: April 2000
  • Niet online
Wellicht op die server even updaten naar een nieuwere (stable!) versie? 5.2.6 gaat ook alweer even mee...

Verder kun je nog een poging doen met de iconv-functie zodat het zeker weten UTF8 is, is maar een idee.

Acties:
  • 0 Henk 'm!

  • Icelus
  • Registratie: Januari 2004
  • Niet online
Lijkt erop dat de string voor JIS codering wordt aangezien.
Heb je Japanse ondersteuning voor PHP gecompileerd?

Probeer 'ns of het volgende helpt vóór het uitvoeren van imagettftext:
PHP:
1
ini_set( "mbstring.internal_encoding", "UTF-8" );

Developer Accused Of Unreadable Code Refuses To Comment


Acties:
  • 0 Henk 'm!

  • Altaphista
  • Registratie: Juli 2001
  • Laatst online: 17-09 12:13

Altaphista

1. check manual, 2. ask

Topicstarter
Cartman! schreef op dinsdag 17 november 2009 @ 17:20:
Wellicht op die server even updaten naar een nieuwere (stable!) versie? 5.2.6 gaat ook alweer even mee...

Verder kun je nog een poging doen met de iconv-functie zodat het zeker weten UTF8 is, is maar een idee.
kga ze mailen, en iconv check ik ook nog wel ff
Icelus schreef op dinsdag 17 november 2009 @ 17:26:
Lijkt erop dat de string voor JIS codering wordt aangezien.
Heb je Japanse ondersteuning voor PHP gecompileerd?

Probeer 'ns of het volgende helpt vóór het uitvoeren van imagettftext:
PHP:
1
ini_set( "mbstring.internal_encoding", "UTF-8" );
hoe compileer ik Jap ondersteuning? kan ik dat in phpinfo zien? (lokaal heb ik hier niets aan gedaan en werkt alles gewoon)
en de ini_set helpt niets helaas

Je gaat het pas zien als je het doorhebt.