PDFium Delphi Component Docs

CharacterIsHyphen Egenskap

Component: TPdf  ·  Unit: PDFium
Returnerar True när tecknet vid det angivna indexet känns igen som ett mjukt bindestreck som används för radbrytning vid radslut. Användbart när ord ska återskapas över radbrytningar utan att behålla det synliga bindestrecket

Syntax

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

IndexNollbaserat teckenindex på den aktuella sidan, i intervallet 0 till CharacterCount - 1

Description

CharacterIsHyphen returnerar True när PDFium klassificerar tecknet vid Index som ett mjukt (radbrytande) bindestreck i stället för ett vanligt bindestreck som hör till ett sammansatt ord. Klassificeringen är heuristisk: den tittar på tecknets Unicode-kodpunkt, positionen vid radslutet och närheten till det följande textavsnittet för att avgöra om bindestrecket ska behållas när rader fogas samman

Mjuka bindestreck infogas av typsättningsmotorer (LaTeX, Word, InDesign) för att dela långa ord över rader. När du kopierar text från en PDF-visare kastas det mjuka bindestrecket normalt bort så att "high-
way" klistras in som highway i stället för som high-way. Egenskapen låter din egen extraheringskod återskapa det beteendet

Egenskapen skiljer inte på Unicode-tecknet mjukt bindestreck (U+00AD) och ett vanligt bindestreck-minus (U+002D) som råkar ligga vid ett radslut — båda rapporterar True i de situationerna. Om du bara vill ha fallet U+00AD, jämför Character[Index] direkt

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