Share via


Metodo IPrintOemUni::OutputCharStr (prcomoem.h)

Il IPrintOemUni::OutputCharStr metodo consente a un plug-in di rendering di controllare la stampa di glifi del tipo di carattere.

Sintassi

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

Parametri

pdevobj

Puntatore fornito dal chiamante a una struttura DEVOBJ .

pUFObj

Puntatore fornito dal chiamante a una struttura UNIFONTOBJ .

dwType

Valore fornito dal chiamante che indica il tipo di matrice di identificatore del glifo puntato da pGlyph. I valori validi sono i seguenti:

valore Definizione
TYPE_GLYPHHANDLE Gli elementi della matrice pGlyph sono handle di tipo HGLYPH.
TYPE_GLYPHID Gli elementi della matrice pGlyph sono identificatori di tipo DWORD.

dwCount

Valore fornito dal chiamante che rappresenta il numero di identificatori glifi nella matrice a cui punta pGlyph.

pGlyph

Puntatore fornito dal chiamante a una matrice di identificatori glifi, in cui il tipo di elemento matrice è indicato da dwType.

Valore restituito

Il metodo deve restituire uno dei valori seguenti.

Codice restituito Descrizione
S_OK
Operazione completata.
E_FAIL
Operazione non riuscita.
E_NOTIMPL
Il metodo non è implementato.

Commenti

Il IPrintOemUni::OutputCharStr metodo viene usato per supportare le stampanti che non riconoscono i comandi di output dei caratteri PCL, CAPSL o PPDS formattati supportati da Unidrv. Lo scopo è consentire a un plug-in di rendering di controllare la stampa dei glifi di un tipo di carattere e di fornire sostituzioni del glifo, se necessario.

Se un plug-in di rendering implementa il metodo, Unidrv chiama il IPrintOemUni::OutputCharStr metodo ogni volta che una stringa di caratteri è pronta per essere spoolata.

Il metodo riceve una matrice di identificatori glifi. Il valore ricevuto per dwType indica il tipo di identificatore.

Se il tipo di carattere specificato è un tipo di carattere del dispositivo, la matrice contiene handle glifi. Gli handle devono essere convertiti in codici di carattere o comandi e quindi inviati al spooler di stampa per causare la stampa degli glifi del dispositivo.

Se il tipo di carattere specificato è un carattere soft (TrueType), la matrice contiene identificatori di glifo. Gli identificatori rappresentano glifi scaricati in precedenza che devono essere stampati.

Se il tipo di carattere specificato è un tipo di carattere del dispositivo, il metodo deve eseguire le operazioni seguenti:

  1. Allocare una struttura GETINFO_GLYPHSTRING con dwTypeIn impostata su TYPE_GLYPHHANDLE e dwTypeOut impostata su TYPE_TRANSDATA.
  2. Chiamare la funzione UNIFONTOBJ_GetInfo, passando la struttura GETINFO_GLYPHSTRING come input, per ottenere traduzioni glifi come contenuto della struttura TRANSDATA .
  3. Chiamare IPrintOemDriverUni::D rvWriteSpoolBuf per inviare il contenuto della struttura TRANSDATA al spooler di stampa, per stampare i glifi.
Se il tipo di carattere specificato è un carattere soft, il metodo può semplicemente chiamare IPrintOemDriverUni::D rvWriteSpoolBuf per inviare comandi al spooler di stampa che causerà la stampa dei glifi scaricati in precedenza specificati.

Il IPrintOemUni::OutputCharStr metodo è facoltativo. Se un plug-in di rendering implementa questo metodo, il metodo IPrintOemUni::GetImplementedMethod deve restituire S_OK quando riceve "OutputCharStr" come input.

Per altre informazioni, vedere Personalizzazione della gestione dei tipi di carattere.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione prcomoem.h (include Prcomoem.h)