Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Deutsche Zeichen in Kyrillisch/Russisch umwandeln (https://www.delphipraxis.net/110411-deutsche-zeichen-kyrillisch-russisch-umwandeln.html)

F.W. 17. Mär 2008 20:54


Deutsche Zeichen in Kyrillisch/Russisch umwandeln
 
Ich möchte mir für meine Russisch Hausaufgaben ein kleines Programm schreiben, welches mir hilft auf Russisch zu schreiben.

Allerdings auf eine sehr fantasievolle Art und Weise:
Ich habe mir das so gedacht, dass ich die russischen Zeichen die vom Laut her mit den deutschen Zeichen übereinstimmen auch wirklich dann ausgeben lasse, wenn man die deutschen Äquivalente dazu tippt. Und für Zeichen wie bspw. "scha" ш und "sche" ж muss man dann halt auch scha und sche eingeben, soll ja nur eine Notlösung sein, denn ich will mich nicht erst mit dem russischen Tastaturlayout auseinander setzen.
Dabei habe ich mir das so vorgestellt, dass ich entweder einen lautensprachengeschriebenen Text dann umkonvertiere oder direkt bei der Eingabe, das muss ich noch sehen. Und die Konvertierungsregeln (also "sche" zu einem russischen Zeichen >sche< ж oder sowas) schreib ich mir in ein Array oder in eine Datei oder irgendwie so...

Das Problem: Ich hab absolut keine Ahnung von Unicode oder sonstigen. Ich brauch die kyrillischen Schriftzeichen auch nur in einem Memo o.ä. (habe die JEDIs drauf, sollte das was leichter machen).

Mein erster Ansatz wäre die Tabelle, wo drin steht welches Lautzeichen in welches russische Zeichen umgewandelt wird. Aber wie erstelle ich die? Ich weiß ja nicht mal wie ich die so erstellen kann, mit welchem Programm. In Word kann ich mit russisch arbeiten, aber bswp. in einem Editor oder so, damit ichs dann mit Delphi laden könnte oder so weiß ich nicht.

Kann mir jemand einen Ansatz geben?

sakura 17. Mär 2008 20:58

Re: Deutsche Zeichen in Kyrillisch/Russisch umwandeln
 
Lade Dir die TNT UniCode Controls, die können diese Zeichen ohne Probleme darstellen. Dass die JEDI das können, das wäre mir neu (muss aber nicht viel heißen).

Außerdem musst Du anstatt string/AnsiString mit WideString in Deinen Methoden/Arrays arbeiten. String/AnsiString können mit UniCode nicht umgehen. Anschließend sollte es recht einfach sein.

Link: http://www.yunqa.de/delphi/doku.php/...controls/index

...:cat:...

F.W. 17. Mär 2008 21:42

Re: Deutsche Zeichen in Kyrillisch/Russisch umwandeln
 
Ok, das hat funktioniert.

Hatte zwar von den TNTControls schon gehört, aber dachte ein TJvWideEditor (darum Erwähnung der JEDIS) würde da auch reichen, aber so ist gut, da kann ich die Schrift gleich noch in anderen Controls benutzen. Sollte ich nochmal eine Frage haben, würde ich nochmal herkommen ;-)

Danke erstmal!

sakura 17. Mär 2008 21:59

Re: Deutsche Zeichen in Kyrillisch/Russisch umwandeln
 
Zitat:

Zitat von F.W.
TJvWideEditor

Stimmt, den gibt es ja auch noch. Hätte auch gehen sollen, aber nun gut, es luppt jetzt ja :) Ich glaube dem muss man aber noch sagen, wie die Komponente die Daten interpretieren soll :gruebel:

...:cat:...

F.W. 17. Mär 2008 23:36

Re: Deutsche Zeichen in Kyrillisch/Russisch umwandeln
 
Also soweit steht alles :-) *freu*

Mein Konzept ist jetzt, dass das Programm während der Eingabe die Zeichen umwandelt, immer wenn der Benutzer ein Stück geschrieben hat.
Dafür will ich mit "Copy" das letzte Stück Text erstmal in einen seperaten String kopieren, dann lass ich ihn in einem TNTStringGrid suchen (was auch schon klappt) und will ihn wieder dahin schreiben.

Wie muss ich denn jetzt bei der Manipulation von einzelnen Zeichen vorgehen? (mit String[3] oder so geht es ja sicher nicht mehr oder?). Und kann ich die evtl. auch gleich in der Memo ändern so wegen Pointern und so oder muss ich den gesamten Memotext aus der Memo in einen String kopieren, dort bearbeiten und wieder zurück kopieren?


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:15 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz