Fuente de respaldo y texto vertical

HotPDF puede seleccionar tipografías de respaldo por script Unicode, reportar los puntos de código que siguen sin resolverse y escribir texto CJK mediante un modo de escritura CID vertical real

Cadenas de respaldo a nivel de documento

THotPDF.SetFontFallbackChain almacena una lista ordenada de tipografías para una categoría de THPDFFontScript

THPDFPage.TextOutWithFallback resuelve cada escalar Unicode contra la tipografía seleccionada, su cadena de script y la cadena común, y luego emite los escalares adyacentes con la misma tipografía como una sola ejecución de texto

Diagnósticos procesables

AnalyzeUnresolvedGlyphs realiza una auditoría de cobertura de solo lectura, mientras que TextOutWithFallback registra los escalares no resueltos que se encontraron durante la salida

Cada THPDFUnresolvedGlyphInfo incluye el punto de código escalar, la tipografía primaria, el script clasificado y una lista de sugerencias de respaldo separada por punto y coma

GetUnresolvedGlyphs devuelve el informe actual del documento y ClearUnresolvedGlyphs inicia un nuevo intervalo de reporte

Las sobrecargas con estilo explícito de THotPDF.ResolveFontForCodePoint y THotPDF.AnalyzeUnresolvedGlyphs aceptan TFontStyles, de modo que el preflight puede inspeccionar la misma variante usada para la salida; sus sobrecargas originales siguen inspeccionando las variantes regular

Los cuadros de texto, el texto embebido SVG y las apariencias de texto cargadas conservan las familias de fuentes con estilo a través del layout de respaldo, en lugar de tratar los nombres internos de fuentes PDF como familias del sistema o cambiar cada ejecución a una variante regular

Escritura CJK vertical

THPDFPage.TextOutVertical selecciona la variante vertical de la tipografía actual y emite una ejecución de texto Identity-V en lugar de posicionar cada carácter manualmente

Ejemplo

PDF.SetFontFallbackChain(hfsCJK,
  ['Microsoft YaHei UI', 'Yu Gothic UI', 'Malgun Gothic']);
PDF.SetFontFallbackChain(hfsEmoji, ['Segoe UI Emoji']);

PDF.CurrentPage.SetFont('Arial', [], 12);
PDF.CurrentPage.TextOutWithFallback(72, 72, 0, Text);

PDF.CurrentPage.SetFont('Yu Gothic UI', [], 14);
PDF.CurrentPage.TextOutVertical(420, 72, VerticalText);

Missing := PDF.GetUnresolvedGlyphs;

APIs relacionadas