PDFium Component Docs

Unidad FPdfTextShaping

Unidad: FPdfTextShaping
Moldea texto Unicode bidireccional en ejecuciones visuales de glifos para TPdf.AddShapedText, con tamaños de entrada y salida acotados y una clase base de moldeado extensible

Workflow

APIPurpose
ShapePdfText(Text, FontName, FontSize, Direction, out Shaped)Moldea texto con la implementación integrada de Windows Uniscribe y límites de recursos predeterminados
TPdfTextShaper.ShapeContrato abstracto de moldeado para motores personalizados que devuelven identificadores de glifos, grupos, ejecuciones visuales, avances y datos de la fuente seleccionada
TPdfUniscribeTextShaper.ShapeUsa usp10.dll para itemizar, moldear, 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, reemplazando al integrado durante el resto del proceso; la unidad toma la propiedad de la instancia
ClearTextShaperQuita un backend instalado y regresa 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 reporta el backend activo, para el registro de logs y para distinguir una implementación de otra

Public types

TypeDescription
EPdfTextShapingErrorExcepción generada por entradas inválidas, violaciones de límites de recursos, fallos de datos de fuente o errores del motor de moldeado
TPdfTextDirectionptdAuto, ptdLeftToRight o ptdRightToLeft
TPdfShapedGlyphUn glifo con GlyphID, Advance, OffsetX, OffsetY, ClusterStart y ClusterLength
TPdfShapedGlyphsArreglo dinámico de registros TPdfShapedGlyph
TPdfShapedRunUna ejecución visual con TextStart, TextLength, VisualX, Width, BidiLevel, IsRightToLeft y Glyphs
TPdfShapedRunsArreglo dinámico de registros TPdfShapedRun en orden visual
TPdfShapedTextText de origen, FontName seleccionado, FontSize, FontData incorporado, Runs moldeados, Width total, GlyphCount y LogicalCharacterCount
TPdfTextShapingOptionsLímites de recursos Direction, MaxCharacters, MaxGlyphs y MaxRuns
TPdfTextShaperClase base abstracta para una implementación de moldeado proporcionada por quien llama
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