2009-10-27 7 views
6

Je travaille actuellement sur une petite organisation de police/application de prévisualisation pour moi-même, cependant, j'ai du mal à obtenir l'information exacte dont j'ai besoin.Obtenez le nom de police de FontFamily dans WPF

J'ai découvert que je peux charger une police externe en créant simplement un nouvel objet FontFamily avec l'emplacement du fichier de la police comme source. Cependant, je n'arrive pas à trouver un moyen d'obtenir le nom de police spécifique d'une police. Je sais que je peux utiliser FontFamily.FamilyNames pour obtenir le nom de la famille de la police, mais cela m'est inutile quand j'ai plusieurs polices avec la même famille affichée. Je voudrais réellement afficher le nom spécifique de la police spécifique.

Y at-il un moyen de le faire? J'affiche actuellement le nom de fichier à la place, mais il est incroyablement bâclé parce que je dois parcourir tous les fichiers d'un répertoire et appeler Fonts.GetFontFamilies() pour obtenir le nom du fichier (la propriété Source de FontFamily ne donne que la famille de fortune de WPF) -nom source au lieu de quelque chose d'utile).

Répondre

2

C'est ce que je fais:

 ListBoxItem listBoxItem = null; 
     foreach (FontFamily fontFamily in Fonts.SystemFontFamilies) 
     { 
      listBoxItem = new ListBoxItem(); 
      listBoxItem.Content = fontFamily; 
      listBoxItem.FontFamily=fontFamily; // Shows Font Text in the Font 
      FontFamilyListBox.Items.Add(listBoxItem); 
     } 
+0

donc simple 'ToString()' sur la famille de la police semble fonctionner. – ghord

Questions connexes