0lav Skrevet 25. september 2005 Del Skrevet 25. september 2005 (endret) Hei! Jeg har laget et bilde i php som jeg setter tekst i, men teksten inneholder ø som blir gjort om til et rart tegn, php fila begynner med header ("Content-type: image/png"); siden det skal fungere som et bilde, men er det noe jeg kan sette inn for å få charsettet iso-8859-1 slik at æøå osv funker? Takk for svar! Endret 26. september 2005 av 0lav Lenke til kommentar
Admin'c Skrevet 25. september 2005 Del Skrevet 25. september 2005 kan du ikke gjøre om til utf-8? (notepad 2) hvis ikke skal det gå ann, husker bare at jeg måtte paste rare tegn som ble til æøå når jeg skulle ha det Lenke til kommentar
0lav Skrevet 25. september 2005 Forfatter Del Skrevet 25. september 2005 Jeg har prøvd med de andre tegnene, som feks ø for ø osv.. Men det funker ikke, det blir ikke gjort om til ø.. Lenke til kommentar
Lokaltog Skrevet 25. september 2005 Del Skrevet 25. september 2005 Legg ut litt kildekode? Hvis jeg gjetter riktig så er dette fordi fonten din ikke har riktige tegntabeller, jeg hadde det samme problemet da jeg prøvde å få fonten Myriad fra Adobe til å fungere i PHP. Løsningen for meg ble å rekompilere fontene med FontLab, men uten å se eksempelkode, font og resultatbilde kan jeg ikke si noe om du har samme problem som jeg hadde. Lenke til kommentar
0lav Skrevet 25. september 2005 Forfatter Del Skrevet 25. september 2005 (endret) Hei! Her er hele koden: <?php header ("Content-type: image/png"); $engelsk = array( "January", "February", "March", "April", "May", "June", "July", "August", "October", "November", "September", "December", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ); $norsk =array( "Januar", "Februar", "Mars", "April", "Mai", "Juni", "Juli", "August", "Oktober", "November", "September", "Desember", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag", "Søndag" ); $img_handle = imageCreateFromPNG("1.png"); $color = ImageColorAllocate ($img_handle, 100, 100, 100); $ip = array("Din ip er ".$_SERVER['REMOTE_ADDR'],"I dag er det ". str_replace($engelsk, $norsk,date(l))); $ip2=array_rand($ip, 2); ImageString ($img_handle, 3, 10, 9, $ip[$ip2[0]], $color); ImagePng ($img_handle); ImageDestroy ($img_handle); ?> Scriptet for å vise bildet fant jeg på en eller annen tutorial, og det som gjør om måned og uke dag navnene fant jeg på http://www.unrealized.org/.. Edit: Slik blir bildet: Endret 25. september 2005 av 0lav Lenke til kommentar
Axentrix Skrevet 25. september 2005 Del Skrevet 25. september 2005 Prøv å erstat ,"lørdag", med: ,utf8_encode("lørdag"), Lenke til kommentar
0lav Skrevet 25. september 2005 Forfatter Del Skrevet 25. september 2005 Prøv å erstat ,"lørdag", med: ,utf8_encode("lørdag"), Når jeg prøvde det så ble riktignokk det "rare" tengnet byttet ut, men det ble ikke ø fordi, slik ble det: Lenke til kommentar
Axentrix Skrevet 25. september 2005 Del Skrevet 25. september 2005 Prøv å erstat ,"lørdag", med: ,utf8_encode("lørdag"), Når jeg prøvde det så ble riktignokk det "rare" tengnet byttet ut, men det ble ikke ø fordi, slik ble det: Prøv med utf8_decode i stedet da:) Lenke til kommentar
0lav Skrevet 25. september 2005 Forfatter Del Skrevet 25. september 2005 Prøv å erstat ,"lørdag", med: ,utf8_encode("lørdag"), Når jeg prøvde det så ble riktignokk det "rare" tengnet byttet ut, men det ble ikke ø fordi, slik ble det: Prøv med utf8_decode i stedet da:) Funker ikke det heller...hmm.. Men er det ikke noe jeg kan skrive i header() elns da? Lenke til kommentar
genstian Skrevet 25. september 2005 Del Skrevet 25. september 2005 ha "Ø" som et bilde Lenke til kommentar
Axentrix Skrevet 25. september 2005 Del Skrevet 25. september 2005 (endret) Prøv å erstat ,"lørdag", med: ,utf8_encode("lørdag"), Når jeg prøvde det så ble riktignokk det "rare" tengnet byttet ut, men det ble ikke ø fordi, slik ble det: Prøv med utf8_decode i stedet da:) Funker ikke det heller...hmm.. Men er det ikke noe jeg kan skrive i header() elns da? Nei, det vil jeg ikke tro. Da denne skriften kommer som et bilde, og ikke i form av ascii. Du tenkte kanskje på å endre hvilken characeter encoding det er, i header? Er nok ikke der problemet er. Du kan prøve å skrive iso8859-1 koden, eller utf-8 koden for ø, og sjekke om DET funker Prøv: \xf8 i stedet for ø Altså: l\xf8rdag Hvis dette ikke funker, prøv: utf8_encode("l\xf8rdag") Eller: utf8_decode("l\xf8rdag") Litt usikker på hvem du skal bruke, tror det er den første. Endret 25. september 2005 av Axentrix Lenke til kommentar
0lav Skrevet 26. september 2005 Forfatter Del Skrevet 26. september 2005 Hei! Det funket når jeg byttet font. Men når jeg lastet det opp på webserveren som jeg leier så fikk jeg det ikke til, jeg lastet opp fonten også. Jeg fikk kun denne feil mld: The image “http://megaspill.net/bilde.php” cannot be displayed, because it contains errors. Serveren jeg leier kjører Linux, funker ikke disse fontene (.ttf) under linux? Siden det funker helt fint på min Windows XP appache server... Lenke til kommentar
uranus Skrevet 26. september 2005 Del Skrevet 26. september 2005 Jeg bruker tahoma.tff i avataren min og jeg bruker Linux server, så jeg aner ikke hva feilen er utifra det liksom. Men du har prøvd alt det som har blitt foreslått ovenfor? Lenke til kommentar
0lav Skrevet 26. september 2005 Forfatter Del Skrevet 26. september 2005 Ja, det har jeg.. Jeg bruker også tahoma.tff og jeg får det ikke til å funke når jeg laster det opp til serveren...:/ Det funker fint på min egnen pc.. Lenke til kommentar
zokra Skrevet 26. september 2005 Del Skrevet 26. september 2005 Hva med litt kildekode? Sikker på at adressa til fonten er rett? Kan være forskjell noen ganger mellom win. og linux. Lenke til kommentar
0lav Skrevet 26. september 2005 Forfatter Del Skrevet 26. september 2005 (endret) Her er koden slik den er nå... <?php header ("Content-type: image/png"); $engelsk = array( "January", "February", "March", "April", "May", "June", "July", "August", "October", "November", "September", "December", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday" ); $norsk =array( "Januar", "Februar", "Mars", "April", "Mai", "Juni", "Juli", "August", "Oktober", "November", "September", "Desember", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag", "Søndag" ); $ip = array("Din ip er ".$_SERVER['REMOTE_ADDR'],"I dag er det ". str_replace($engelsk, $norsk,date(l)), "Vi er i år ".date(Y),"Klokken er ".date("G:i:s")); $ip2=array_rand($ip, 4); $im = imagecreatefrompng("1.png"); $color = imagecolorallocate($im, 100, 100, 100); $px = 8; $py = 20; $font = 'tahoma.ttf'; imagettftext($im, 10, 0, $px, $py, $color, $font, $ip[$ip2[0]]); imagepng($im); imagedestroy($im); ?> Både bildet og fonten ligger i samme mappe som php fila... EDIT: FIkk det til nå! Fikk hjelp av en på MSN som sa at jeg måtte legge til linjen her for at det skulle funke: putenv("GDFONTPATH=/var/www/vhosts/megaspill.net/httpdocs/"); Endret 26. september 2005 av 0lav Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå