PDFium Delphi Component Docs

Propiedad CharacterIsHyphen

Componente: TPdf  ·  Unidad: PDFium
Devuelve True cuando el carácter en el índice especificado se reconoce como un guion suave usado para separar palabras al final de línea. Útil al reconstruir palabras a través de saltos de línea sin conservar la marca visible del guion

Syntax

property CharacterIsHyphen[Index: Integer]: Boolean; // read only

IndexÍndice de carácter basado en cero en la página actual, en el rango de 0 a CharacterCount - 1

Description

CharacterIsHyphen devuelve True cuando PDFium clasifica el carácter en Index como un guion suave (de salto de línea) en lugar de un guion regular que pertenece a una palabra compuesta. La clasificación es heurística: examina el punto de código Unicode del carácter, la posición al final de línea y la proximidad de la ejecución de texto siguiente para decidir si el guion debe conservarse al unir líneas

Los guiones suaves los insertan los motores de composición tipográfica (LaTeX, Word, InDesign) para dividir palabras largas entre líneas. Cuando copia texto de un visor de PDF, el guion suave normalmente se descarta, de modo que "high-
way" se pega como highway en lugar de como high-way. Esta propiedad permite que su propio código de extracción reproduzca ese comportamiento

La propiedad no distingue el guion suave de Unicode (U+00AD) de un guion-menos regular (U+002D) que resulte estar al final de una línea — ambos informarán True en esas situaciones. Si solo quiere el caso U+00AD, compare Character[Index] directamente

Remarks

Example

// Reconstruct words across line wraps, dropping soft hyphens
var
  I: Integer;
  S: WString;
begin
  S := '';
  for I := 0 to Pdf.CharacterCount - 1 do
    if not Pdf.CharacterIsHyphen[I] then
      S := S + Pdf.Character[I];
  Memo1.Text := S;
end;

See Also

Character, CharacterGenerated, CharacterCount, Text