Función MergeFontPackage (fontsub.h)
La función MergeFontPackage manipula las fuentes creadas por CreateFontPackage. Es ligeramente más flexible que su nombre podría sugerir: puede controlar adecuadamente todas las fuentes de subconjuntos y paquetes de fuentes creados por CreateFontPackage. Puede convertir un paquete de fuentes en una fuente de trabajo y puede combinar un paquete de fuentes Delta en una fuente de trabajo preparada correctamente.
Normalmente, CreateFontPackage crea fuentes de subconjunto y paquetes de fuentes para pasar a una impresora o servidor de impresión; MergeFontPackage se ejecuta en esa impresora o servidor de impresión.
Sintaxis
unsigned long MergeFontPackage(
[in] const unsigned char *puchMergeFontBuffer,
[in] const unsigned long ulMergeFontBufferSize,
[in] const unsigned char *puchFontPackageBuffer,
[in] const unsigned long ulFontPackageBufferSize,
[out] unsigned char **ppuchDestBuffer,
[out] unsigned long *pulDestBufferSize,
[out] unsigned long *pulBytesWritten,
[in] const unsigned short usMode,
[in] CFP_ALLOCPROC lpfnAllocate,
[in] CFP_REALLOCPROC lpfnReAllocate,
[in] CFP_FREEPROC lpfnFree,
[in] void *lpvReserved
);
Parámetros
[in] puchMergeFontBuffer
Puntero a un búfer que contiene una fuente con la que combinar. Esto solo se usa cuando usMode es TTFMFP_DELTA.
[in] ulMergeFontBufferSize
Especifica el tamaño de *puchMergeFontBuffer, en bytes.
[in] puchFontPackageBuffer
Puntero a un búfer que contiene un paquete de fuentes.
[in] ulFontPackageBufferSize
Especifica el tamaño de *puchMergeFontBuffer, en bytes.
[out] ppuchDestBuffer
Puntero a una variable de tipo unsigned char*. La función MergeFontPackage asignará un búfer **ppuchDestBuffer, mediante lpfnAllocate y lpfnReAllocate. Si la devolución es correcta, ese búfer contendrá la fuente combinada o expandida resultante. La aplicación es responsable de liberar finalmente ese búfer.
[out] pulDestBufferSize
Apunta a un long sin signo, que, al devolverse correctamente, especificará el tamaño asignado del búfer **ppuchDestBuffer.
[out] pulBytesWritten
Apunta a un long sin signo, que, al devolverse correctamente, especificará el número de bytes que se usan realmente en el búfer **ppuchDestBuffer.
[in] usMode
Especifica qué tipo de proceso se va a realizar. Seleccione uno de estos valores; no se pueden combinar.
Valor | Significado |
---|---|
|
Copia una fuente de trabajo simple; vea los comentarios a continuación.
puchMergeFontBuffer se omitirá; puchFontPackageBuffer debe contener una fuente de trabajo creada por CreateFontPackage con usSubsetFormat establecido en TTFCFP_SUBSET; esta fuente de trabajo simplemente se copiará en ppuchDestBuffer. |
|
Convierte un paquete de fuentes en una fuente de trabajo combinable; vea los comentarios a continuación.
puchMergeFontBuffer se omitirá; puchFontPackageBuffer debe contener una fuente de trabajo combinable creada por CreateFontPackage con usSubsetFormat establecido en TTFCFP_SUBSET1. El resultado en **ppuchDestBuffer será una fuente de trabajo que se puede combinar con más adelante. |
|
Combina un paquete de fuentes Delta en una fuente de trabajo combinable; vea los comentarios a continuación.
*puchFontPackageBuffer debe contener un paquete de fuentes creado por CreateFontPackage con usSubsetFormat establecido en TTFCFP_DELTA y puchMergeFontBuffer debe contener un paquete de fuentes creado por una llamada anterior a MergeFontPackage con usMode establecido en TTFMFP_SUBSET1 o TTFMFP_DELTA. La fuente combinada resultante en **ppuchDestBuffer será una fuente de trabajo que se puede combinar con más adelante. |
[in] lpfnAllocate
Función de devolución de llamada para asignar memoria inicial para ppuchDestBuffer y para búferes temporales.
[in] lpfnReAllocate
Función de devolución de llamada para reasignar memoria para ppuchDestBuffer y para búferes temporales.
[in] lpfnFree
Función de devolución de llamada para liberar memoria asignada por lpfnAllocate y lpfnReAllocate.
[in] lpvReserved
Debe establecerse en NULL.
Valor devuelto
Si la función se realiza correctamente, devuelve cero.
De lo contrario, devuelve un valor distinto de cero. Consulte Font-Package Function Error Messages (Mensajes de error de la función Font-Package) para obtener posibles devoluciones de error.
Comentarios
Esta función controla cuatro entidades distintas relacionadas, cada una de las cuales representa una fuente de subconjunto:
Entidad | Producido por | Se puede usar directamente como fuente |
---|---|---|
Fuente de trabajo simple | CreateFontPackage con usSubsetFormat establecido en TFCFP_SUBSET. | Sí |
Paquete de fuentes | CreateFontPackage con usSubsetFormat establecido en TTFCFP_SUBSET1. | No |
Paquete de fuentes delta | CreateFontPackage con usSubsetFormat establecido en TTFCFP_DELTA. | No |
Fuente de trabajo combinable | MergeFontPackage con usMode establecido en TTFMFP_SUBSET1 o TTFMFP_DELTA. | Sí |
Requisitos
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | fontsub.h |
Library | FontSub.lib |
Archivo DLL | FontSub.dll |