AGB  ·  Datenschutz  ·  Impressum  







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

Erkennen des Schrifttyps

Ein Thema von matashen · begonnen am 12. Jun 2007 · letzter Beitrag vom 13. Jun 2007
Antwort Antwort
matashen

Registriert seit: 29. Jan 2007
Ort: daheim
471 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#1

Erkennen des Schrifttyps

  Alt 12. Jun 2007, 14:34
Hallo zusammen,

Ich möchte einen Text drehen, das mach ich wie folgt:

Delphi-Quellcode:
var
hCurFont: HFONT;
LogFont: TLogFont;
begin
with Canvas do
begin
     font:=fontz;
  hCurFont := Font.Handle;
  try
    GetObject(Font.Handle, SizeOf(LogFont), @LogFont);
    LogFont.lfEscapement := AAngle;
    LogFont.lfOrientation := AAngle;
    Font.Handle:= CreateFontIndirect(LogFont);
    try
      TextOut(X, Y, AText);
    finally
      DeleteObject(Font.Handle);
    end;
  finally
    Font.Handle := hCurFont;
  end;
     font:=fontz;
end;
so jetzt hab ich das Problem, das dies nur mit bestimmten Schriftarten funtkioniert, also mit Truetype.

Wie kann ich erkennen ob die gewählte Schriftart (darf der Anwender wählen) eine Truetype Schriftart ist um dann ein Drehen der Schrifft zu unterbinden wenns kein Truetype ist.


Gruß Matthias

PS: Das ganze auf ein Bitmap zeichnen und dann drehen, wies so mancher macht möcht ich nicht.
Matthias
Das Leben ist eines der härtesten.
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Erkennen des Schrifttyps

  Alt 12. Jun 2007, 17:10
Hallo Matthias,

versuche es mit dieser Funktion:

Delphi-Quellcode:
function IsTrueTypeFont (aFont: TFont): Boolean;
var
  DC : HDC;
  TM : TTextMetric;
begin
  DC := CreateDC('DISPLAY', nil, nil, nil);
  try
    SelectObject(DC, aFont.Handle);
    GetTextMetrics(DC, TM);
    Result := ((TM.tmPitchAndFamily and TMPF_TRUETYPE) <> 0);
  finally
    DeleteDC(DC);
  end;
end;
Gruß Hawkeye
  Mit Zitat antworten Zitat
Ydobon

Registriert seit: 3. Mär 2006
264 Beiträge
 
Delphi 11 Alexandria
 
#3

Re: Erkennen des Schrifttyps

  Alt 12. Jun 2007, 18:10
Oder gleich den TFontDialog so einstellen, dass nur TT-Schriftarten ausgewählt werden können.
  Mit Zitat antworten Zitat
matashen

Registriert seit: 29. Jan 2007
Ort: daheim
471 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#4

Re: Erkennen des Schrifttyps

  Alt 13. Jun 2007, 09:13
Hallo,

Danke für die Tips

Ich benötige sämtliche Schriftarten und werd die funktion zur Prüfung einbauen.

@Ydobon: Auch ein guter Gedanke, wüsste gar nicht das es diese Option gibt.

Gruß Matthias
Matthias
Das Leben ist eines der härtesten.
  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 18:34 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