Partager via


IPrintOemUni ::OutputCharStr, méthode (prcomoem.h)

La IPrintOemUni::OutputCharStr méthode permet à un plug-in de rendu de contrôler l’impression des glyphes de police.

Syntaxe

HRESULT OutputCharStr(
  PDEVOBJ     pdevobj,
  PUNIFONTOBJ pUFObj,
  DWORD       dwType,
  DWORD       dwCount,
  PVOID       pGlyph
);

Paramètres

pdevobj

Pointeur fourni par l’appelant vers une structure DEVOBJ .

pUFObj

Pointeur fourni par l’appelant vers une structure UNIFONTOBJ .

dwType

Valeur fournie par l’appelant indiquant le type de tableau de spécificateur de glyphes pointé par pGlyphe. Les valeurs valides sont les suivantes :

Valeur Définition
TYPE_GLYPHHANDLE Les éléments du tableau pGlyphe sont des handles de glyphes de type HGLYPH.
TYPE_GLYPHID Les éléments du tableau pGlyphe sont des identificateurs de glyphes de type DWORD.

dwCount

Valeur fournie par l’appelant qui représente le nombre de spécificateurs de glyphes dans le tableau pointé par pGlyphe.

pGlyph

Pointeur fourni par l’appelant vers un tableau de spécificateurs de glyphes, où le type d’élément de tableau est indiqué par dwType.

Valeur retournée

La méthode doit retourner l’une des valeurs suivantes.

Code de retour Description
S_OK
L’opération a réussi.
E_FAIL
L'opération a échoué.
E_NOTIMPL
Cette méthode n'est pas implémentée.

Remarques

La IPrintOemUni::OutputCharStr méthode est utilisée pour prendre en charge les imprimantes qui ne reconnaissent pas les commandes de sortie de caractères au format PCL, CAPSL ou PPDS prises en charge par Unidrv. Son objectif est de permettre à un plug-in de rendu de contrôler l’impression des glyphes d’une police et de fournir des substitutions de glyphes si nécessaire.

Si un plug-in de rendu implémente la IPrintOemUni::OutputCharStr méthode, Unidrv appelle la méthode chaque fois qu’une chaîne de caractères est prête à être mise en pool.

La méthode reçoit un tableau de spécificateurs de glyphes. La valeur reçue pour dwType indique le type d’identificateur.

Si la police spécifiée est une police d’appareil, le tableau contient des descripteurs de glyphes. Les descripteurs doivent être traduits en codes de caractères ou commandes, puis envoyés au spouleur d’impression pour que les glyphes d’appareil soient imprimés.

Si la police spécifiée est une police soft (TrueType), le tableau contient des identificateurs de glyphes. Les identificateurs représentent des glyphes précédemment téléchargés qui doivent être imprimés.

Si la police spécifiée est une police d’appareil, la méthode doit effectuer les opérations suivantes :

  1. Allouez une structure GETINFO_GLYPHSTRING avec dwTypeIn défini sur TYPE_GLYPHHANDLE et dwTypeOut défini sur TYPE_TRANSDATA.
  2. Appelez la fonction UNIFONTOBJ_GetInfo , en passant la structure GETINFO_GLYPHSTRING comme entrée, pour obtenir des traductions de glyphes en tant que contenu de structure TRANSDATA .
  3. Appelez IPrintOemDriverUni ::D rvWriteSpoolBuf pour envoyer le contenu de la structure TRANSDATA au spouleur d’impression, afin d’imprimer les glyphes.
Si la police spécifiée est une police réversible, la méthode peut simplement appeler IPrintOemDriverUni ::D rvWriteSpoolBuf pour envoyer des commandes au spouleur d’impression afin d’imprimer les glyphes précédemment téléchargés.

La IPrintOemUni::OutputCharStr méthode est facultative. Si un plug-in de rendu implémente cette méthode, la méthode IPrintOemUni ::GetImplementedMethod du plug-in doit retourner S_OK lorsqu’il reçoit « OutputCharStr » comme entrée.

Pour plus d’informations, consultez Gestion personnalisée des polices.

Configuration requise

Condition requise Valeur
Plateforme cible Desktop (Expérience utilisateur)
En-tête prcomoem.h (include Prcomoem.h)