Delphi-PRAXiS

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 Unicode-Symbole (https://www.delphipraxis.net/187287-unicode-symbole.html)

stahli 16. Nov 2015 19:54

Unicode-Symbole
 
Liste der Anhänge anzeigen (Anzahl: 1)
Ich bastle an selbst gemalten Controls.

Für die Checkbox und Combobox habe ich mir hier passende Unicodezeichen rausgesucht.
Geschrieben wird mit
Delphi-Quellcode:
aBitmap.Canvas.TextOut()
.

Bei mir unter Win10 sieht das ganz gut aus.
Auf meinen dienstlichen Rechner unter Win7 dagegen nicht.

Das ist für mich überraschend, weil ich dachte, Unicode-Zeichen wären einheitlich auf allen Rechnern!?

Was muss ich beachten, damit das überall gleich aussieht.
Sollte ich vielleicht besser Grafiken verwenden?
Grundsätzlich bin ich recht flexibel, da ich ohnehin alles selbst zeichne.
Die Unicodezeichen erschienen mir nur als einfache Lösung.

Perlsau 16. Nov 2015 20:06

AW: Unicode-Symbole
 
Wieso ist das zwingend ein Unicode-Problem? Könnte doch auch ein fehlender Font sein, oder?

stahli 16. Nov 2015 20:14

AW: Unicode-Symbole
 
Ich weiß halt nicht, wo das Problem liegt.

Einen Font habe ich nicht umgestellt. Augenscheinlich ist die Schrift auch identisch.
Ehe ich planlos suche wollte ich hier erst mal fragen, ob jemand einen Tipp hat.

Perlsau 17. Nov 2015 03:59

AW: Unicode-Symbole
 
Ich weiß über dein Programm ja noch weniger als du, daher kann ich auch nur raten und bin erstmal auf das Nächstliegende gekommen: Sind die Fonts, die du in deiner Anwendung verwendest, auf beiden Systemen identisch? Anders kann ich mir dieses Phänomen erstmal nicht erklären als mit einer neueren Version eines Fonts (z.B. Tahoma) der auf dem neueren BS eben einen veränderten Haken zeigt. Du könntest zu Testzwecken auf dem alten System mal die Fonts, die du in deiner Anwendung verwendest, löschen (vorher aber bitte sichern) und durch die entsprechenden Fonts aus dem neueren Betriebssystem ersetzen, dann wüßtest du zumindest, ob's daran liegt und müßtest dich nicht auf den unzuverlässigen Augenschein (deshalb heißt der ja auch Schein, ähnlich wie beim Geldschein, das scheint nämlich nur Geld zu sein, oder beim Scheinheiligen) stützen.

Ein weiterer Hinweis wäre die Registry, die irgendwo (genau weiß ich's nicht, müßte sich aber in den Weiten des Forums recherchieren lassen) verzeichnet, welche Fonts zur Standardbeschriftung (z.B. Menüs, Icons usw.) herangezogen werden.

Bernhard Geyer 17. Nov 2015 07:38

AW: Unicode-Symbole
 
In Unicode ist definiert welches Zeichen an welchen Codepoint liegt.
Es ist nicht definiert wie dieses Zeichen vom gewählten Font darstellt wird.
Dein Kästchen beim DropDown ist (unter Windows) fast immer das Zeichen dafür das an dieser Position kein Zeichen im Font vorhanden ist und auch über Fontlinking kein andere Font zum Zeichnen verwendet wird.

Aber solche Sachen zeichnet man entweder selbst oder nimmt das Theming/Skinning von neueren Delphi-Versionen.
Sich auf die Darstellung eines Fonts unter einer bestimmten OS-Version zu verlassen ist wie man sieht sehr problematisch.

stahli 17. Nov 2015 08:27

AW: Unicode-Symbole
 
Ok, danke.
Dann war meine Vorstellung von Unicode komplett falsch.
Ich dachte, das wäre quasi ein Font mit x-tausend Zeichen. :oops:

Dann werde ich das wohl auf Grafiken umstellen.

Der schöne Günther 17. Nov 2015 09:40

AW: Unicode-Symbole
 
In Windows 7 fehlen in den ganzen Schriftarten teilweise leider noch die elementarsten Zeichen wie das Erase to Left

Perlsau 17. Nov 2015 10:07

AW: Unicode-Symbole
 
Dann wäre mein Lösungsvorschlag also angebracht: Kopieren der benötigten Font-Dateien vom neuen auf das alte BS.

stahli 17. Nov 2015 10:10

AW: Unicode-Symbole
 
Na ja, dann kann ich aber nicht sicher stellen, dass die GUI auf allen System vernünftig aussieht.
Insofern werde ich lieber Grafiken verwenden (oder direkt selbst zeichnen).

Bernhard Geyer 17. Nov 2015 10:12

AW: Unicode-Symbole
 
Zitat:

Zitat von Perlsau (Beitrag 1321653)
Dann wäre mein Lösungsvorschlag also angebracht: Kopieren der benötigten Font-Dateien vom neuen auf das alte BS.

Und du hast vom Rechteinhaber des Fonts die Erlaubnis das zu machen?
Privat mag das eine Lösung sein. Im "normalen" Firmenumfeld nicht.

Perlsau 17. Nov 2015 10:22

AW: Unicode-Symbole
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1321655)
Und du hast vom Rechteinhaber des Fonts die Erlaubnis das zu machen?

Wieso ich? Ich hab dieses Problem doch gar nicht :roll:

Zitat:

Zitat von Bernhard Geyer (Beitrag 1321655)
Privat mag das eine Lösung sein. Im "normalen" Firmenumfeld nicht.

Dann ist doch alles in bester Ordnung. Oder glaubst du im Ernst, daß irgendwer einen Gerichtsprozeß anstrengen würde, weil eine Behörde (bei der Stahli arbeitet) einen Font von einem Rechner auf einen anderen kopiert hat und das am nächsten Tag wie zufällig in der Bildzeitung steht?

stahli 17. Nov 2015 10:27

AW: Unicode-Symbole
 
Ich suche schon eine allgemein zulässige und funktionsfähige Lösung.
Es geht auch nicht speziell nur um meinen dienstlichen PC.

Für mich ist die Frage abschließend beantwortet.
Ich dachte, Unicode-Zeichen sind "immer und überall" gleich und verfügbar.
Da dem nicht so ist, wähle ich einen anderen (allgemein funktionsfähigen) Weg.

Headbucket 17. Nov 2015 10:44

AW: Unicode-Symbole
 
Du kannst dir UNICODE wie eine Tabelle vorstellen, welche bestimmten Bits ein ganz bestimmtes Zeichen zuordnet.
Diese Tabelle nennt man dann Zeichensatzcodierungen.

Die zwei bekanntesten Vertreter sind wahrscheinlich ASCII und UNICODE.
ASCII ist leider auf 7 Bit begrenzt, was 128 Zeichen zulässt.
Das sind natürlich viel zu wenig, weshalb man ASCII irgendwann erweitert hat und es auch Zeichensätze mit mehr Bits gibt, wie z.B. UNICODE.

UNICODE beschreibt somit lediglich die Kodierung.
Wie diese Zeichen dann auf deinem Monitor angezeigt werden, wird durch die Schriftart definiert.
Diese hat quasi für jeden Tabelleneintrag ein passendes Bild für das Zeichen.

Ich würde generell auch davon abraten Schriftarten zu kopieren oder sich auf bestimmte Schriftarten festzulegen.
Schriftarten ändern sich auch über die Jahre und so wird Segoe UI sicher in 10 Jahren anders aussehen als heute (oder auch nicht :-) ).

Grüße
Headbucket

uligerhardt 17. Nov 2015 10:48

AW: Unicode-Symbole
 
Du könntest auch Marlett zum Zeichnen nehmen: http://www.siao2.com/2006/01/26/517738.aspx

HolgerX 17. Nov 2015 11:56

AW: Unicode-Symbole
 
Alternativ kannst Du dir auch eine eigene Schriftart 'erstellen'.

Hierzu benötigte Tools findest Du im Internet.

Diese Schriftart kannst Du dann bei Programmstart dynamisch für deine App installieren und verwenden.

Da es sich hierbei um DEINE Schrift handelt, hat Du sogar das Urheberrecht auf deiner Seite ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:31 Uhr.

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