Comment puis-je trouver le chemin complet vers une police de son nom d'affichage sur un Mac?

voix
35

J'utilise l'API javascript de Photoshop pour trouver les polices de caractères dans un PSD donné.

Étant donné un nom de police retourné par l'API, je veux trouver le fichier de police physique ce nom correspond à la police sur le disque.

Tout cela se produit dans un programme Python en cours d'exécution sur OSX, donc je suppose que je suis à la recherche d'un des:

  • Certains javascript Photoshop
  • Une fonction Python
  • Une API OSX que je peux appeler de python
Créé 02/08/2008 à 16:11
source utilisateur
Dans d'autres langues...                            


4 réponses

voix
19

Malheureusement, la seule API qui ne dépréciée est situé dans le cadre de ApplicationServices, qui ne dispose pas d'un fichier de support de pont, et est donc pas disponible dans le pont. Si vous êtes désireux d'utiliser ctypes, vous pouvez utiliser ATSFontGetFileReference après avoir regardé le ATSFontRef.

Le cacao n'a pas de support natif, au moins de 10,5, pour obtenir l'emplacement d'une police.

Créé 06/08/2008 à 04:01
source utilisateur

voix
7

ouvrir un terminal (Applications-> Utilitaires-> Terminal) et tapez ceci dans:

locate InsertFontHere

Cela recracher chaque fichier qui a le nom que vous voulez.

Attention: il peut y avoir beaucoup à patauger dans.

Créé 02/08/2008 à 17:56
source utilisateur

voix
5

Il doit y avoir une méthode à Cocoa pour obtenir une liste des polices, vous devez utiliser les liaisons PyObjC pour appeler ..

En fonction de ce que vous avez besoin pour, vous pourriez probablement utiliser quelque chose comme ce qui suit ..

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
Créé 12/10/2008 à 08:02
source utilisateur

voix
5

Je ne l' ai pas été en mesure de trouver quelque chose qui le fait directement. Je pense que vous aurez à parcourir les différents dossiers de polices du système: /System/Library/Fonts, /Library/Fontset il peut probablement être un répertoire de niveau utilisateur ainsi ~/Library/Fonts.

Créé 02/08/2008 à 18:42
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more