Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Wie erhalte ich in Delphi die Zeichen von Schachfiguren? (https://www.delphipraxis.net/213852-wie-erhalte-ich-delphi-die-zeichen-von-schachfiguren.html)

Gelmo 7. Okt 2023 19:11

Wie erhalte ich in Delphi die Zeichen von Schachfiguren?
 
Hallo zusammen

Ich habe herausgefunden, dass man in Word [365] durch Eingabe von [Alt]+9812 als Zeichen einen weißen [Schach-]König erhält und die weiteren Schachfiguren mit den folgenden Zahlen. Wenn ich aber in Delphi eine Konstante anlegen will, erscheint mit 9812 ein T.
Delphi-Quellcode:
Const
  WKoenig = 'T';
Die Kombination [Alt]+Ziffern liefert ja wohl Unicode-Zeichen, aber Delphi verarbeitet doch längst diesen Zeichensatz.
Weiß hier vielleicht jemand eine Möglichkeit, die gesuchten Zeichen zu bekommen?
Vielen Dank
MfG Gelmo

himitsu 7. Okt 2023 19:20

AW: Wie erhalte ich in Delphi die Zeichen von Schachfiguren?
 
https://www.unicode.org/charts/PDF/U1FA00.pdf
https://www.compart.com/de/unicode/block/U+2600

Copy&Paste, denn Delphi kann seit vielen Jahren auch im Quellcode mit Unicode umgehen.
(vorausggesetzt die Unit wird als UTF-8 gespeichert)

Delphi-Quellcode:
SKönig = #9818;
SKönig = #$265A;

Allesmögliche = '♔♕♖♗♘♙♚♛♜♝♞♟︎';



Oder einen speziellen Schach-Font installieren, welcher statt "Buchstaben" was Anderes hat.

[Win] Zeichentabelle [Enter]
oder
[Win] charmap [Enter]
und dann siehe Marlett, Webdings, Wingdings usw.

PS: Marlett ist jener Font, welcher früher verwendet wurde, um die Tasten oben rechts in der Form darzustellen, sowie den Dropdown-Button der ComboBox usw. :lol:

Gelmo 7. Okt 2023 19:45

AW: Wie erhalte ich in Delphi die Zeichen von Schachfiguren?
 
Vielen Dank!
Die im Delphi-Code angegebene Methode funktioniert bestens.
Gelmo

Redeemer 8. Okt 2023 21:32

AW: Wie erhalte ich in Delphi die Zeichen von Schachfiguren?
 
Alt-Codes größer als 255 müssen speziell unterstützt werden und das tut standardmäßig nur Rich Edit (egal wo, ob jetzt in Word, in deinem Delphi-Programm oder das obere Eingabefeld in der Zeichentabelle).

himitsu 9. Okt 2023 02:09

AW: Wie erhalte ich in Delphi die Zeichen von Schachfiguren?
 
Es tun seit 2009 nahezu alle Komponenten, ABER

* der verwendete Font muß das Zeichen eigentlich enthalten, sonst nutzt er sein Ersatzzeichen (meistens ein kleines Quadrat)
* aber in Windows sind für Viele Unicode-Bereiche Ersatzfonts registriert, vor allem für die oberen Unicode-Zeichen, welche in vielen Fonts fehlen (was aber von vielen Komponenten und TextZeichenbefehlen genutzt wird)
* und natürlich kommt es drauf an, wie aktuell und vollständig der Font, bzw. die ErsatzFonts sind (in älteren Betriebssystemen fehlen dann z.B. "neuere" Unicode-Zeichen)

Gelmo 9. Okt 2023 16:20

AW: Wie erhalte ich in Delphi die Zeichen von Schachfiguren?
 
Meine Euphorie hat auch einen Klaps bekommen. Mir Arial wurden elf der zwölf unterschiedlichen Schachfiguren so wie üblich dargestellt, nur die letzte, der schwarze Bauer ähnelt eher einer Mensch-ärgere-dich-nicht-Puppe. Ich teste das mit
Delphi-Quellcode:
  TestEdit.Font.Name:='Arial'; // oder andere Schriftarten
  TestEdit.Text:='[SIZE="24"][SIZE="26"]♔♕♖♗♘♙♚♛♜♝♞♟[/SIZE]'; // Hier stimmt das Zeichen, aber welche Schriftart ist das?
Gibt es also Schriftarten mit korrekter Darstellung aller Figuren? ?
Bedeutet das, dass alle Schriftarten, die Unicode entsprechen, sämtliche Zeichen liefern müssen ?

himitsu 9. Okt 2023 17:13

AW: Wie erhalte ich in Delphi die Zeichen von Schachfiguren?
 
Das beste Beispiel sind die Smilies.
Die Standard-Fonts vieler Betriebssysteme, Programme (ala MS/Libre Office) und Browser haben ihre eigen Darstellung, die sich stark unterscheiden können.
https://de.wikipedia.org/wiki/Emoji (siehe oben rechts)
https://unicode.org/emoji/charts/full-emoji-list.html

Viele Fonts enthalten unterschiedliche Teile (oder nicht)
https://en.wikipedia.org/wiki/Unicod..._Unicode_fonts

das Wie, siehe
https://learn.microsoft.com/en-us/gl...y#font-linking
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontLink\SystemLink

https://stackoverflow.com/questions/...e-current-font
https://answers.microsoft.com/en-us/...4-e7e06e389c99

Vielleicht mal bei MSDN-Library durchsuchenGetCharacterPlacement und seinen Freunden nachsehn?




Und wie ebenfalls schon erwähnt
https://www.fonts4free.net/chess-font.html
https://www.dafont.com/de/chess.font

Redeemer 11. Okt 2023 17:51

AW: Wie erhalte ich in Delphi die Zeichen von Schachfiguren?
 
Zitat:

Zitat von himitsu (Beitrag 1527848)
Es tun seit 2009 nahezu alle Komponenten, ABER

* der verwendete Font muß das Zeichen eigentlich enthalten, sonst nutzt er sein Ersatzzeichen (meistens ein kleines Quadrat)
* aber in Windows sind für Viele Unicode-Bereiche Ersatzfonts registriert, vor allem für die oberen Unicode-Zeichen, welche in vielen Fonts fehlen (was aber von vielen Komponenten und TextZeichenbefehlen genutzt wird)
* und natürlich kommt es drauf an, wie aktuell und vollständig der Font, bzw. die ErsatzFonts sind (in älteren Betriebssystemen fehlen dann z.B. "neuere" Unicode-Zeichen)

„Unterstützung für Alt-Codes > 255“ und „Unterstützung für Unicode“ bezeichnen nicht dasselbe! Sie sind sogar fast das Gegenteil:
  • Es gibt zig Alt-Codes <= 255, die man nur in Unicode-fähigen Programmen in allen Eingabefeldern außer Rich Edits eingeben kann. Diese sind:
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 127
    • 176
    • 177
    • 178
    • 179
    • 180
    • 185
    • 186
    • 187
    • 188
    • 191
    • 192
    • 193
    • 194
    • 195
    • 196
    • 197
    • 200
    • 201
    • 202
    • 203
    • 204
    • 205
    • 206
    • 213
    • 217
    • 218
    • 219
    • 220
    • 223
    • 242
    • 254
  • Alt-Codes > 255 kannst du praktisch nur in Rich-Edit-Felder eingeben. Und zwar auch in Programmen, die gar nicht Unicode-fähig sind. Kompilier doch mal die RichEdit-Demo in Delphi 2. Da kannst du in keines der Eingabefelder die Alt-Codes aus der obigen Liste eingeben, aber Alt-Codes über 255 gehen im RichEdit. (Wenn du das Ding mit Delphi 2009+ kompilierst, kannst du die Codes aus der obigen Liste immerhin in das Feld mit dem Schriftartennamen eingeben.)

Gelmo 20. Okt 2023 11:34

AW: Wie erhalte ich in Delphi die Zeichen von Schachfiguren?
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo zusammen
Habe lange weiter gesucht, aber mit verschiedenen Schriftarten scheint der schwarze Bauer immer anders und deutlich größer auszusehen als der weiße.
Mein Schachbrett sieht dann so aus (siehe Anhang).
Vielleicht ist es attraktiver, statt mit Labels und Charakters mit Images und Pictures von Schachfiguren auf hellen und dunklen Feldern weiter zu machen. Das ist aber wesentlich umständlicher.
Nochmals vielen Dank
MfG Gelmo

haentschman 20. Okt 2023 11:41

AW: Wie erhalte ich in Delphi die Zeichen von Schachfiguren?
 
Hallöle...8-)
Wie wäre es mit Images statt Fonts? :zwinker: Finde ich besser...
https://www.google.de/search?q=schac...7hmjTM&vssid=l


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:39 Uhr.
Seite 1 von 2  1 2      

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