Функция DWriteCreateFactory (dwrite.h)

Создает объект фабрики DirectWrite, который используется для последующего создания отдельных объектов DirectWrite.

Синтаксис

HRESULT DWriteCreateFactory(
  [in]  DWRITE_FACTORY_TYPE factoryType,
  [in]  REFIID              iid,
  [out] IUnknown            **factory
);

Параметры

[in] factoryType

Тип: DWRITE_FACTORY_TYPE

Значение типа , указывающее, будет ли объект фабрики общим или изолированным.

[in] iid

Тип: REFIID

Значение GUID, определяющее интерфейс фабрики DirectWrite, например __uuidof(IDWriteFactory).

[out] factory

Тип: IUnknown**

Адрес указателя на вновь созданный объект фабрики DirectWrite.

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

Тип: HRESULT

Если эта функция завершается успешно, она возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Комментарии

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

В следующем примере показано, как создать общую фабрику DirectWrite.


if (SUCCEEDED(hr))
{
    hr = DWriteCreateFactory(
        DWRITE_FACTORY_TYPE_SHARED,
        __uuidof(IDWriteFactory),
        reinterpret_cast<IUnknown**>(&pDWriteFactory_)
        );
}


Требования

Требование Значение
Минимальная версия клиента Windows 7, Windows Vista с пакетом обновления 2 (SP2) и обновлением платформы для Windows Vista [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header dwrite.h
Библиотека Dwrite.lib
DLL Dwrite.dll