Lokalisierung und Ändern von Sprachen in FastReport VCL

2024-11-20

In der heutigen Welt ist es von großer Bedeutung, dass Sie Ihre Software an Kunden in der ganzen Welt liefern können. Aus diesem Grund unterstützt FastReport VCL etwa 40 der am häufigsten gesprochenen Sprachen der Welt für die Lokalisierung von Benutzeroberflächen.

In FastReport VCL wurde ab Version 2023.2 die Lokalisierung erheblich verbessert – jetzt ist keine Neukompilierung mehr erforderlich, um Sprachen in FastReport zu ändern. Das Lokalisierungspaket ist in allen Lieferumfängen von FastReport VCL enthalten. Die Lokalisierung erfolgt on-the-fly durch die Auswahl der gewünschten Sprache im Berichtsdesigner im Menü „Ansicht - Sprache“. Darüber hinaus können Sie die Sprache der FastReport VCL- Benutzeroberfläche direkt vom Code aus steuern!

Auswählen der Sprache im Berichtsdesigner (nicht alle verfügbaren Sprachen sind aktiviert)

 


 

Prüfen und Installieren von Lokalisierungspaketen 

Für die korrekte Funktion der Lokalisierung müssen die Lokalisierungspakete (frxLanguageXXX) und das Lokalisierungs-Controller-Paket (frLocalization) in der IDE installiert sein. Unter Windows werden die Lokalisierungspakete automatisch für die Delphi und Lazarus IDEs installiert. Wenn das Lokalisierungsmenü nicht verfügbar ist, müssen Sie überprüfen, ob diese Pakete in der IDE installiert sind. In Delphi werden Sie das folgende Fenster sehen:

Installierte Lokalisierungspakete in Delphi

In Lazarus sieht das Lokalisierungsmenü wie folgt aus:

Installierte Lokalisierungspakete in Lazarus

Wenn einige der Übersetzungspakete nicht benötigt werden, können sie aus der Entwicklungsumgebung entfernt werden.

 


 

Umgang mit TfrLocalizationController und Spracheinstellungen

Wie oben erwähnt, werden die Sprachen im FastReport-Berichtsdesigner sehr einfach eingestellt. Gehen Sie dazu im Menü auf „Ansicht–Sprachen“ und wählen Sie die gewünschte Sprache aus. 

Um die FastReport-Lokalisierung mit der Software zu verbinden, müssen Sie die TfrLocalisationController Komponente verwenden. Es reicht aus, sie in das Hauptformular der Software einzufügen. Klicken Sie dann in Delphi mit der rechten Maustaste auf die Komponente und wählen Sie im Dropdown-Menü die Sprache aus, die von FastReport in Ihrer Software unterstützt werden soll:  

Lokalisierung zur Software hinzufügen

Danach muss für die TfrLocalizationController-Komponente die Sprache ausgewählt werden, die standardmäßig geladen wird, wenn die Software gestartet wird. Sie können zu uses des Hauptformulars auch ein Modul hinzufügen, das die erforderliche Lokalisierung enthält. 

Es sollte beachtet werden, dass FastReport VCL standardmäßig Englisch verwendet, so dass Sie nichts tun müssen, wenn Sie nur diese Sprache benötigen.

Um die Lokalisierung in Lazarus zu aktivieren, müssen Sie dem Projekt ein Sprachpaket und dann ein Modul für diese Sprache hinzufügen.

 


 

Ändern der Sprache vom Code aus 

In manchen Situationen kann es notwendig sein, die Lokalisierung der FastReport VCL vom Programmcode aus zu steuern. Dies wird wie folgt gemacht: 

frLocalizationController.Language := ‘German’;

Dieser Code stellt die deutsche Sprache ein. Vergessen Sie nicht, dass Ihre Software mit dem Sprachpaket kompiliert sein muss, zu dem Sie wechseln wollen. Mit dem unten stehenden Code können Sie herausfinden, mit welchen Sprachpaketen Ihre Software kompiliert ist. Verbinden Sie dazu das Modul Types, fügen Sie die Komponenten TButton und TMemo in das Formular ein und schreiben Sie in dem Button.OnClick Handler folgendes: 

procedure TForm1.Button1Click(Sender: TObject);
var D:TStringDynArray;
 I: Integer;
begin
  Memo1.Lines.Add('Default Lang: '+TfrAvailableLanguagesController.GetDefaultLanguageName);
  Memo1.Lines.Add('Current Lng: '+frLocalizationController1.Language);
  Memo1.Lines.Add('Suppotred languages:');
  D:=TfrAvailableLanguagesController.GetLanguages;
  for I:=Low(D) to High(D) do begin
    Memo1.Lines.Add(D[I]);
  End;
end; 

 

Die Software zeigt die verfügbaren Lokalisierungssprachen an

Bitte beachten Sie, dass Englisch nicht in der Liste der unterstützten Sprachen enthalten ist, aber standardmäßig immer verfügbar ist.

 


 

Bearbeitung der Lokalisierung über Localizer

Der Lokalisierungseditor kann wie folgt aufgerufen werden:

  • im Delphi IDE Menü “Tools… - Localization Editor…”
  • im Lazarus Menü “Service - Localization Editor…”

Localization Editor (Delphi)

Mit dem folgenden Code können Sie den Lokalisierungseditor aus Ihrer Software heraus aufrufen. Diese Methode ist jedoch nicht in allen Versionen verfügbar.

  frLocalizationController1.ShowLocalizationEditor;

