AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Tipps zu mehrsprachigen Programmen

Ein Thema von Ares · begonnen am 30. Nov 2005 · letzter Beitrag vom 1. Dez 2005
Antwort Antwort
Seite 1 von 2  1 2      
Ares

Registriert seit: 5. Dez 2002
269 Beiträge
 
#1

Tipps zu mehrsprachigen Programmen

  Alt 30. Nov 2005, 11:41
Hallo!

Ich beschäftige mich derzeit mit der Frage, wie ich meien Programme am besten Mehrsprachig gestellten kann. Hier gibt es ja schon eine Reihe von Diskussionen über die Verschiedenen Möglichkeiten (GNU Gettext, Multilizer, INI-Dateien, Ressource-DLLs, etc), ich hätte jedoch noch ein paar allgemeine Fragen.

Ich möchte meine Programme gerne so erstellen, dass die Sprache zur Laufzeit nicht geändert werden kann. Das Programm wird also mit einer Sprache compiliert, die dann nicht mehr geändert werden kann. Ideal wäre es, wenn das Programm anschließend nur aus der EXE bestehen würde, also keine weiteren Dateien benötigt werden aus denen sich die EXE die übersetzten Daten holt. Die Programme enthalten sowohl Texte (logisch...) als auch Bilder mit Texten, die übersetzt werden müssten.

Wie wäre so etwas am Besten zu lösen? Die Diskussionen die ich hier gefunden haben, beschäftigen sich nur mit der Übersetzung der Text. Wie bekomme ich unterschiedliche Bilder in das Programm?

Ich stelle mir das so vor: (ich habe von Ressource-Dateien wenig Ahnung, also bitte nicht lachen wenn das totaler Quatsch ist...)
Bilder und Text werden für jede Sprache in einer eigenen Ressource-Datei (SpracheX.res, SpracheY.res, ...) angelegt. Die Ressource Datei Sprache.res wird in das Delphi-Projekt eingebunden und kann dann darin verwendet werden.

Delphi-Quellcode:
{$R Sprache.res}
...
label1.Caption := sprache.string1;
label2.Caption := sprache.string2;
...
image.Picture := sprache.image1;
...
Je nach gewünschter Sprache wird die Datei SpracheXYZ.res in das Projektverzeichnis kopiert, in Sprache.res umbenannt und das Projekt compiliert. Ergebis: Das Programm in Sprache XYZ...

Ist etwas in der Richtung machbar (wie?) oder ist das Quatsch? Wie würdet ihr die Aufgabe sonst lösen?

Besten Dank
Ares
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.643 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Tipps zu mehrsprachigen Programmen

  Alt 30. Nov 2005, 12:06
Also für den Text würde ich GNU gettext nehmen. Wenn die Sprache fest eingestellt sein soll, dann kannst Du die jeweiligen übersetzten Daten (mo-Files) an die Exe anbinden. So hast Du nur eine Datei, die alles enthält.

Mit den Bildern hab ich auch keine Idee. Was sind denn das für Bilder? In der Regel sollte man bei mehrsprachigen Programmen ja sprachabhängige Bilder verzichten, sonst artet das schnell in Arbeit aus. Eindeutige Symbole, die von allen verstanden werden, sind da sinnvoller.
Sven Harazim
--
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#3

Re: Tipps zu mehrsprachigen Programmen

  Alt 30. Nov 2005, 13:19
Ich habe für Bilder (also Skizzen von Produkten mit Bemaßung und produktspezifischen Beschriftungen) ein kleines Tool geschrieben, das aus einem Bild (Nur eine Zeichung) zur Laufzeit die aktuellen Beschriftungen in der jeweiligen Landessprache und Einheiten (inch, mm etc.) zeichnet. Der Aufwand dafür ist relativ überschaubar.

Ich kenne GetText nicht. Ich habe mit der ITE von Delphi gearbeitet und mich fast deswegen umgebracht . Multilizer soll angeblich das Geilste sein, was es gibt. Kein Wunder, kostet auch ne Stange Geld. Nur wir konnten es nicht verwenden, da es ein Tool (8 MB, 100 BDE Tabellen, 100 Formulare) nicht übersetzen konnte.

Die anderen Produkte, die es so gibt, habe ich z.T. getestet (Visual Localize und ein Teil aus Tschechien), ging bei uns nicht richtig. Dann wollte Ich auf TsiLang umsteigen, was wohl ziemlich gut ist (hat ettliche Preise eingeheimst). während die o.g. Produkte auf der EXE aufbauen und Resourcen patchen, ist TsiLang sourcecode basiert.

Die ITE von Delphi (6.0 Enterprise benutze ich) hat den Vorteil, das man die Forms, Labels etc für jede Sprache individuell anpassen kann. Der riesige Nachteil ist der, das man jedesmal alles Neu übersetzen muss. Weiterhin muss man aufpassen, wie ein Luchs: Projektdateien einfach mal so verschieben quitiert die ITE mit absolut hirnrissigen Fehlermeldungen immerhin bekommt man alles wieder repariert, aber bis man einigermassen flüssig damit arbeiten kann, vergehen schon Monate.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
kalmi01
(Gast)

n/a Beiträge
 
#4

Re: Tipps zu mehrsprachigen Programmen

  Alt 30. Nov 2005, 13:58
Hi Ares,

mach es doch über Units, in denen die diversen Strings definiert sind.
Bzw. Bilder in res-Dateien.
Auswahl dann über Compiler-Optionen ($ifdef).

So bleibt das Prog auch schön klein, da ja nur die benötigten Texte/Bilder enthalten sind.
  Mit Zitat antworten Zitat
Ares

Registriert seit: 5. Dez 2002
269 Beiträge
 
#5

Re: Tipps zu mehrsprachigen Programmen

  Alt 30. Nov 2005, 19:14
