Delphi-PRAXiS
Seite 5 von 10   « Erste     345 67     Letzte »    

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 Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi (https://www.delphipraxis.net/196768-anzeige-farbiger-emoji-unicode-zeichen-mit-segoe-ui-emoji-schrift-delphi.html)

Ghostwalker 19. Jun 2018 05:37

AW: Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi
 
Erklörbör:

Uwe's code basiert auf Direct2d. Dies unterstütz ColorFonts ab Windows 10 Anniversary Update (hier nach zu lesen: MSDN


Außerdem brauchst du den Font Segoe UI Emoji. Dieser wird aber erst ab 8.1 mitgeliefert.

Ergo: Win 7 is nich :)

Der schöne Günther 19. Jun 2018 06:28

AW: Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi
 
Oh, einfach nur so, und dann noch so.

Von wem hätte die Lösung sonst kommen sollen 👍

Sherlock 19. Jun 2018 06:54

AW: Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi
 
Delphi-Quellcode:
Form299
Ich liebe es, wenn die Meister mit ähnlichem Wasser kochen wie ich. :mrgreen:

Sherlock

TiGü 19. Jun 2018 08:37

AW: Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi
 
Das es am Ende einfach nur das Flag
Code:
D2D1_DRAW_TEXT_OPTIONS_ENABLE_COLOR_FONT = 0x00000004
ist. :shock:

Das erklärt auch das unterschiedliche Verhalten von Microsoft-Anwendungen.
Endweder nutzen sie noch alte GDI/GDI+-Schnittstellen oder verwenden nicht D2D1_DRAW_TEXT_OPTIONS_ENABLE_COLOR_FONT in den IRenderTarget.DrawText...-Methoden.
Neuere Anwendungen wie Edge und Word unterstützen dann natürlich die neueren Möglichkeiten der Schnittstelle.

HolgerX 19. Jun 2018 08:42

AW: Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi
 
Hmm..

Ich glaube für die Emoji Fonts gibt es für W7 ein MS-Update:

https://support.microsoft.com/de-de/...in-windows-ser

Habs nicht ausprobiert..

Uwe Raabe 19. Jun 2018 08:51

AW: Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi
 
Man muss den Font offenbar gar nicht explizit auswählen. Hier der Vollständigkeit halber noch die DFM-Datei des Forms. Ich habe lediglich die Form.Color auf weiß gesetzt. Vermutlich kann man aber wohl auch einfach den D2DCanvas.Brush.Style auf bsClear setzen.
Delphi-Quellcode:
object Form299: TForm299
  Left = 0
  Top = 0
  Caption = 'Form299'
  ClientHeight = 299
  ClientWidth = 635
  Color = clWindow
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  OnPaint = FormPaint
  PixelsPerInch = 96
  TextHeight = 13
end

TiGü 19. Jun 2018 09:04

AW: Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi
 
Ich verstehe das so:
Die Schrift ist egal, es kommt darauf an, ob die zu zeichnende API Color Fonts unterstützt.
Ghostwalker hat weiter oben ja schon den passenden MSDN-Eintrag dazu verlinkt.

Uwe Raabe 19. Jun 2018 09:13

AW: Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi
 
Zitat:

Zitat von TiGü (Beitrag 1405191)
Die Schrift ist egal, es kommt darauf an, ob die zu zeichnende API Color Fonts unterstützt.

Das ist richtig! Auch mit den Emoji Fonts funktioniert es auf Windows 7 nicht.

Leider wird auch kein Fallback ausgeführt, so daß der Parameter 4 in diesem Fall zu einer falschen Ausgabe (eben gar keiner) führt.

KodeZwerg 19. Jun 2018 09:28

AW: Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi
 
Danke für diese Erklärungen was Windows 7 inkompatibilität angeht. Das Color-Fonts nicht arbeiten das war mir ja schon irgendwie bewusst, das nun gar nichts hinten rauskommt mit Windows 7, also auch wenn ich nur Text eingebe, das war mir unbegreiflich.

himitsu 19. Jun 2018 09:29

AW: Anzeige farbiger Emoji (unicode Zeichen) mit Segoe UI Emoji Schrift in Delphi
 
Zitat:

Zitat von Redeemer (Beitrag 1405133)
Ein einfarbiger Font? Bitte beim Thema bleiben.

ein farbiger Font, mit Leerzeichen :zwinker:


Zitat:

Zitat von Uwe Raabe (Beitrag 1405188)
Man muss den Font offenbar gar nicht explizit auswählen.

Stimmt, denn Windows hat ersmal eine Ersatztabelle (in Registry irgendwo), wo man Fonts/Chars registrieren kann, dass sie aus einem anderen Font kommen, wenn der zu zeichnende Font dieses Zeichen nicht besitzt
und auch von selber macht das Windows schon seit langem, z.B. kannst du fast mit jedem Font chinesisch schreiben, auch wenn fast kein Font dafür die Zeichen besitzt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:58 Uhr.
Seite 5 von 10   « Erste     345 67     Letzte »    

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