Schriftname direkt aus einer Fontdatei ermitteln



  • Guten Tag,

    kann mir jemand weiterhelfen?

    Um in meiner graphischen Anwendung mehrere Fonts zur Verfügung zu haben, muss ich diese erst mal in einer Privaten Schriften Tabelle registrieren.

    Erstmal richte ich mir eine Zeiger auf die Private Schriften Tabelle ein.

    static  PrivateFontCollection *pfc1 ;
    

    Danach registriere ich alle benötigten Schriften (Fontdateien).
    Das mache ich über die GDI+ Klasse mit der Anweisung:

    iRet = GdiPlusBitmap::pfc1->AddFontFile (wcstring);
    

    "wcstring" ist einen Variable vom Typ WCHAR die den den Dateinamen der Fontdatei beinhaltet.

    Das Problem:
    Schriften von der gleichen Schriftfamilie "Arial, Arial Fett, Aria Kursiv" werden zwar bei der Registrierung ohne Fehlermeldung behandelt, es wird aber nur die "Mutterschrift (Arial) in der Privaten Schrifttabelle registriert.
    Die ist soweit alles OK.

    Jetzt will ich aber herausfinden welche Schriften, aus welchem Grund auch immmer, nicht in der Privaten Schrift Tabelle "landen".

    Hierzu möchte ich, bevor die Schriftdatei registriert wird, aus der Schriftdatei direkt den Schriftnamen ermitteln und in ein Tabelle schreiben.

    Ist dies möglich. Oder ist hierfür ein erheblicher Aufwand zu erwarten.
    Gibt es dafür eine einfache Methode um den Schriftnamen zu ermitteln.
    Oder kann mir jemand einen einfachen Beispielcode liefern (auch in C#, wenns nicht anders geht).

    Dies könnte auch manuell erfogen, mit MS Typograf. Ich habe aber weit über 100 Schriftdateien, und das wäre sehr mühsam und fehleranfällig.

    Bei Google war ich schon, hab´ aber leider nicht den Durchstieg gefunden.

    Vielen Dank im Voraus!
    fujitsufan


Log in to reply