Función GetGlyphOutlineA (wingdi.h)
La función GetGlyphOutline recupera el esquema o mapa de bits de un carácter en la fuente TrueType seleccionada en el contexto de dispositivo especificado.
Sintaxis
DWORD GetGlyphOutlineA(
[in] HDC hdc,
[in] UINT uChar,
[in] UINT fuFormat,
[out] LPGLYPHMETRICS lpgm,
[in] DWORD cjBuffer,
[out] LPVOID pvBuffer,
[in] const MAT2 *lpmat2
);
Parámetros
[in] hdc
Identificador del contexto del dispositivo.
[in] uChar
Carácter para el que se van a devolver los datos.
[in] fuFormat
Formato de los datos que recupera la función. Este parámetro puede ser uno de los siguientes valores.
Valor | Significado |
---|---|
|
La función recupera los datos de la curva como una spline bézier cúbica (no en formato de spline cuadrático). |
|
La función recupera el mapa de bits del glifo. Para obtener información sobre la asignación de memoria, vea la siguiente sección Comentarios. |
|
Indica que el parámetro uChar es un índice de glifo TrueType en lugar de un código de caracteres. Consulte la función ExtTextOut para obtener comentarios adicionales sobre la indexación de glifos. |
|
La función recupera un mapa de bits de glifo que contiene cinco niveles de gris. |
|
La función recupera un mapa de bits de glifo que contiene 17 niveles de gris. |
|
La función recupera un mapa de bits de glifo que contiene 65 niveles de gris. |
|
La función solo recupera la estructura |
|
La función recupera los puntos de datos de curva en el formato nativo del rasterizador y usa las unidades de diseño de la fuente. |
|
La función solo devuelve esquemas sin definir. Esta marca solo funciona junto con GGO_BEZIER y GGO_NATIVE. |
Tenga en cuenta que, para los valores de GGO_GRAYn_BITMAP, la función recupera un mapa de bits de glifo que contiene n^2+1 (n cuadrado más uno) niveles de gris.
[out] lpgm
Puntero a la GLYPHMETRICS estructura que describe la colocación del glifo en la celda de caracteres.
[in] cjBuffer
Tamaño, en bytes, del búfer (*lpvBuffer) donde la función es copiar información sobre el carácter de esquema. Si este valor es cero, la función devuelve el tamaño necesario del búfer.
[out] pvBuffer
Puntero al búfer que recibe información sobre el carácter de esquema. Si este valor es NULL, la función devuelve el tamaño necesario del búfer.
[in] lpmat2
Puntero a una estructura MAT2 que especifica una matriz de transformación para el carácter.
Valor devuelto
Si se especifica GGO_BITMAP, GGO_GRAY2_BITMAP, GGO_GRAY4_BITMAP, GGO_GRAY8_BITMAP o GGO_NATIVE y la función se realiza correctamente, el valor devuelto es mayor que cero; De lo contrario, el valor devuelto es GDI_ERROR. Si se especifica una de estas marcas y el tamaño del búfer o la dirección es cero, el valor devuelto especifica el tamaño de búfer necesario, en bytes.
Si se especifica GGO_METRICS y se produce un error en la función, se GDI_ERROR el valor devuelto.
Observaciones
El contorno del glifo devuelto por la función GetGlyphOutline es para un glifo ajustado a la cuadrícula. (Un glifo ajustado por cuadrícula es un glifo que se ha modificado para que su imagen bitmapped se ajuste lo más posible al diseño original del glifo). Si una aplicación necesita un contorno de glifo sin modificar, puede solicitar el contorno del glifo para un carácter de una fuente cuyo tamaño sea igual a la unidad em de la fuente. El valor de la unidad em de una fuente se almacena en el miembro
El mapa de bits de glifo devuelto por GetGlyphOutline cuando se especifica GGO_BITMAP es un mapa de bits monocromo alineado con DWORD, orientado a filas. Cuando se especifica GGO_GRAY2_BITMAP, el mapa de bits devuelto es una matriz alineada con DWORD y orientada a filas de bytes cuyos valores van de 0 a 4. Cuando se especifica GGO_GRAY4_BITMAP, el mapa de bits devuelto es una matriz alineada con DWORD y orientada a filas de bytes cuyos valores van de 0 a 16. Cuando se especifica GGO_GRAY8_BITMAP, el mapa de bits devuelto es una matriz alineada con DWORD y orientada a filas de bytes cuyos valores van de 0 a 64.
El búfer nativo devuelto por GetGlyphOutline cuando se especifica GGO_NATIVE es un contorno de glifo. Un contorno de glifo se devuelve como una serie de uno o varios contornos definidos por un TTPOLYGONHEADER estructura seguida de una o varias curvas. Cada curva del contorno se define mediante una estructura de TTPOLYCURVE seguida de una serie de puntos de datos POINTFX.
puntos de POINTFX son posiciones absolutas, no movimientos relativos. El punto de partida de un contorno lo da el miembro
La GLYPHMETRICS estructura especifica el ancho de la celda de caracteres y la ubicación de un glifo dentro de la celda de caracteres. El origen de la celda de caracteres se encuentra en el lado izquierdo de la celda en la línea base de la fuente. La ubicación del origen del glifo es relativa al origen de la celda de caracteres. La altura de una celda de caracteres, la línea base y otras métricas globales a la fuente se proporcionan mediante la estructura OUTLINETEXTMETRIC.
Una aplicación puede modificar los caracteres recuperados en formato de mapa de bits o nativo especificando una matriz de transformación de 2 a 2 en el parámetro lpMatrix. Por ejemplo, el glifo se puede modificar mediante el descifrado, rotación, escalado o cualquier combinación de las tres mediante la multiplicación de matriz.
La información adicional sobre los contornos de glifos se encuentra en TrueType y en las especificaciones técnicas de OpenType.
Nota
El encabezado wingdi.h define GetGlyphOutline como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 2000 Professional [solo aplicaciones de escritorio] |
servidor mínimo admitido | Windows 2000 Server [solo aplicaciones de escritorio] |
de la plataforma de destino de |
Windows |
encabezado de |
wingdi.h (incluya Windows.h) |
biblioteca de |
Gdi32.lib |
DLL de |
Gdi32.dll |
Consulte también
funciones de fuente y texto de
de información general de fuentes y texto de
POINT de