DrawOpenTypeText

Texto, fontes, shaping OpenType

Descrição

Faz o shaping de texto Unicode e o desenha a partir do programa de fonte em memória associado a um handle de fonte existente

Sintaxe

Delphi

Function TPDFlib.DrawOpenTypeText(XPos, YPos: Double; FontID: Integer; Size: Double; Const Text: WideString; Options: Integer): Integer;

Parâmetros

XPos, YPosA origem do texto em unidades de página
FontIDUm handle de fonte TrueType ou OpenType cujo programa de fonte de origem está disponível
SizeO tamanho do texto em pontos
TextO texto Unicode a aplicar shaping e desenhar
OptionsO bit 0 seleciona direção da direita para a esquerda; o bit 1 força o fallback Pascal limitado instead of the native OpenType engine

Valores retornados

Retorna 1 quando o texto com shaping é aceito e 0 para uma fonte inválida, texto vazio, tamanho não positivo, programa de fonte ausente ou falha de shaping

Observações

O motor nativo portátil aplica shaping de script OpenType, substituições GSUB, posicionamento GPOS e ordenação visual de glifos diretamente dos bytes da fonte, sem exigir uma face de sistema instalada

O fallback Pascal delimitado suporta mapeamento cmap, junção árabe, substituições GSUB padrão e lookups GPOS comuns single, pair, cursive e mark attachment quando o módulo nativo não está disponível

A saída usa uma fonte companheira Identity-H reutilizável, cria o subconjunto do programa embutido pelo closure de glifos, retém as tabelas necessárias de fontes variáveis e de cores e grava os clusters de origem no ToUnicode para extração

Distribua PDFlibOpenType32.dll ou PDFlibOpenType64.dll junto ao executável no Windows; use libPDFlibOpenType.so no Linux ou libPDFlibOpenType.dylib no macOS

PDFLIB_OPENTYPE_ENGINE pode indicar um caminho explícito de módulo nativo

Veja também

GetOpenTypeTextWidth, GetOpenTypeGlyphRun, DrawShapedText