Zuweisung von Steuerelementen im Lokalisierungseditor:

eine *.xml-Datei mit Übersetzung öffnen
die *.xml-Datei mit der Übersetzung speichern
die Übersetzungsdatei unter dem angegebenen Namen speichern
die letzte Aktion rückgängig machen
die abgebrochene Aktion durchführen
die Zielsprache einstellen
Einträge nach Masken filtern
den Filter reinigen
nur übersetzte Einträge anzeigen
nur unübersetzte Einträge anzeigen

Mit dem „Lokalisierungseditor“ können Sie FastReport VCL-Ressourcen Zeile für Zeile in verschiedene Sprachen übersetzen.

Lokalisierungseditor

In der Mitte des Editors befindet sich ein Raster mit übersetzbaren Werten. 

Die erste Spalte ist der Bezeichner des zu übersetzenden Elements. Es handelt sich immer um eine Zeichenkette, auch wenn Zahlen ebenfalls in separaten Zeichenketten stehen, da ihre Zeichenkettendarstellung verwendet wird. 

Die zweite Spalte enthält die englische Originalbedeutung des Elements. 

Die dritte Spalte enthält die übersetzte Bedeutung des Elements in der anderen Sprache.

Kommen wir nun zur Funktionsweise des Lokalisierungseditors. Beim Laden prüft der Editor, welche Lokalisierungen für die Software, in die er eingebettet ist, verfügbar sind. Dann füllt der Editor die Liste der verfügbaren Sprachen aus (Kombinationsfeld zur Eingabe der Zielsprache). Die aktuell installierte Lokalisierung ist für die Bearbeitung aktiv. Sie können eine Übersetzung für jede der verfügbaren Sprachen auswählen, bearbeiten und als eine XML-Datei speichern. Wenn Sie bereits über eine XML-Datei mit Übersetzungen verfügen, können Sie diese zur Bearbeitung herunterladen.

Im Lokalisierungseditor können Sie zwischen verschiedenen Anzeigemodi wechseln. Beispielsweise kann man nur die Elemente anzeigen, deren Übersetzung mit dem englischen Original übereinstimmt. Oder umgekehrt werden nur die Elemente angezeigt, deren Übersetzung von der englischen Version abweicht. Beachten Sie jedoch, dass nicht alle Elemente übersetzt werden müssen. 

Sie können einen Filter auf Einträge im Raster anwenden. Das Rasterelement wird nur angezeigt, wenn der Filterwert in einer beliebigen Spalte enthalten ist. Sie können das Raster auch in alphabetischer Reihenfolge vorwärts und rückwärts sortieren, indem Sie auf eine beliebige Spaltenüberschrift klicken.

Wenn Sie die Übersetzungsdatei geändert haben, können Sie diese anstelle der Standarddatei in die Software einbinden. Dazu müssen Sie das Modul frResources in der uses-Anweisung mit folgendem Code verbinden:

  frStringResources.LoadFromFile('mylanguage.xml');

Wir empfehlen, Ihre Software nach der Bearbeitung der Dateien neu zu starten, um sicherzustellen, dass alle übersetzten Ressourcen korrekt angezeigt werden. Beachten Sie auch, dass die geladene Übersetzung sofort aktiv wird, aber nur bis zum ersten Sprachwechsel funktioniert. Wenn Sie dann wieder zu dieser Sprache wechseln, wird die Lokalisierung aus den mit der Software verbundenen Ressourcen übernommen. 

Außerdem können Sie eine Ressource mit einer Übersetzungsdatei selbst kompilieren. Legen Sie diese in das Verzeichnis mit dem entsprechenden Sprachmodul und verwenden Sie sie in der Software. Damit diese Übersetzung in der IDE angezeigt wird, führen Sie das Installationsprogramm aus und wählen Sie den Modus Neu kompilieren (Recompile) oder kompilieren Sie einfach das Paket der benötigten Sprache neu. In Lazarus müssen Sie danach die IDE neu erstellen; in Delphi müssen Sie die Umgebung neu starten.

Wenn Sie sicherstellen möchten, dass Ihre Übersetzung nicht nach jedem Update verloren geht, können Sie die Lokalisierungsdatei uns an support@fast-report.com zukommen lassen. Wir prüfen die empfangene Datei und fügen sie dem Installationsprogramm hinzu.

26. November 2024

Installing FastReport on .NET 8.0 and Creating a Simple Report

The purpose of this article is to explain step by step how to install FastReport on .NET 8.0 and how to create a simple report. Taking the reporting process from the beginning, it will show how to connect, design and view reports.
1. November 2024

Neue Funktionen des FastReport VCL Berichtseditors

Wir betrachten die neuen Funktionen des Berichtseditors: Hilfslinien, Hervorhebung von sich schneidenden Objekten, aktualisierte Berichts- und Datenbäume.
30. Oktober 2024

Verwendung von Stilen beim Erstellen von Berichten in FastReport VCL

Dieser Artikel beschreibt eine der neuen Funktionen von FastReport VCL - die Verwendung von Stilen und Stilseiten.
Fast Reports
  • 800-985-8986 (Englisch, die USA)
  • +4930568373928 (Deutsch)
  • +55 19 98147-8148 (Portugiesisch)
  • info@fast-report.com
  • 66 Canal Center Plaza, Ste 505, Alexandria, VA 22314

© 1998-2024 Fast Reports Inc.