Método IDWriteFontFace::TryGetFontTable (dwrite.h)

Localiza a tabela de fontes OpenType especificada se ela existir e retorna um ponteiro para ela. A função acessa os dados de fonte subjacentes por meio da interface IDWriteFontFileStream implementada pelo carregador de arquivos de fonte.

Sintaxe

HRESULT TryGetFontTable(
  [in]  UINT32     openTypeTableTag,
  [out] const void **tableData,
  [out] UINT32     *tableSize,
  [out] void       **tableContext,
  [out] BOOL       *exists
);

Parâmetros

[in] openTypeTableTag

Tipo: UINT32

A marca de quatro caracteres de uma tabela de fontes OpenType a ser encontrada. Use a macro DWRITE_MAKE_OPENTYPE_TAG para criá-la como um UINT32. Ao contrário do GDI, ele não dá suporte a TTCF especial e marcas nulas para acessar toda a fonte.

[out] tableData

Tipo: const void**

Quando esse método retorna, contém o endereço de um ponteiro para a base da tabela na memória. O ponteiro é válido somente desde que a face da fonte usada para obter a tabela de fontes ainda exista; (não qualquer outro rosto de fonte, mesmo que ele realmente se refira à mesma fonte física). Este parâmetro é passado não inicializado.

[out] tableSize

Tipo: UINT32*

Quando esse método retorna, contém um ponteiro para o tamanho, em bytes, da tabela de fontes.

[out] tableContext

Tipo: void**

Quando esse método retorna, o endereço de um ponteiro para o contexto opaco, que deve ser liberado chamando ReleaseFontTable. Na verdade, o contexto vem do IDWriteFontFileStream de nível inferior, que pode ser implementado pelo aplicativo ou pelo próprio DWrite. É possível que um tableContextNULL seja retornado, especialmente se a implementação executar o mapeamento de memória direta em todo o arquivo. No entanto, sempre libere-o mais tarde e não o use como um teste para o sucesso da função. A mesma tabela pode ser consultada várias vezes, mas como cada contexto retornado pode ser diferente, você deve liberar cada contexto separadamente.

[out] exists

Tipo: BOOL*

Quando este método retornar, TRUE se a tabela de fontes existir; caso contrário, FALSE.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

O contexto para a mesma marca pode ser diferente para cada chamada, portanto, cada uma deve ser mantida e liberada separadamente.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 7, Windows Vista com SP2 e Atualização de Plataforma para Windows Vista [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2008 R2, Windows Server 2008 com SP2 e Platform Update para Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho dwrite.h
Biblioteca Dwrite.lib
DLL Dwrite.dll

Confira também

IDWriteFontFace