Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 18

TIS-620 oder thai-zeichen

Erstellt von altf4, 28.07.2004, 22:53 Uhr · 17 Antworten · 1.698 Aufrufe

  1. #1
    Avatar von altf4

    Registriert seit
    16.07.2004
    Beiträge
    365

    TIS-620 oder thai-zeichen

    hat wer ahnung wie man dem php-interpreter unicode beibringt ??
    das der range 0E00 - 0E7f (thailetters) richtig interpretiert werden kann ??

    maybe kennt da wer referenzen (die ned bei google indiziert sind)

    java willich mir dafür nicht so wirklich antuen ..

  2.  
    Anzeige
  3. #2
    Avatar von thpitsch

    Registriert seit
    01.07.2003
    Beiträge
    45

    Re: TIS-620 oder thai-zeichen

    Du wirst kaum einem Interpreter Unicode beibringen wollen?
    Ich nehme daher an, dass du mit einem php-skript Ausgaben erzeugen willst, die Unicode enthalten.
    Ich bin zu Zeit daran, mein Wörterbuch auf Unicode umzustellen und arbeite dabei mit Perl-Skripten. Aber die Aufgabe ist im Prinzip die gleiche. Da ich alle meine Texte im 8-Bit-Code gespeichert habe, erzeuge ich dadurch Unicode, dass ich den festen Wert 3424 dezimal oder hex 0D60 addiere. Aus go gai (Code 161 dez) wird dann 3585 dez oder eben 0E01 hex - das ist der Unicode. Zum Einfügen in html-Seiten setze ich &# vor den Dezimalcode und ein Semikolon dahinter: ก Der Code wird dann vom Browser als Unicode interpretiert.
    Und nicht vergessen: im Header muss das Metatag
    <meta http-equiv="Content-Type" content="text/html; charset=$charset">
    angegeben sein. Und die verwendete Schrift muss eine Unicode-Schrift sein (der Internet-Explorer holt sich bei falscher Schriftangabe dennoch in den meisten Fällen die richtigen Zeichen, aber mit anderen Browsern sind bei falscher Schriftdefinition Probleme vorprogrammiert).

    Ich hoffe, das hilft ein wenig...

  4. #3
    Avatar von altf4

    Registriert seit
    16.07.2004
    Beiträge
    365

    Re: TIS-620 oder thai-zeichen

    charsetanpassung undso ist ja einfach ....
    (ich gehöre nich zu der sorte die sowas den user machen lassen hehe)

    das komplizierte ist wenn eingaben in "thaischrift" verarbeitet werden sollen .... da der php interpreter nur latin1 und baselatin versteht ...

    denke am besten wäre ein externes programm das die eingaben in unicode umsetzt oder in ein anderes lesbare format ...

    hab leider noch nichts / niemand gefunden der sich damit wirklich auskennt ... oder weiss wie man das am bestern realisieren könnte

    java kann als beispiel unicode ... aber ich kein java -g-

  5. #4
    Avatar von thpitsch

    Registriert seit
    01.07.2003
    Beiträge
    45

    Re: TIS-620 oder thai-zeichen

    Hi,

    leider weiß ich immer noch nicht genau, was du vorhast. Wenn du in deinem Skript lokal Eingaben machen möchtest, muss ich passen. Aber wenn das Skript auf einem Server läuft und die Eingaben in einer HTML-Seite gemacht werden, dann läuft es genau umgekehrt: Je nachdem, wie das Eingabefeld formatiert ist, erhälst du bei der Übertragung entweder TIS-Code oder Unicode. Der TIS-Code lässt sich - wie vorher beschrieben - in Unicode umsetzen, Unicode natürlich auch in TIS, falls dir das für die Weiterverarbeitung lieber ist.

    Ich habe für dich eben ein Test-Eingabefeld online gestellt, da kannst du mal sehen, was übertragen wird:

    http://www.clickthai.de/_LEXIKON/onlinetest.html

    Gebe einmal Thai-Zeichen ein, über Tastatur oder aus Webseiten in die Zwischenablage kopiert. Dann klicke auf "Suche" und du bekommst angezeigt, wie die Zeichen (als Key2) auf dem Server ankommen.

    Beispiel:
    นางหมั่น wird zu ¹Ò§ËÁÑè¹ - das ist TIS Code, den du für deine Zwecke verwenden kannst, mit oder ohne Umkodierung.

    Eine zweite Testseite ist mit charset=UTF-8 eingestellt:

    http://www.clickthai.de/_LEXIKON/onlinetest2.html

    Wenn du dort das gleiche Wort eingibst, erhälst du eine Unicode-Übertragung. Kleines Problem: weil aber die Unicodes als &#xxxx; übertragen werden und das & gleichzeitig Trennzeichen für Schlüsselpaare ist, werden die Zeichen als Schlüssel ohne Werte behandelt und als #xxxx; dargestellt. Kein Problem, wenn mans weiß: dann stellt eben #xxxx; ein Unicode-Zeichen dar, und wenn mans braucht, ist das & schnell wieder zugefügt.

    So etwas deutlicher geworden? Wenn nicht, dann beschreibe bitte etwas genauer, was du brauchst. Denn, wie schon gesagt, dem Interpreter ist nicht Unicode beizubringen, sondern deinem Programm. Zumindest, wenn es über einen Webserver läuft.

  6. #5
    Avatar von altf4

    Registriert seit
    16.07.2004
    Beiträge
    365

    Re: TIS-620 oder thai-zeichen

    funktionieren perfekt deine beispiele.

    im moment verarbeite ich die thai-eingaben wie in deinem ersten beispiel.

    also reine verarbeitung des TIS codes.
    das problem ist das der php-interpreter (der auch gleichzeitig die engine für das "programm" ist damit nicht 100% umgehen kann
    da nicht alle zeichen im coderange 0E00 - 0E7E
    ein latin-zeichen besitzen,
    es kann also passieren das nicht alle thai-zeichen
    verarbeitet werden können ...

    das problem ist das der php interpreter nicht weiss aus welchem coderange die zeichen sind da er (wie in deinem beispiel andere zeichen als grundlage hat)

    (า wird zu Ò)
    die unicode übersetzung von "า" ist eine andre als die von "Ò"

    die "weitergebe" der eingaben muss also in unicode erfolgen.

    wenn also der php-interpreter die zeichen
    weitergibt gibt es probleme ...

    ums auf den punkt zu bringen.
    das GSM 3.22 protokoll unterstützt NUR "Latin1" oder "unicode"
    wenn ich also thai-zeichen per sms verschicken will
    muss ich diese in unicode übermitteln ...
    die handys die thai-zeichen können machen das auch so ...

    es gilt also einen weg zu finden der die eingegeben
    thai-zeichen (TIS-620) in unicode umsetzt ...
    sozusagen als "filter" ...

  7. #6
    Avatar von altf4

    Registriert seit
    16.07.2004
    Beiträge
    365

    Re: TIS-620 oder thai-zeichen

    Zitat Zitat von thpitsch",p="157487
    Hi,
    Kleines Problem: weil aber die Unicodes als &#xxxx; übertragen werden und das & gleichzeitig Trennzeichen für Schlüsselpaare ist,
    nicht wirklich ein problem .. da ich eh NUR den tatsächlichen
    zeichen code benoetige. (also die 4x)

    &# wird ja nur zur darstellung benoetigt ...
    falls noetig einmal strreplace .. und fertig .. hehe

    mussich mir also peal antuen ?
    .oO( OMG .. jahre werden vergehen hehe)

  8. #7
    Avatar von altf4

    Registriert seit
    16.07.2004
    Beiträge
    365

    Re: TIS-620 oder thai-zeichen

    was mir grade bei deinem zweiten beispiel auffällt

    wenn man thaizeichen eingibt
    bekommt man ergebnisse im coderange "34??" zurück

    das ist auch im latin1 coderange ...

    also selbes problem wie wenn php die übersetzung macht ..

  9. #8
    Avatar von Visitor

    Registriert seit
    15.11.2000
    Beiträge
    1.093

    Re: TIS-620 oder thai-zeichen

    Guten Morgen altf4,

    Vielleicht hilft dir das hier weiter.
    Nutze für das Browserfenster/die Formularseite einen Latin Schriftsatz wie z.B:
    Code:
    META http-equiv=Content-Type content=	ext/html; charset=ISO-8859-1
    oder

    Code:
    META http-equiv=Content-Type content=	ext/html; charset=windows-1252
    Beim Absenden sollte der Browser die Formulareingabe dann automatisch urlencoden.
    Der String sollte dann in etwa so ausschauen:
    Code:
    %E4%C1%E8%C1%D5%A2%E9%CD%A4%C7%D2%C1%E3%CB%C1%E8
    Somit sind alle Sonderzeichen URLkodiert.

    Den an den PHP-Interpreter übergebenen Wurm lässt Du dann durch folgende Funktion laufen.

    Code:
    function Ascii_encode( $string )
    {
    	$trans_tbl = get_html_translation_table( HTML_ENTITIES );
    	$trans_tbl = array_flip( $trans_tbl );
    	$string = strtr( $string, $trans_tbl );
    
    	for ( $i = 0; $i  strlen($string); $i++ )
    	{
    		$encoded .= ´&#´ . ord( substr($string, $i) ) . ´;´;
    	}
    
    	return $encoded;
    }
    HTH

    Gruß,
    Der Visitor

  10. #9
    Avatar von thpitsch

    Registriert seit
    01.07.2003
    Beiträge
    45

    Re: TIS-620 oder thai-zeichen

    Hi,

    jetzt kommen wir der Sache ja näher.

    Wenn du im HTML-Formular า eingibst, wird daraus u. U. nicht nur ein "Ò", sondern ein Ò Das gilt für einige andere Zeichen ebenfalls, es existieren Tabellen darüber, die man zur Umcodierung heranziehen kann. Das aber nur nebenbei...

    Das eigentliche Missverständnis:

    >> า wird zu Ò)
    >>d1e unicode übersetzung von "า" ist eine andre als die von "Ò"

    Glücklicherweise hat "Ò" einen anderen Unicode als sara a. Du willst ja auch nicht wirklich "Ò" anzeigen. Das Ersatzzeichen wird ja nur angezeigt, weil ein nicht Unicode-fähiges Programm bei einem 8-Bit-Code dieses automatisch aus der ASCII-Tabelle nimmt, die der Unicode-Page 0 entspricht. Wir beide wissen aber, dass es eigentlich ein Thai-Zeichen sein soll, und transformieren es in die Unicode-Page E0.
    Zusammengefasst: Falls die html-Codierung Ò auftreten sollte, muss das Zeichen zunächst nach Tabelle in ein "Ò" übersetzt werden, am besten gleich in den entsprechenden Hex- oder Dezimalwert, in diesem Fall Hex "D2". Daraus wird durch Addition des festen Faktors der eigentliche Unicode des gewünschten Zeichens. Die Addition macht also die Page-Transformierung zu Unicode.

    Was ich jetzt nicht weiß, ist, wie die Unicode-Zeichen im GSM-System dargestellt werden. Möglicherweise können die wiederum nichts mit &#xxxx; anfangen. Die Konvertierung in das GSM-Format ist aber ganz bestimmt ebenfalls machbar.

  11. #10
    Avatar von thpitsch

    Registriert seit
    01.07.2003
    Beiträge
    45

    Re: TIS-620 oder thai-zeichen

    > Visitor,

    du hast natürlich recht, die Anzeige in meinen beiden Beispielseiten ist bereits durch Perl verarbeitet. Die eigentliche Übertragung ist so, wie du sie darstellst.

    Aber auch darin wird für das Zeichen im Beispiel Ò übertragen und muss übersetzt werden (das macht aber wahrscheinlich die php-Routine, die du angibst).

    Ansonsten wird es einfacher, wenn der charset=utf-8 im html-Formular verwendet wird. Dann wird in jedem Fall bereits Unicode-codiert übertragen.

Seite 1 von 2 12 LetzteLetzte

Ähnliche Themen

  1. Dein Vorname in Thai Schrift-Zeichen
    Von mdoklein im Forum Ehe & Familie
    Antworten: 7
    Letzter Beitrag: 19.04.11, 07:59
  2. Thai-Zeichen zum Aufkleben auf die Tastatur
    Von Jadefalke im Forum Talat-Thai
    Antworten: 17
    Letzter Beitrag: 14.01.10, 21:10
  3. das @ zeichen auf thai
    Von somchei im Forum Treffpunkt
    Antworten: 6
    Letzter Beitrag: 04.08.09, 08:37
  4. KfZ-Zeichen: Aachen in Würselen?
    Von MaewNam im Forum Forum-Board
    Antworten: 0
    Letzter Beitrag: 30.09.04, 14:50
  5. Buddhistische Zeichen
    Von HaveFun im Forum Treffpunkt
    Antworten: 7
    Letzter Beitrag: 02.09.04, 05:29