PDFium Delphi Component Docs

FPdfTextShaping Unidad

Unit: FPdfTextShaping
Da forma al texto Unicode bidireccional en ejecuciones visuales de glifos para TPdf.AddShapedText, con tamaños de entrada y salida acotados y una clase base de formador extensible

Workflow

APIPurpose
ShapePdfText(Text, FontName, FontSize, Direction, out Shaped)Da forma al texto con la implementación integrada de Windows Uniscribe y los límites de recursos predeterminados
TPdfTextShaper.ShapeContrato abstracto de formación para motores personalizados que devuelven identificadores de glifos, grupos, ejecuciones visuales, avances y datos de la fuente seleccionada
TPdfUniscribeTextShaper.ShapeUsa usp10.dll para itemizar, dar forma, colocar y reordenar visualmente las ejecuciones de texto
TPdfTextShapingOptions.DefaultDevuelve dirección automática con límites de 1,000,000 caracteres, 2,000,000 glifos y 100,000 ejecuciones
ConfigureTextShaper(Shaper)Instala el backend de shaping que usa la unidad, sustituyendo al integrado durante el resto del proceso; la unidad se queda con la propiedad de la instancia
ClearTextShaperRetira un backend instalado y vuelve al valor predeterminado de la plataforma
ActiveTextShaperEl backend en uso en este momento, o nil cuando no hay ningún shaper disponible en esta plataforma
ActiveTextShaperNameNombre que informa el backend activo, para el registro de logs y para distinguir una implementación de otra

Public types

TypeDescription
EPdfTextShapingErrorExcepción lanzada por entradas no válidas, violaciones de límites de recursos, fallos de datos de fuente o errores del motor de formación
TPdfTextDirectionptdAuto, ptdLeftToRight o ptdRightToLeft
TPdfShapedGlyphUn glifo con GlyphID, Advance, OffsetX, OffsetY, ClusterStart y ClusterLength
TPdfShapedGlyphsMatriz dinámica de registros TPdfShapedGlyph
TPdfShapedRunUna ejecución visual con TextStart, TextLength, VisualX, Width, BidiLevel, IsRightToLeft y Glyphs
TPdfShapedRunsMatriz dinámica de registros TPdfShapedRun en orden visual
TPdfShapedTextText de origen, FontName seleccionado, FontSize, FontData incrustado, Runs resultantes de la formación, Width total, GlyphCount y LogicalCharacterCount
TPdfTextShapingOptionsLímites de recursos Direction, MaxCharacters, MaxGlyphs y MaxRuns
TPdfTextShaperClase base abstracta para una implementación de formación proporcionada por el llamador
TPdfUniscribeTextShaperImplementación integrada de 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