Hallo!

Zitat von kalmi01:
mach es doch über Units, in denen die diversen Strings definiert sind.
Bzw. Bilder in res-Dateien.
Auswahl dann über Compiler-Optionen ($ifdef).
So bleibt das Prog auch schön klein, da ja nur die benötigten Texte/Bilder enthalten sind.
Daran habe ich auch schon gedacht. Die ganzen Texte könnte ich natürlich in einer eigenen Unit als Konstanten definieren. Das ist wahrscheinlich auch das unkomplizierteste... Aber wie genau läuft das mit den Bilder in den Res-Dateien? Kennt jemand ein gutes Tutorial, das erklärt wie man Res Dateien erzeugt und dann im Quelltext die Bilder anspricht?


Zitat von alzaimar:
Dann wollte Ich auf TsiLang umsteigen, was wohl ziemlich gut ist (hat ettliche Preise eingeheimst). während die o.g. Produkte auf der EXE aufbauen und Resourcen patchen, ist TsiLang sourcecode basiert.
Das Programm habe ich mir auch schon angesehen. Beim ausprobieren der Demo bin ich allerdings nur bis zu ein paar Fehlermeldungen gekommen. Hat jemand hiermit schon konkrete Erfahrungen gemacht?


Besten Dank
Ares
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.643 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Tipps zu mehrsprachigen Programmen

  Alt 1. Dez 2005, 09:11
Zitat von Ares:
Hallo!
Daran habe ich auch schon gedacht. Die ganzen Texte könnte ich natürlich in einer eigenen Unit als Konstanten definieren. Das ist wahrscheinlich auch das unkomplizierteste... Aber wie genau läuft das mit den Bilder in den Res-Dateien? Kennt jemand ein gutes Tutorial, das erklärt wie man Res Dateien erzeugt und dann im Quelltext die Bilder anspricht?
dann ist aber nix mit Chinesisch
Sven Harazim
--
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#7

Re: Tipps zu mehrsprachigen Programmen

  Alt 1. Dez 2005, 09:22
Zitat von Ares:
Das Programm habe ich mir auch schon angesehen. Beim ausprobieren der Demo bin ich allerdings nur bis zu ein paar Fehlermeldungen gekommen. Hat jemand hiermit schon konkrete Erfahrungen gemacht?
Und ob. Und ich war damals absolut davon begeistert. Der Vorteil ist, dass Du nicht irgendwelche Strings definieren musst, sondern Du ganz normal in Delphi arbeiten kannst. All deine Labels, Panels usw. mit Captions kannst Du direkt während der Designzeit in mehreren Sprachen angeben.

Bei liefen die Komponenten einwandfrei, Fehlermeldungen bekam ich bis jetzt noch keine. Ich habe die Kompos in Delphi 4 und Delphi 6 genutzt, allerdings bezahlt, und nicht als Shareware.
  Mit Zitat antworten Zitat
Ares

Registriert seit: 5. Dez 2002
269 Beiträge
 
#8

Re: Tipps zu mehrsprachigen Programmen

  Alt 1. Dez 2005, 11:20
Zitat von sh17:
dann ist aber nix mit Chinesisch
Muss auch gar nicht. Arabisch, Russisch, Hebräisch, Japanisch, Griechisch, etc. auch nicht. Für den Anfang würde mir Englisch und Französisch vollkommen reichen



Zitat von Jelly:
Bei liefen die Komponenten einwandfrei, Fehlermeldungen bekam ich bis jetzt noch keine. Ich habe die Kompos in Delphi 4 und Delphi 6 genutzt, allerdings bezahlt, und nicht als Shareware.
Ok, dann werde ich damit noch mal rumspielen. Wenn die Komponenten das tun, was sie sollen habe ich auch kein Problem damit dafür zu bezahlen. Nur fehlerfrei testen möchte ich sie vorher natürlich Lässt sich damit auch das Problem mit den Bildern lösen?

Hat sonst noch jemand einen Tipp, wo ich mich über den Umgang mit Res-Dateien schlau machen kann?

Besten Dank
Ares
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#9

Re: Tipps zu mehrsprachigen Programmen

  Alt 1. Dez 2005, 11:35
Zitat von Ares:
Lässt sich damit auch das Problem mit den Bildern lösen?
Du kannst zumindest sprachabhängige Strings in der Komponente hinterlegen. Abhängig vom Inhalt (z.B. Dateiname des Bildes) kannst Du ja das richtige anzeigen lassen.

Ich hatte damals die Komponenten benutzt, und da wurde unter anderem folgendes per Knopfdruck übersetzt:
  • Labels und alle andere Kompos (Buttons,Groupboxen etc) mit Eigenschaften wie Caption, Text, Hint etc.
  • Tipp des Tages
  • Verlinkte PDF Dateien
  • Description Felder aus Datenbank. Je nach Sprache ein anderes Feld
  • Komplette Chart Beschriftung
  • Ausdrucke, welche aber wieder nur eine unterschiedliche RTF Vorlage wählten
Wie gesagt, Probleme sind bei mir nicht aufgetreten.
  Mit Zitat antworten Zitat
Benutzerbild von Garby
Garby

Registriert seit: 17. Mär 2003
Ort: Tirol
199 Beiträge
 
Delphi 2005 Professional
 
#10

Re: Tipps zu mehrsprachigen Programmen

  Alt 1. Dez 2005, 11:47
Zitat von Ares:
Hat sonst noch jemand einen Tipp, wo ich mich über den Umgang mit Res-Dateien schlau machen kann?
Such mal hier im Forum nach TResourceStream oder LoadFromResourceName von TBitmap.

lg
Walter
Wenn zwei dasselbe tun, ist es noch lange nicht dasselbe
(Adelphi)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:50 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