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

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

Étant donné un nom de police renvoyé par l'API, je souhaite trouver le fichier de police physique réel auquel le nom de police correspond sur le disque.

Tout cela se passe dans un programme python exécuté sur OSX, donc je suppose que je recherche l'un des :

  • Quelques javascript Photoshop
  • Une fonction Python
  • Une API OSX que je peux appeler depuis Python
请先 登录 后评论

3 réponses

helloandre

ouvrez un terminal (Applications->Utilitaires->Terminal) et saisissez ceci :

locate InsertFontHere

Cela crachera tous les fichiers portant le nom que vous voulez.

Attention : il peut y avoir beaucoup de choses à parcourir.

请先 登录 后评论
jaredg

Je n'ai rien trouvé qui fasse cela directement. Je pense que vous devrez parcourir les différents dossiers de polices du système : /System/Library/Fonts, /Library/Fonts, et il peut probablement y avoir également un répertoire au niveau de l'utilisateur 3.

请先 登录 后评论
NilObject

Malheureusement, la seule API qui n'est pas obsolète se trouve dans le framework ApplicationServices, qui n'a pas de fichier de support de pont, et n'est donc pas disponible dans le pont. Si vous souhaitez utiliser des ctypes, vous pouvez utiliser ATSFontGetFileReference après avoir recherché ATSFontRef.

Cocoa n'a pas de support natif, du moins à partir de la version 10.5, pour obtenir l'emplacement d'une police.

请先 登录 后评论