AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Problem mit griechischen Buchstaben

Ein Thema von Gelmo · begonnen am 29. Mär 2024 · letzter Beitrag vom 1. Apr 2024
Antwort Antwort
Gelmo

Registriert seit: 14. Sep 2006
Ort: Niederrhein
31 Beiträge
 
Delphi 10.3 Rio
 
#1

Problem mit griechischen Buchstaben

  Alt 29. Mär 2024, 11:55
Hallo zusammen!
In einem Memo und einigen Labels wollte ich griechische Buchstaben / Winkelbezeichnungen einfügen. Nach kurzer Recherche fand ich heraus, dass durch Eingabe von [Alt]+945 ein Alpha in UTF-8 geschrieben würde. Im Memo funktioniert das auch, aber wenn ich ins Caption eines Labels oder in einen String ein Alpha einfügen möchte, erhalte ich nur ein grafisches Zeichen, ähnlich einem Teppich: ▒. Ich meinte, dass UTF-8 der gängige Zeichensatz von Delphi ist.
Danke für eure Unterstützung
MfG Gelmo
  Mit Zitat antworten Zitat
Papaschlumpf73
Online

Registriert seit: 3. Mär 2014
Ort: Berlin
324 Beiträge
 
Delphi 12 Athens
 
#2

AW: Problem mit griechischen Buchstaben

  Alt 29. Mär 2024, 12:49
Zunächst ist UTF-8 kein Zeichensatz, sondern nur eine Methode Unicode-Zeichen zu kodieren. Dabei brauchen häufig verwendete Zeichen wie a, b, c jeweils nur 1 Byte und eher seltener benötigte Zeichen wie das Alpha mehrere Bytes. Im Gegensatz zu unserem Standard-UnicodeString in Delphi, der für jedes Zeichen 2 Byte benötigt.

Ob eine Anwendung bei Alt+945 das Zeichen erzeugt oder nicht, liegt immer beim Entwickler. Wenn du in Delphi das Zeichen in einem Label oder sonst wo benutzen willst, kannst du es entweder über die Zwischenablage reinkopieren oder mit chr(945) erzeugen.

Also z.B. so hier:
Label1.Caption:='abc '+chr(945)+' efg';
  Mit Zitat antworten Zitat
Gelmo

Registriert seit: 14. Sep 2006
Ort: Niederrhein
31 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Problem mit griechischen Buchstaben

  Alt 29. Mär 2024, 17:20
Vielen Dank für die Hilfe. Mit Chr(...) klappt es. Mich würde jedoch interessieren, in welchem Umfang das so klappt. Anders gesagt: Wie kann ich die unzähligen Codeseiten von Unicode 16 (!) ansprechen. Hängt das dann immer vom Zeichensatz (Arial, Rockwell, Times New Roman ...) ab?
MfG Gelmo
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.373 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Problem mit griechischen Buchstaben

  Alt 29. Mär 2024, 17:43
Der Zeichencode sagt, welches Zeichen du meinst, in diesem Fall im Zeichensatz Unicode UTF-16, den Delphi verwendet. Die Schriftart, die du als Zeichensatz bezeichnet hast, sagt, wie das Zeichen in dieser Schriftart aussieht.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.211 Beiträge
 
Delphi 12 Athens
 
#5

AW: Problem mit griechischen Buchstaben

  Alt 29. Mär 2024, 17:46
Da Delphi seit 2009 grundsätzlich UTF-16 für RTL/VCL/FMX benutzt und normal ANSI oder UTF-8 für Dateien, kann es somit auch praktisch alles darstellen, also alles, was im aktuellen Font eine Zeichen dafür enthält, oder in einem der Ersatz-Fonts.

[Win] C h a r m a p [Enter] und z.B. im Segoe UI nach 03B1 suchen (das Hexadezimale von 945)


Label1.Caption:='abc '#945' '#42531#$A623' efg';
oder
Label1.Caption:='abc α ꘣꘣ efg'; , wobei Delphi dich dann beim Speichern fragen wird, ob es die Unit dann als UTF-8 speichern soll, falls sie noch Ansi ist.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (29. Mär 2024 um 17:55 Uhr)
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.856 Beiträge
 
Delphi 12 Athens
 
#6

AW: Problem mit griechischen Buchstaben

  Alt 30. Mär 2024, 07:20
Ja, kann man machen aber Jaenicke hat recht: das dazustellende Zeichen muss auch in
der benutzten Schriftart enthalten sein. SOnst wird ein Platzhalter angezeigt.
  Mit Zitat antworten Zitat
Redeemer

Registriert seit: 19. Jan 2009
Ort: Kirchlinteln (LK Verden)
1.018 Beiträge
 
Delphi 2009 Professional
 
#7

AW: Problem mit griechischen Buchstaben

  Alt 30. Mär 2024, 20:54
Wichtig ist, aus welcher Delphi-Version das Programm ist. Wenn aus Delphi vor 2009, dann gilt der in der Systemsteuerung eingestellte Zeichensatz, normalerweise 1252. TRichEdit ist immer Unicode-fähig, falls du das mit Memo meinst.
Mit Alt-Codes ohne führende 0 kannst du diverse Zeichen aus 850 eingeben, die in 1252 nicht enthalten sind. Griechische Buchstaben sind nicht in 850 darunter. In der älteren 437 unter DOS waren einige enthalten: álfa, víta (im Zusammenhang mit 437 meist Eszett genannt), Gháma, pi, Sígma, sígma, my (offiziell als Mikro-Zeichen bezeichnet), taf, Fi, Thíta, Omégha, dhélta, fi und épsilon.

Ja, kann man machen aber Jaenicke hat recht: das dazustellende Zeichen muss auch in
der benutzten Schriftart enthalten sein. SOnst wird ein Platzhalter angezeigt.
Blödsinn! Schon seit Windows Vista muss die benutzte Schriftart das Zeichen nicht enthalten.
Janni
2005 PE, 2009 PA, XE2 PA

Geändert von Redeemer (30. Mär 2024 um 20:59 Uhr)
  Mit Zitat antworten Zitat
TurboMagic

Registriert seit: 28. Feb 2016
Ort: Nordost Baden-Württemberg
2.856 Beiträge
 
Delphi 12 Athens
 
#8

AW: Problem mit griechischen Buchstaben

  Alt 1. Apr 2024, 10:50
Hallo,

danke für die Interessante Info, dass das Zeichen nicht in der Schriftart sein muss.
Das bedeutet dann aber, dass Windows für solche Zeichen irgendwie eine andere Schriftart
benutzen muss, denn das Aussehen kann ja auch Windows nicht erraten.

Die frage wäre dann, welche Schriftart dafür benutzt wird bzw. nach welchem Algorithmus
diese ausgewählt wird.

Grüße
TurboMagic
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.211 Beiträge
 
Delphi 12 Athens
 
#9

AW: Problem mit griechischen Buchstaben

  Alt 1. Apr 2024, 16:56
In Windows sind Ersatzschriftarten registriert ... ich vergesse nur immer wo und wie sich das eigentlich nennt, damit ich da nicht suchen und verlinken kann.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#10

AW: Problem mit griechischen Buchstaben

  Alt 1. Apr 2024, 23:42
Das nennt sich Font Substitution.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 08:44 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