Поделиться через


Функция ScriptApplyLogicalWidth (usp10.h)

Принимает массив расширенных ширин для выполнения и создает массив скорректированных ширины глифов.

Синтаксис

HRESULT ScriptApplyLogicalWidth(
  [in]                const int             *piDx,
  [in]                int                   cChars,
  [in]                int                   cGlyphs,
  [in]                const WORD            *pwLogClust,
  [in]                const SCRIPT_VISATTR  *psva,
  [in]                const int             *piAdvance,
  [in]                const SCRIPT_ANALYSIS *psa,
  [in, out, optional] ABC                   *pABC,
  [out]               int                   *piJustify
);

Параметры

[in] piDx

Указатель на массив расширенных ширин в логическом порядке, по одному на кодовую точку.

[in] cChars

Количество точек логического кода в выполнении.

[in] cGlyphs

Число глифов.

[in] pwLogClust

Указатель на массив логических кластеров из ScriptShape.

[in] psva

Указатель на структуру SCRIPT_VISATTR из ScriptShape и обновленную с помощью ScriptPlace.

[in] piAdvance

Указатель на массив расширенных ширин глифов из ScriptPlace.

[in] psa

Указатель на структуру SCRIPT_ANALYSIS из ScriptItemize и обновленную с помощью ScriptShape и ScriptPlace.

[in, out, optional] pABC

Указатель на общую ширину ABC для выполнения. Во входных данных параметр должен содержать ширины выполнения ABC, полученные ScriptPlace. В выходных данных параметр указывает ширину ABC, обновленную в соответствии с новыми значениями ширины.

[out] piJustify

Указатель на массив, в котором функция извлекает ширину глифа. Этот массив подходит для передачи в параметр piJustifyобъекта ScriptTextOut.

Возвращаемое значение

Возвращает 0 в случае успеха. Функция возвращает ненулевое значение HRESULT, если это не удалось. Приложение может проверить возвращаемое значение с помощью макросов SUCCEEDED и FAILED .

Комментарии

Эту функцию можно использовать для повторного применения логических ширин, полученных с помощью ScriptGetLogicalWidths. Это может быть полезно в таких ситуациях, как метафилинг, для которого сведения о ширине заранее должны быть записаны и повторно применяться шрифтом независимо от подстановок глифов, таких как лигатуризация.

Важно Начиная с Windows 8. Чтобы поддерживать возможность запуска в Windows 7, модуль, использующий Uniscribe, должен указать Usp10.lib перед gdi32.lib в списке библиотек.
 

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header usp10.h
Библиотека Usp10.lib
DLL Usp10.dll
Распространяемые компоненты Internet Обозреватель 5 или более поздней версии в Windows Me/98/95

См. также раздел

SCRIPT_ANALYSIS

SCRIPT_VISATTR

ScriptGetLogicalWidths

ScriptItemize

ScriptPlace

ScriptShape

ScriptTextOut

Одноимесяца

Функции uniscribe