THotPDF.SetLoadedFreeTextText Method
Substitui a aparência normal de uma anotação FreeText carregada usando fontes Unicode embutidas, rich text opcional e uma transação atômica de grafo
Declaração
procedure SetLoadedFreeTextText(PageIndex, AnnotationIndex: Integer;
const AText: UnicodeString; const Options: THPDFLoadedTextAppearanceOptions;
const RichContent: AnsiString = ''; const DefaultStyle: AnsiString = '');
Opções
Inicialize o record com THPDFLoadedTextAppearanceOptions.Default antes de alterar campos individuais
| Campo | Comportamento |
|---|---|
| FontName, FontStyle, FontSize | Fonte primária, estilo e tamanho em pontos; os padrões são Arial, regular e 12 pontos |
| TextColor, Alignment, Padding | Cor do texto simples, alinhamento esquerda/centro/direita e padding em pontos; os padrões são preto, esquerda e 2 pontos |
| Opacity, Rotation | Opacidade em [0,1] e rotação em múltiplos de 90 graus |
| OverflowPolicy | THPDFLoadedTextOverflowPolicy: ltopReject rejeita o overflow, ltopClip o recorta, e ltopShrinkToFit tenta novamente com fontes menores |
| MinFontSize | Limite inferior para a redução, padrão de 4 pontos |
| MaxTextUnits | Orçamento de entrada e de texto simples, padrão de 1.048.576 unidades UTF-16; a entrada rich text é limitada a quatro vezes este orçamento |
Comportamento
O AText fornece texto Unicode simples; um RichContent UTF-8 não vazio usa em vez disso o importador HTML e um DefaultStyle CSS opcional, e depois deriva o /Contents do texto gerado
A aparência gerada copia fontes embutidas e mapeamentos ToUnicode para o documento carregado, então salvar, achatar e extrair texto preserva o texto Unicode dela
O método herda as cadeias de fallback de fonte configuradas, o ShapingFeatures, as chaves de auto-shaping para árabe, siríaco, N'Ko, Adlam e Hanifi Rohingya, e as seleções de script e idioma do GSUB; cada tentativa de shrink-to-fit usa as mesmas configurações sem alterar a configuração do chamador
O método preserva background suportado, borda sólida/tracejada, insets de retângulo e geometria de callout de dois/três pontos, e sincroniza os metadados de /AP, /Contents, /RC, /DS, /CA, /Q e rotação
Geometria inválida, glifos de texto simples não resolvidos, bordas cloudy, limites de recursos e overflow rejeitado lançam uma exceção e fazem rollback de toda a atualização; transações de grafo externas existentes permanecem ativas
Rich text segue o subconjunto HTML/CSS suportado; recursos externos ficam desativados, e tamanhos fixos de fonte CSS podem impedir o shrink-to-fit de reduzir runs individuais
Cada escritor de aparência aceita no máximo 256 seleções distintas de fontes de shaping e 64 MiB de dados brutos de fonte acumulados; exceder qualquer um dos limites rejeita a atualização e preserva a anotação original
APIs relacionadas
- SetLoadedFreeTextRichText usa este pipeline de aparência com overflow de clip
- SetLoadedFreeTextPlainText mantém seu contrato ASCII original
- SetLoadedAnnotationContents edita apenas o conteúdo armazenado