Función ScriptPositionSingleGlyph (usp10.h)
Coloca un único glifo con un único ajuste mediante una característica especificada proporcionada en la fuente para el procesamiento de OpenType. Normalmente, las aplicaciones usan esta función para alinear un glifo ópticamente al principio o al final de una línea.
Sintaxis
HRESULT ScriptPositionSingleGlyph(
[in, optional] HDC hdc,
[in, out] SCRIPT_CACHE *psc,
[in, optional] SCRIPT_ANALYSIS *psa,
[in] OPENTYPE_TAG tagScript,
[in] OPENTYPE_TAG tagLangSys,
[in] OPENTYPE_TAG tagFeature,
[in] LONG lParameter,
[in] WORD wGlyphId,
[in] int iAdvance,
[in] GOFFSET GOffset,
[out] int *piOutAdvance,
[out] GOFFSET *pOutGoffset
);
Parámetros
[in, optional] hdc
Identificador del contexto del dispositivo. Para más información, consulte Almacenamiento en caché.
[in, out] psc
Puntero a una estructura de SCRIPT_CACHE que identifica la caché de scripts.
[in, optional] psa
Puntero a una estructura de SCRIPT_ANALYSIS obtenida de una llamada anterior a ScriptItemizeOpenType. Esta estructura identifica el motor de forma, de modo que se puedan recuperar los anchos avanzados.
Como alternativa, la aplicación puede establecer este parámetro en NULL para recuperar resultados sin filtrar.
[in] tagScript
Estructura OPENTYPE_TAG que define la etiqueta de script para dar forma.
[in] tagLangSys
Estructura OPENTYPE_TAG que define la etiqueta de lenguaje para dar forma.
[in] tagFeature
Estructura OPENTYPE_TAG que define la etiqueta de característica que se va a usar para dar forma al glifo alternativo.
[in] lParameter
Marca que especifica si se debe aplicar una sustitución única al identificador especificado en wGlyphId. La aplicación establece este parámetro en 1 para aplicar la característica de sustitución única al identificador. La aplicación establece el parámetro en 0 si la función no debe aplicar la característica.
[in] wGlyphId
Identificador del glifo original al que se va a dar forma.
[in] iAdvance
Ancho de avance del glifo original.
[in] GOffset
Desplazamiento original del glifo. Normalmente, este valor es una salida de ScriptPlaceOpenType o ScriptPlace.
[out] piOutAdvance
Puntero a la ubicación en la que esta función recupera el nuevo ancho avanzado ajustado para el glifo alternativo.
[out] pOutGoffset
Puntero a la ubicación en la que esta función recupera el nuevo desplazamiento del glifo ajustado para el glifo alternativo.
Valor devuelto
Si la operación se realiza correctamente, devuelve 0. La función devuelve un valor HRESULT distinto de cero si no se realiza correctamente. La aplicación puede probar el valor devuelto con las macros SUCCEEDED y FAILED .
Comentarios
Esta función coloca un glifo individual ajustando el ancho avanzado o el desplazamiento del glifo especificado. La función supone que la fuente solo requiere un ajuste.
Un uso típico de esta función es el ligero ajuste del margen para tener en cuenta la impresión visual realizada por determinados caracteres. En el alfabeto latino, por ejemplo, al principio de una línea es habitual realizar un ligero ajuste a la izquierda para un capital inicial (como "T" o "O") que no tiene una línea vertical en la parte izquierda del glifo. Aunque al hacer esto se rompe el margen lineal estricto, el ojo percibe el margen como más uniforme.
En los ejemplos siguientes se muestra este efecto. En el primer ejemplo se muestra la alineación estricta; Los dos ejemplos siguientes muestran un ajuste de la "T" inicial a la izquierda. Los ajustes son por un píxel y dos píxeles, respectivamente. Las imágenes ampliadas a la derecha muestran cómo la "T" empuja ligeramente más lejos en el margen izquierdo en cada caso sucesivo.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | usp10.h |
Library | Usp10.lib |
Archivo DLL | Usp10.dll |
Redistribuible | Usp10.dll versión 1.600 o posterior en Windows XP |