PDFium Delphi Component Docs

Unidade FPdfTextShaping

Unidade: FPdfTextShaping
Molda texto Unicode bidirecional em sequências visuais de glifos para TPdf.AddShapedText, com tamanhos de entrada e saída limitados e uma classe base de moldador extensível

Workflow

APIFinalidade
ShapePdfText(Text, FontName, FontSize, Direction, out Shaped)Molda texto com a implementação Uniscribe incorporada do Windows e limites de recursos predefinidos
TPdfTextShaper.ShapeContrato abstrato de moldagem para motores personalizados que devolvem identificadores de glifos, clusters, sequências visuais, avanços e dados da fonte selecionada
TPdfUniscribeTextShaper.ShapeUsa usp10.dll para itemizar, moldar, colocar e reordenar visualmente sequências de texto
TPdfTextShapingOptions.DefaultDevolve direção automática com limites de 1,000,000 caracteres, 2,000,000 glifos e 100,000 sequências
ConfigureTextShaper(Shaper)Instala o backend de shaping usado pela unidade, substituindo o integrado pelo resto do processo; a unidade fica com a propriedade da instância
ClearTextShaperRemove um backend instalado e regressa à predefinição da plataforma
ActiveTextShaperO backend atualmente em uso, ou nil quando não há nenhum shaper disponível nesta plataforma
ActiveTextShaperNameO nome que o backend ativo comunica, para registos e para distinguir uma implementação de outra

Public types

TipoDescrição
EPdfTextShapingErrorExceção lançada para entradas inválidas, violações de limites de recursos, falhas de dados de fonte ou erros do motor de moldagem
TPdfTextDirectionptdAuto, ptdLeftToRight ou ptdRightToLeft
TPdfShapedGlyphUm glifo com GlyphID, Advance, OffsetX, OffsetY, ClusterStart e ClusterLength
TPdfShapedGlyphsArray dinâmico de records TPdfShapedGlyph
TPdfShapedRunUma sequência visual com TextStart, TextLength, VisualX, Width, BidiLevel, IsRightToLeft e Glyphs
TPdfShapedRunsArray dinâmico de records TPdfShapedRun em ordem visual
TPdfShapedTextTexto de origem Text, fonte selecionada FontName, FontSize, FontData incorporada, Runs moldadas, Width total, GlyphCount e LogicalCharacterCount
TPdfTextShapingOptionsLimites de recursos Direction, MaxCharacters, MaxGlyphs e MaxRuns
TPdfTextShaperClasse base abstrata para uma implementação de moldagem fornecida pelo chamador
TPdfUniscribeTextShaperImplementação incorporada do Windows de TPdfTextShaper

Remarks

Example

var
  Shaped: TPdfShapedText;
  MeasuredWidth: Single;
begin
  if ShapePdfText(Text, 'Segoe UI', 12, ptdAuto, Shaped) then
    MeasuredWidth := Shaped.Width;
end;

See Also

TPdf.AddShapedText