Konvertering af Thai tekst
Før Unicode kom til, anvendte computere i Thailand et 8-bit tegnsæt ved navn TIS-620. Det indeholder de almindelige engelske tegn på samme pladser som i ASCII tabellen, samt de thailandske tegn på de pladser hvor vi f.eks. har placeret æøå og diverse tegn med accenter på. Hvis en fil kodet i TIS-620 flyttes til en dansk (eller engelsk) computer og læses der, vil den indeholde tekst der ser ud som det her: “ÍÂÒ¡ÃÙéÇèÒ”. Når man som jeg har det ene ben i Thailand er det noget man ser ret ofte. Men det er heldigvis til at råde bod på. Personligt får jeg ikke meget ud af at konvertere volapyk’en til thai, men så kan min kære hustru da i det mindste læse det.
Først resultatet af mine anstrengelser. Prøv at kopiere den underlige tekst ovenfor ind i feltet til venstre her nedenfor, og forlad så feltet (f.eks. ved at trykke på tabulator-tasten eller klikke på feltet til højre). Dit operativsystem og din browser, samt de installerede skrifttyper, skal understøtte Unicode for at det lykkes.
Virkede det? Smart ikke?
Konverteringen foretages i javascript, og koden ser således ud:
function tis2unicode(tis) { var unicode = ""; for (i = 0; i < tis.length; i++) { var val = tis.charCodeAt(i); if (val < 0x80) { unicode += tis.charAt(i); } else if ((0xA1 <= val && val <= 0xDA) || (0xDF <= val && val <= 0xFB)) { unicode += String.fromCharCode(0x0E00 + val - 0xA0); } } return unicode; }
Du kan downloade koden her. Den er baseret på et perl script fra ZzzTh@i projektet. Et glimrende eksempel på forekomst af forkert fortolket TIS-620 tekst kan findes på siden om TIS-620 formatet. De fleste browsere i denne del af verden vil fortolke siden i ISO-8859-1 (fordi der ikke er specificeret en encoding på siden). I nogle browsere kan man manuelt vælge TIS-620 under “Encoding”, hvorefter siden fortolkes korrekt.
22. april 2009 kl. 09:25
hej. Jo, det er da vaeldig smart. Men hvordan kan jeg nu bruge det til at rette tekst i word dokumenter. Kan man ikke det?? Jeg kan ikke rigtig hitte rede i det. Venlig hilsen, John Steffensen
22. april 2009 kl. 12:10
Hej John
Med lidt snilde kunne en programmør uden tvivl udvikle en Word makro til formålet. Ellers er der ingen løsninger der direkte kan rette teksten i Word dokumentet. Du kan dog kopiere tekst fra dit Word dokument ind i det øverste af felterne her på siden, og så kopiere teksten fra det nederste felt tilbage til dit Word dokument. Lidt omstændeligt, men det vil virke. Hvis du vælger den løsning så husk at tage ét afsnit ad gangen, for al formattering og afsnitsinddeling vil forsvinde.