Pourquoi FontStretch ne fonctionne pas dans WPF?
Je suis en train de réglage FontStretch propriété sur un TextBlock dans WPF, mais il semble que cela ne fonctionne pas. J'ai essayé Élargi, Résumés, etc. mais l'aspect du texte ne change pas.
Je travaille sur Windows XP avec le Framework 4.0 et testé à la fois avec Verdana et Arial.
Fonctionne uniquement sur Windows 7 ou uniquement avec certaines polices spécifiques?
MODIFIER: Si elle ne fonctionne pas avec toutes les polices de caractères, est-il une liste de polices qui prennent en charge cette fonctionnalité? Ou est-il possible de modifier une police Verdana/Arial pour le soutenir?
source d'informationauteur Drake
Vous devez vous connecter pour publier un commentaire.
Pour obtenir un effet similaire à FontStretch dans une police qui ne prend pas en charge, vous pouvez utiliser un LayoutTransform sur le TextBlock:
Cela peut également être défini dans un style si vous voulez avoir tout le texte dans TextBlocks comprimée:
Contrairement à la police des propriétés telles que le gras ou l'italique, WPF ne permet pas de simuler les propriétés de police comme l'étirement ou en petites capitales. La police utilisée doit prendre en charge lui-même.
Pour voir quelle prise en charge de polices FontStretch, vous aurez besoin de regarder pour les polices qui ont un fichier de police distincte pour, par exemple, Étendu ou Condensé. Et ensuite seulement correctement lié TrueType/OpenType fonctionne. Certains de police vendeurs ne prennent pas correctement en lien étendu ou condensé des variantes de leurs polices à la version régulière, de sorte WPF n'a aucune idée que ces polices variantes sont liées.
Par la mesure de certains de texte (TextBlock.Mesure), je trouve que Arial Narrow est × 0.82 la largeur de l'Arial.
Donc
textBlock.LayoutTransform = new System.Windows.Media.ScaleTransform(0.82, 1.0);
lorsqu'il est appliqué à Arial pourrait approximative Arial Narrow.Je crois FontStretch ne fonctionne pas pour toutes les polices.
Elle ne fonctionne que pour les polices OpenType. Pour plus d'informations:
http://en.wikipedia.org/wiki/OpenType
http://www.adobe.com/type/opentype/
http://www.microsoft.com/typography/WhatIsOpenType.mspx