Wie finde ich den vollständigen Pfad zu einer schriftart aus, deren Anzeigenamen auf einem Mac?

StackOverflow https://stackoverflow.com/questions/469

  •  08-06-2019
  •  | 
  •  

Frage

Ich bin mit dem Photoshop-javascript-API finden die Schriftarten in einer bestimmten PSD.

Gegeben eine schriftart von der API zurückgegebene, ich möchte zu finden die tatsächlichen physischen font-Datei, die Namen der schriftart entspricht, die auf der Disk.

Das alles geschieht in einem python-Programm läuft auf OSX also, ich denke, ich bin auf der Suche nach einer:

  • Einige Photoshop javascript
  • Eine Python-Funktion
  • Eine OSX-API, die ich aufrufen kann aus python
War es hilfreich?

Lösung

Leider ist die einzige API, die nicht veraltet ist, befindet sich in der ApplicationServices Rahmen,, die nicht über eine Brücke Unterstützung Datei, und damit ist nicht verfügbar in die Brücke.Wenn Sie wollen verwenden, ctypes, die Sie verwenden können, ATSFontGetFileReference nach der Sie suchen den ATSFontRef.

Kakao hat keine native Unterstützung, zumindest von 10,5 für den Speicherort der schriftart.

Andere Tipps

öffnen Sie ein terminal (Anwendungen->Dienstprogramme->Terminal) und geben Sie diese in:

locate InsertFontHere

Dies wird spuckte jede Datei hat den Namen, den Sie möchten.

Warnung:möglicherweise gibt es eine Menge zu Durchwaten.

Es muss eine Methode in Kakao zum abrufen einer Liste von Schriftarten, dann würden Sie haben zu verwenden die PyObjC-Bindungen zu nennen..

Je nachdem, für was du Sie brauchst, Sie könnten wahrscheinlich nur so etwas wie die folgenden..

import os
def get_font_list():
    fonts = []
    for font_path in ["/Library/Fonts", os.path.expanduser("~/Library/Fonts")]:
        if os.path.isdir(font_path):
            fonts.extend(
                [os.path.join(font_path, cur_font) 
                 for cur_font in os.listdir(font_path)
                ]
            )
    return fonts

Ich habe nicht in der Lage, irgend etwas zu finden, das dies tut, direkt.Ich denke, Sie haben zum Durchlaufen der verschiedenen font-Ordner auf dem system: /System/Library/Fonts, /Library/Fonts, und es kann wohl sein, ein user-level-Verzeichnis ~/Library/Fonts.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top