Question

J'ai un problème avec les uifonts personnalisés.Je charge 6 d'entre eux (font A en caractères réguliers / audacieux / régulierItalitaliques / bableditaliques, polices B dans des variantes condensées / condensées).

Cependant, voici ce qu'il donne lorsqu'il est rendu: Entrez la description de l'image ici

Les deux premières lignes sont correctes, mais le dernier présente un problème de base.

J'ai essayé de changer l'UPM, Ascender, descender, X-Hauteur de la police de Fontlab, de sorte qu'il correspond aux valeurs de la première police (qui rendez-la correctement), mais en vain.J'ai essayé de convertir le format de police de l'OTF en TTF, pas de chance.Tout ce que j'essaie, il rend toujours de cette façon.

Quelqu'un a-t-il de l'expérience avec cela?

Était-ce utile?

La solution

ici ou même ici Vous pouvez trouver les solutions pour vous. Il s'agit de la base de référence.

note Il y a un problème d'installation d'utilitaires de polices Apple sur El Capitan. Voir https://apple.stackexchange.com / Questions / 211138 / Apple-Font-Outils-ne peut pas-installer-in-MacBook-Pro-el-Capitan pour une solution de contournement.

Pour les modifier dans la police, vous devez télécharger la police apple. Suite à outils. Une fois que vous avez installé cela, vous devez ouvrir la terminale et Accédez au répertoire contenant votre police. Après cela, entrez la commande suivante:

  1. ftxdumperfuser -t hhea -a d font.ttf cela créera un fichier appelé poly.hhea.xml, ouvrez ce nouveau fichier dans un éditeur de texte et ajuster les valeurs d'ascendeur et de descendant. Généralement si votre police se trouve aussi Bas que vous souhaitez réduire l'ascendeur et augmenter le descendant. Après Édition et sauvegarde Entrez la commande suivante dans le terminal pour Reconstruire votre fichier de police:

  2. ftxdumperfuser -t hhea -a f font.ttf vous pouvez maintenant utiliser polices.ttf fichier dans votre application. Si la police n'a toujours pas raison de répéter juste la procédure ci-dessus jusqu'à ce que vous soyez heureux.

    ou vous pouvez facilement modifier NsbaselineAttributename comme suit:

    NSAttributedString *attrStr = [[NSAttributedString alloc] initWithString:@"a string"
                                  attributes:@{ NSBaselineOffsetAttributeName : @-13 }];
    

Autres conseils

Bonjour, j'ai également fait face à un tel problème à ce moment-là, j'ai défini Titre Content Edge en conséquence pour uibutton .

Donc, si vous utilisez ces polices pour uibutton , vous pouvez sûrement utiliser ceci.

Entrez la description de l'image ici

J'espère que cela vous aidera.

Une autre solution intéressante que j'ai trouvée vient du message suivant: http://www.andyyardley.com/2012/04/24/custom-ios-font-and-how-to-fix-the-vertical-Position-problem/

Vous devriez donc vérifier si c'est le cas avec votre police, comme il le dit dans l'un des commentaires:

Ma solution corrige réellement la police personnalisée pour fonctionner avec le moteur de rendu de iOS, vous permettant de l'utiliser comme remplacement direct des polices standard sans aucune modification.

Et comment le fait-il?

Fondamentalement, il suggère d'éditer les métriques de la police à l'aide d'un outil Apple externe (voir la référence des métriques de la police sur https://developer.apple.com/library/ios/documentation/strargrain/postandwebiphoneos/texttandwebiphoneos/customTextExessing/ CustomTextProcessing.html # // Apple_ref / Doc / UID / TP40009542-CH4-SW66 )

Pour les éditer dans la police, vous devez télécharger la suite Apple Police Tool. Une fois que vous avez installé cela, vous devez ouvrir la terminal et accéder au répertoire contenant votre police. Après cela, entrez la commande suivante:

ftxdumperfuser -t hhea -A d font.ttf

Ceci créera un fichier appelé poly.hhea.xml, ouvrez ce nouveau fichier dans un éditeur de texte et ajustez les valeurs de Ascender et de descendeur. Généralement, si votre police est trop basse, vous souhaitez réduire l'ascendeur et augmenter le descendant. Après édition et enregistrement Entrez la commande suivante dans le terminal pour reconstruire votre fichier de police:

ftxdumperfuser -t hhea -A f font.ttf

Vous pouvez maintenant utiliser le fichier font -.ttf dans votre application. Si la police n'a toujours pas raison de répéter la procédure ci-dessus jusqu'à ce que vous soyez heureux.

Vous devez vérifier ces polices côte à côte dans certains logiciels de vecteur comme Adobe Illustrator ou CorelDRAW.Si vous trouvez que les polices ralentissent dans la même base de la mode offsetted dans ces logiciels également, alors sa chose à voir avec la police elle-même.I.E. Les polices peuvent être créées avec de tels pixels décalés dans le fichier de polices.Par conséquent, pas besoin de faire de tels changements dans les paramètres .xib pour tout UIBUTTON ou UITEXTFIELD, etc.

Partagez vos fichiers de polices ici si possible.

Vous avez peut-être consulté la propriété UitextView / UitextLabel 'Thlabel.contentionverticalIGIGIGNEMENT= UICONTROLContEververticalIntalImmentCenter;'

Ceci définit l'alignement vertical. C'était serviable pour moi il y a quelques jours dans un cas similaire

A bientôt la suite Apple Font Tool Suite n'est pas le seul programme qui peut vous aider.Donc, si vous ne souhaitez pas installer une copie virtuelle de MacOS, vous pouvez utiliser FontForge pour Windows pour jouer avec Ascendender et Descender: Élément -> Info de la police, puis onglet OS / 2, puis des métriques.Et n'oubliez pas de cocher la case «Apple» lorsque vous générez une police à la fin.Bonne chance!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top