TTLoadEmbeddedFont, fonction (t2embapi.h)
Lit une police incorporée à partir du flux de document et l’installe. Permet également à un client de restreindre davantage les privilèges d’incorporation de la police.
Syntaxe
LONG TTLoadEmbeddedFont(
[out] HANDLE *phFontReference,
[in] ULONG ulFlags,
[out] ULONG *pulPrivStatus,
[in] ULONG ulPrivs,
[out] ULONG *pulStatus,
[in] READEMBEDPROC lpfnReadFromStream,
[in] LPVOID lpvReadStream,
[in, optional] LPWSTR szWinFamilyName,
[in, optional] LPSTR szMacFamilyName,
[in, optional] TTLOADINFO *pTTLoadInfo
);
Paramètres
[out] phFontReference
Pointeur vers un handle qui identifie la police incorporée installée. Ce handle fait référence à une structure interne, et non à une structure Hfont.
[in] ulFlags
Indicateur spécifiant les options de chargement et d’installation. Actuellement, cet indicateur peut être défini sur zéro ou la valeur suivante :
Valeur | Signification |
---|---|
|
Chargez la police afin qu’elle ne soit pas énumérée à l’utilisateur. Si la police n’est pas installable, elle reste privée. |
[out] pulPrivStatus
Pointeur vers l’indicateur indiquant les privilèges d’incorporation de la police. Cet indicateur est écrit à l’achèvement de cette fonction et peut avoir l’une des valeurs suivantes. Cette fonction retourne la licence la moins restrictive accordée.
[in] ulPrivs
Indicateur indiquant une restriction supplémentaire des privilèges d’incorporation, imposée par le client qui charge la police. Cet indicateur doit avoir l’une des valeurs suivantes.
[out] pulStatus
Pointeur vers un champ de bits contenant status informations sur la requête TTLoadEmbeddedFont. Ce champ est rempli à l’achèvement de cette fonction et peut avoir zéro ou plusieurs des valeurs suivantes.
[in] lpfnReadFromStream
Pointeur vers la fonction de rappel définie par le client qui lit la structure de police à partir du flux de document.
[in] lpvReadStream
Pointeur vers le flux (structure de police).
[in, optional] szWinFamilyName
Pointeur vers le nouveau nom de famille Microsoft Windows Unicode 16 bits de la police. Définissez sur NULL pour utiliser un nom existant. Lorsque vous modifiez le nom d’une police lors du chargement, vous devez fournir ce paramètre et le paramètre szMacFamilyName .
[in, optional] szMacFamilyName
Pointeur vers le nouveau nom de famille Macintosh 8 bits de la police. Définissez sur NULL pour utiliser un nom existant. Lorsque vous modifiez le nom d’une police lors du chargement, vous devez fournir ce paramètre et le paramètre szWinFamilyName .
[in, optional] pTTLoadInfo
Pointeur vers une structure TTLOADINFO contenant l’URL à partir de laquelle l’objet de police incorporé a été obtenu. Si cette valeur ne correspond pas à l’une de celles contenues dans la structure TTEMBEDINFO , la police ne se charge pas correctement.
Valeur retournée
En cas de réussite, retourne E_NONE.
Si le chargement de la police réussit, une police indiquée par phFontReference est créée à partir de la structure de polices avec les noms référencés dans szWinFamilyName et szMacFamilyName. pulPrivStatus est défini pour indiquer les privilèges d’incorporation de la police ; et pulStatus peuvent être définis pour indiquer status informations sur l’opération de chargement de police.
Sinon, retourne un code d’erreur décrit dans Incorporation de messages d’erreur de fonction.
Remarques
Pour aider un client à déterminer si une police incorporée est déjà installée sur le système, la fonction de chargement de police retourne un message d’erreur indiquant qu’une police du même nom existe sur le système (E_FONTNAMEALREADYEXISTS) et si cette police a la même somme de contrôle que la police incorporée (E_FONTALREADYEXISTS). Le client dispose alors de deux options :
- Supposons que la police installée est vraiment la même que la police incorporée et couvre les mêmes sous-ensembles.
- Forcez l’installation de la police incorporée avec un nom différent pour éviter les incompatibilités avec la police déjà présente sur le système.
Pour utiliser le nom existant de la police incorporée, les paramètres de chaîne de nom doivent être définis sur NULL.
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 | t2embapi.h |
Bibliothèque | T2embed.lib |
DLL | T2embed.dll |