AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Was passiert, wenn Schriftart nicht vorhanden ist?

Ein Thema von greenmile · begonnen am 4. Apr 2014 · letzter Beitrag vom 4. Apr 2014
Antwort Antwort
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#1

Was passiert, wenn Schriftart nicht vorhanden ist?

  Alt 4. Apr 2014, 07:56
Hallo,

ich habe die Frage ja schon an anderer Stelle gestellt, leider ohne Antwort. Wenn ich mein Projekt auf die Schrift "Segoe UI 9 pt" umstelle und auf dem Zielsystem diese Schriftart nicht existiert, was passiert dann? Gibt es einen "Plan B", also sowas wie "Screen.AltFont := "?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Was passiert, wenn Schriftart nicht vorhanden ist?

  Alt 4. Apr 2014, 08:18
Was? Probier es doch aus.
Einfach irgendeinen Fantasienamen bei Font.Name eingeben und fertig.

Es gibt ja nur zwei Möglichkeiten:
- beim Laden wird der "ungültige" Fontname nicht angenommen und die vorher eingestellte Schrift bleibt unverändert (das wird dann wohl eine Standardschrift sein)
- der ungültige Name wird angenommen und es wird als Ersatz eine Standardschrift vom Windows verwendet

Du kannst ja in Screen.Fonts nachsehn, ob die existiert und wenn nicht, dann schreibst du überall deine Alternative rein.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 4. Apr 2014 um 08:20 Uhr)
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Was passiert, wenn Schriftart nicht vorhanden ist?

  Alt 4. Apr 2014, 09:43
Hmmm ... hat noch niemand damit Erfahrungen gemacht?
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#4

AW: Was passiert, wenn Schriftart nicht vorhanden ist?

  Alt 4. Apr 2014, 09:45
Probiers doch einfach aus
Ist ne Sache von 5 Minuten.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von Union
Union

Registriert seit: 18. Mär 2004
Ort: Luxembourg
3.490 Beiträge
 
Delphi 7 Enterprise
 
#5

AW: Was passiert, wenn Schriftart nicht vorhanden ist?

  Alt 4. Apr 2014, 09:47
Willst Du etwa dass FMX auf dem Mac wie ein Mac-Programm aussieht - das wäre ja ein Sakrileg! Dann musst Du folgende Schriftarten verwenden, evtl. mit {ifdef} in die Font.Family eintragen:
  • "System" 13 für Edits und Buttons
  • "Label" 10 für normale Label
  • "Title" 13 Für größere Label
Ibi fas ubi proxima merces
sudo /Developer/Library/uninstall-devtools --mode=all
  Mit Zitat antworten Zitat
greenmile

Registriert seit: 17. Apr 2003
1.107 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: Was passiert, wenn Schriftart nicht vorhanden ist?

  Alt 4. Apr 2014, 09:52
Nein es geht um VCL. Ich habe jetzt eine ungültige Schriftart genommen (die berühmte "Fadsouewhk") und es wird eine Standard-Schrift genommen (welche auch immer). Die Frage ist jetzt, ob ich das irgendwie beeinflussen kann.

Nachtrag: Hier ist die Lösung bzw. die Erklärung: http://www.delphipraxis.net/157257-v...rledigt**.html

Geändert von greenmile ( 4. Apr 2014 um 10:00 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#7

AW: Was passiert, wenn Schriftart nicht vorhanden ist?

  Alt 4. Apr 2014, 09:59
Nein es geht um VCL. Ich habe jetzt eine ungültige Schriftart genommen (die berühmte "Fadsouewhk") und es wird eine Standard-Schrift genommen (welche auch immer). Die Frage ist jetzt, ob ich das irgendwie beeinflussen kann.
Ja kannst du indirekt:
Zitat von himitsu:
Du kannst ja in Screen.Fonts nachsehn, ob die existiert und wenn nicht, dann schreibst du überall deine Alternative rein.
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.174 Beiträge
 
Delphi 10.4 Sydney
 
#8

AW: Was passiert, wenn Schriftart nicht vorhanden ist?

  Alt 4. Apr 2014, 10:14
Ab Win2000 ist "Tahoma" vorhanden. Ab Vista "Segoe UI".

Sollten diese Schriftarten nicht vorhanden sein hat der User eh ein Problem mit seinem Windows ...

Ansonsten frag doch ab welche Schriftart eingestellt ist.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#9

AW: Was passiert, wenn Schriftart nicht vorhanden ist?

  Alt 4. Apr 2014, 11:54
Hallo,

ich habe die Frage ja schon an anderer Stelle gestellt, leider ohne Antwort. Wenn ich mein Projekt auf die Schrift "Segoe UI 9 pt" umstelle und auf dem Zielsystem diese Schriftart nicht existiert, was passiert dann? Gibt es einen "Plan B", also sowas wie "Screen.AltFont := "?
Jajn. Ich hab das mal schon durchgespielt, weil ich es auch brauchte. Die Standardschrift ist "MS Sans Serif". Gibst du den Namen einer Schrift die es nicht gibt, wird erst einmal die letzte gültige Schrift genommen.

Allerdings mit diesem Verhalten (zumindest bei mir bisher): ist am Anfang "MS Sans Serif" eingestellt und du gibst "" ein, wird "MS Sans Serif" genommen. Gibst du "Blabla" (also eine Schrift die es nicht gibt) wird, zumindest bei XP, Tahoma genommen. Das ist die Standardschrift die eingestellt ist. Ist eine andere eingestellt, wird vermutlich die genommen. Gibst du noch mal "", bleibt es bei Tahoma. Gibt man nach Tahoma "Times New Roman" ein und dann "Blabla", bleibt Times New Roman", als letzte funktionierende Schrift.

Willst du die Möglichkeiten von HTML, also Alternativschriften, ich benutze schon lange (gelegentlich in abgewandelter Form) so eine Prozedur:
Delphi-Quellcode:
procedure SetFont(Font: TFont);
const
  FontList: array[0..3] of String = ('Segoe UI', 'Courier New', 'Times New Roman', 'Arial1');
var
  i: Integer;
begin
  for i := Low(FontList) to High(FontList) do
    if Screen.Fonts.IndexOf(FontList[i]) > -1 then
    begin
      Font.Name := FontList[i];
      Break;
    end;
end;
Ist die erste Schrift nicht vorhanden, wird die zweite genommen, usw.
  Mit Zitat antworten Zitat
Antwort Antwort


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 05: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