Fonction ScriptJustify (usp10.h)
Crée une table de largeurs avancées pour autoriser la justification du texte lorsqu’il est passé à la fonction ScriptTextOut .
Syntaxe
HRESULT ScriptJustify(
[in] const SCRIPT_VISATTR *psva,
[in] const int *piAdvance,
[in] int cGlyphs,
[in] int iDx,
[in] int iMinKashida,
[out] int *piJustify
);
Paramètres
[in] psva
Pointeur vers un tableau, de longueur indiquée par des cGlyphes, contenant des structures SCRIPT_VISATTR . Chaque structure contient des attributs visuels pour un glyphe dans la ligne à traiter.
[in] piAdvance
Pointeur vers un tableau de largeurs avancées, de longueur indiquée par des cGlyphes, obtenu à partir d’un appel précédent à ScriptPlace.
[in] cGlyphs
Nombre de glyphes pour les tableaux indiqués par psva et piAdvance. Ce paramètre indique également le nombre de glyphes pour le paramètre de sortie piJustify.
[in] iDx
Largeur, en pixels, de la modification souhaitée, soit une augmentation de la diminution.
[in] iMinKashida
Largeur minimale d’un glyphe kashida à générer.
[out] piJustify
Pointeur vers une mémoire tampon dans laquelle cette fonction récupère un tableau, de longueur indiquée par des cGlyphes, contenant des largeurs d’avance justifiées. Les largeurs justifiées sont parfois appelées « largeurs de cellule » pour les distinguer des largeurs d’avance injustifiées.
Valeur retournée
Retourne 0 en cas de réussite. La fonction retourne une valeur HRESULT différente de zéro si elle ne réussit pas. L’application peut tester la valeur de retour avec les macros SUCCEEDED et FAILED .
Remarques
Pour plus d’informations sur le contexte dans lequel cette fonction est normalement appelée, consultez Affichage de texte avec Uniscribe .
Cette fonction fournit une implémentation simple de la justification multilingue. Il établit la quantité d’ajustement à effectuer à chaque position de glyphe sur la ligne. Il interprète le tableau SCRIPT_VISATTR généré par un appel à ScriptShape, en accordant la priorité absolue à kashida. La fonction utilise l’espacement interword si aucun point kashida n’est disponible. Il utilise l’espacement intercharacter si aucun point d’interword n’est disponible.
ScriptJustify crée un tableau justifié contenant des largeurs avancées mises à jour pour chaque glyphe. Lorsqu’une largeur d’avance pour un glyphe est augmentée, la largeur supplémentaire est rendue à droite du glyphe, avec un espace blanc ou, pour le texte arabe, un kashida.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | usp10.h |
Bibliothèque | Usp10.lib |
DLL | Usp10.dll |
Composant redistribuable | Internet Explorer 5 ou version ultérieure sur Windows Me/98/95 |