Class TBidiTextLayout
Unit
Declaration
type TBidiTextLayout = class(TObject)
Description
Computes, updates, and render text using Unicode bidirectional algorithm
Hierarchy
- TObject
- TBidiTextLayout
Overview
Fields
FAnalysis: TUnicodeAnalysis; |
|
FColor: TBGRAPixel; |
|
FComputedBrokenLineCount: integer; |
|
FComputedPartCount: integer; |
|
FLineHeight: single; |
|
FParagraph: array of TParagraphInfo; |
|
FRenderer: TBGRACustomFontRenderer; |
|
FTexture: IBGRAScanner; |
Methods
constructor Create(AFontRenderer: TBGRACustomFontRenderer; sUTF8: string); overload; |
|
constructor Create(AFontRenderer: TBGRACustomFontRenderer; sUTF8: string; ARightToLeft: boolean); overload; |
|
constructor Create(AFontRenderer: TBGRACustomFontRenderer; sUTF8: string; AFontBidiMode: TFontBidiMode); overload; |
|
destructor Destroy; override; |
|
function AddOverrideIfNecessary(var sUTF8: string; ARightToLeft: boolean): boolean; |
|
function CopyText(APosition, ACount: integer): string; |
|
function CopyTextBefore(APosition, ACount: integer): string; |
|
function DeleteText(APosition, ACount: integer): integer; |
|
function DeleteTextBefore(APosition, ACount: integer): integer; |
|
function FindTextAbove(AFromPosition: integer): integer; |
|
function FindTextBelow(AFromPosition: integer): integer; |
|
function GetBrokenLineAt(ACharIndex: integer): integer; |
|
function GetCaret(ACharIndex: integer): TBidiCaretPos; |
|
function GetCharIndexAt(APosition: TPointF; ABetweenGlyphs: boolean = true): integer; |
|
function GetParagraphAt(ACharIndex: Integer): integer; overload; |
|
function GetParagraphAt(APosition: TPointF): integer; overload; |
|
function GetTextEnveloppe(AStartIndex, AEndIndex: integer; APixelCenteredCoordinates: boolean = true; AMergeBoxes: boolean = true; AVerticalClip: boolean = false): ArrayOfTPointF; |
|
function GetTextPart(APartIndex: integer; AAddOverrideIfNecessary: boolean): string; |
|
function GetUntransformedCaret(ACharIndex: integer): TBidiCaretPos; |
|
function GetUntransformedTextEnveloppe(AStartIndex, AEndIndex: integer; APixelCenteredCoordinates: boolean = true; AMergeBoxes: boolean = true; AVerticalClip: boolean = false): ArrayOfTPointF; |
|
function IncludeNonSpacingChars(APosition, ACount: integer; AIncludeCombiningMarks: boolean = true): integer; |
|
function IncludeNonSpacingCharsBefore(APosition, ACount: integer; AIncludeCombiningMarks: boolean = true): integer; |
|
function InsertLineSeparator(APosition: integer): integer; |
|
function InsertText(ATextUTF8: string; APosition: integer): integer; |
|
function ComputeBidiTree(AMaxWidth: single; startIndex, endIndex: integer; bidiLevel: byte): TBidiTree; |
|
function GetFontBaseline: single; |
|
function GetFontFullHeight: single; |
|
function GetFontOrientation: single; |
|
function GetPartEndCaret(APartIndex: integer): TBidiCaretPos; |
|
function GetPartStartCaret(APartIndex: integer): TBidiCaretPos; |
|
function GetSameLevelString(startIndex,endIndex: integer; out nonDiscardedCount: integer): string; overload; |
|
function GetSameLevelString(startIndex,endIndex: integer): string; overload; |
|
function GetUntransformedParagraphAt(APosition: TPointF): integer; overload; |
|
function GetUntransformedPartEndCaret(APartIndex: integer; APart: PPartInfo): TBidiCaretPos; |
|
function GetUntransformedPartEndCaret(APartIndex: integer): TBidiCaretPos; |
|
function GetUntransformedPartStartCaret(APartIndex: integer; APrevPart, APart: PPartInfo): TBidiCaretPos; |
|
function GetUntransformedPartStartCaret(APartIndex: integer): TBidiCaretPos; |
|
function TextFitInfoBidiOverride(sUTF8: string; AWidth: single; ARightToLeft: boolean): integer; |
|
function TextSizeBidiOverride(sUTF8: string; ARightToLeft: boolean): TPointF; |
|
function TextSizeBidiOverrideSplit(AStartIndex, AEndIndex: integer; ARightToLeft: boolean; ASplitIndex: integer): TPointF; |
|
procedure ComputeLayoutIfNeeded; |
|
procedure DrawBrokenLines(ADest: TBGRACustomBitmap; AFirstBroken, ALastBrokenPlus1: integer); overload; |
|
procedure DrawBrokenLines(ADest: TBGRACustomBitmap; ATexture: IBGRAScanner; AFirstBroken, ALastBrokenPlus1: integer); overload; |
|
procedure DrawBrokenLines(ADest: TBGRACustomBitmap; AColor: TBGRAPixel; AFirstBroken, ALastBrokenPlus1: integer); overload; |
|
procedure DrawCaret(ADest: TBGRACustomBitmap; ACharIndex: integer; AMainColor, ASecondaryColor: TBGRAPixel); |
|
procedure DrawParagraphs(ADest: TBGRACustomBitmap; AColor: TBGRAPixel; AFirstPara, ALastParaPlus1: integer); overload; |
|
procedure DrawParagraphs(ADest: TBGRACustomBitmap; AFirstPara, ALastParaPlus1: integer); overload; |
|
procedure DrawParagraphs(ADest: TBGRACustomBitmap; ATexture: IBGRAScanner; AFirstPara, ALastParaPlus1: integer); overload; |
|
procedure DrawSelection(ADest: TBGRACustomBitmap; AStartIndex, AEndIndex: integer; AFillColor: TBGRAPixel; ABorderColor: TBGRAPixel; APenWidth: single); overload; |
|
procedure DrawSelection(ADest: TBGRACustomBitmap; AStartIndex, AEndIndex: integer; AFillColor: TBGRAPixel); overload; |
|
procedure DrawText(ADest: TBGRACustomBitmap); overload; |
|
procedure DrawText(ADest: TBGRACustomBitmap; AColor: TBGRAPixel); overload; |
|
procedure DrawText(ADest: TBGRACustomBitmap; ATexture: IBGRAScanner); overload; |
|
procedure DrawTextParts(ADest: TBGRACustomBitmap; ATexture: IBGRAScanner; AFirstPart, ALastPartPlus1: integer); overload; |
|
procedure DrawTextParts(ADest: TBGRACustomBitmap; AFirstPart, ALastPartPlus1: integer); overload; |
|
procedure DrawTextParts(ADest: TBGRACustomBitmap; AColor: TBGRAPixel; AFirstPart, ALastPartPlus1: integer); overload; |
|
procedure InvalidateLayout; |
|
procedure PathBrokenLines(ADest: IBGRAPath; AFirstBroken, ALastBrokenPlus1: integer); overload; |
|
procedure PathBrokenLines(ADest: IBGRAPath; AClipRect: TRect; AFirstBroken, ALastBrokenPlus1: integer); overload; |
|
procedure PathParagraphs(ADest: IBGRAPath; AClipRect: TRect; AFirstPara, ALastParaPlus1: integer); overload; |
|
procedure PathParagraphs(ADest: IBGRAPath; AFirstPara, ALastParaPlus1: integer); overload; |
|
procedure PathText(ADest: IBGRAPath); |
|
procedure PathText(ADest: IBGRAPath; AClipRect: TRect); |
|
procedure PathTextParts(ADest: IBGRAPath; AFirstPart, ALastPartPlus1: integer); overload; |
|
procedure PathTextParts(ADest: IBGRAPath; AClipRect: TRect; AFirstPart, ALastPartPlus1: integer); overload; |
|
procedure SetLayout(ARect: TRectF); |
|
procedure AddPart(AStartIndex, AEndIndex: integer; ABidiLevel: byte; ARectF: TRectF; APosCorrection: TPointF; ABrokenLineIndex: integer; ABrokenLine: PBrokenLineInfo); |
|
procedure AddPartsFromTree(APos: TPointF; ATree: TBidiTree; fullHeight, baseLine: single; ABrokenLineIndex: integer; ABrokenLine: PBrokenLineInfo); |
|
procedure AnalysisChanged(ASender: TObject; AParagraphIndex: integer; ACharStart, ACharCount: integer); |
|
procedure BidiModeChanged(ASender: TObject); |
|
procedure CharDeleted(ASender: TObject; AParagraphIndex: integer; ACharStart, ACharCount: integer); |
|
procedure CharInserted(ASender: TObject; AParagraphIndex: integer; ACharStart, ACharCount: integer); |
|
procedure CheckTextLayout; |
|
procedure ComputeLayout; virtual; |
|
procedure Init(ATextUTF8: string; ABidiMode: TFontBidiMode); virtual; |
|
procedure InternalDrawText(ADest: TBGRACustomBitmap); |
|
procedure InternalDrawTextParts(ADest: TBGRACustomBitmap; AFirstPart, ALastPartPlus1: integer); |
|
procedure InternalInvalidateParagraphLayout(AParagraphIndex: integer); |
|
procedure InternalParagraphDeleted(AParagraphIndex: integer); |
|
procedure InternalPathText(ADest: IBGRAPath); overload; |
|
procedure InternalPathText(ADest: IBGRAPath; AClipRect: TRect); overload; |
|
procedure InternalPathTextParts(ADest: IBGRAPath; AFirstPart, ALastPartPlus1: integer); overload; |
|
procedure InternalPathTextParts(ADest: IBGRAPath; AClipRect: TRect; AFirstPart, ALastPartPlus1: integer); overload; |
|
procedure InternalRangeError; |
|
procedure InvalidateParagraphLayout(AParagraphIndex: integer); |
|
procedure NeedLayout; |
|
procedure OffsetParagraph(AParagraphIndex: integer; ADeltaY: single; ADeltaBroken, ADeltaPart: integer); |
|
procedure OffsetParagraphCharIndex(AParagraphIndex: integer; ADeltaChar: integer); |
|
procedure ParagraphDeleted(ASender: TObject; AParagraphIndex: integer); |
|
procedure ParagraphMergedWithNext(ASender: TObject; AParagraphIndex: integer); |
|
procedure ParagraphSplit(ASender: TObject; AParagraphIndex: integer; ACharIndex: integer); |
|
procedure TextOutBidiOverride(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; ARightToLeft: boolean); |
|
procedure TextPathBidiOverride(ADest: IBGRAPath; x, y: single; sUTF8: string; ARightToLeft: boolean); |
|
procedure TrimParagraphLayoutVertically(AParagraphIndex: integer); |
Properties
property AvailableHeight: single read FAvailableHeight write SetAvailableHeight; |
|
property AvailableWidth: single read FAvailableWidth write SetAvailableWidth; |
|
property BrokenLineAffineBox[AIndex: integer]: TAffineBox read GetBrokenLineAffineBox; |
|
property BrokenLineCount: integer read GetBrokenLineCount; |
|
property BrokenLineEndCaret[AIndex: integer]: TBidiCaretPos read GetBrokenLineEndCaret; |
|
property BrokenLineEndIndex[AIndex: integer]: integer read GetBrokenLineEndIndex; |
|
property BrokenLineEndPart[AIndex: integer]: integer read GetBrokenLineEndPart; |
|
property BrokenLineParagraphIndex[AIndex: integer]: integer read GetBrokenLineParagraphIndex; |
|
property BrokenLineRectF[AIndex: integer]: TRectF read GetBrokenLineRectF; |
|
property BrokenLineRightToLeft[AIndex: integer]: boolean read GetBrokenLineRightToLeft; |
|
property BrokenLineStartCaret[AIndex: integer]: TBidiCaretPos read GetBrokenLineStartCaret; |
|
property BrokenLineStartIndex[AIndex: integer]: integer read GetBrokenLineStartIndex; |
|
property BrokenLineStartPart[AIndex: integer]: integer read GetBrokenLineStartPart; |
|
property BrokenLineUnbrokenIndex[AIndex: integer]: integer read GetBrokenLineUnbrokenIndex; |
|
property BrokenLineUsedWidth[AIndex: integer]: single read GetBrokenLineUsedWidth; |
|
property CharCount: integer read GetCharCount; |
|
property ClipMargin: integer read FClipMargin write FClipMargin; |
|
property FontBidiMode: TFontBidiMode read GetFontBidiMode write SetFontBidiMode; |
|
property FontRenderer: TBGRACustomFontRenderer read FRenderer write SetFontRenderer; |
|
property LayoutComputed: boolean read GetLayoutComputed; |
|
property LineHeight: single read GetLineHeight; |
|
property Matrix: TAffineMatrix read GetMatrix; |
|
property MatrixInverse: TAffineMatrix read GetMatrixInverse; |
|
property OnBrokenLinesChanged: TBrokenLinesChangedEvent read FOnBrokenLinesChanged write FOnBrokenLinesChanged; |
|
property OnParagraphChanged: TParagraphEvent read FOnParagraphChanged write FOnParagraphChanged; |
|
property OnParagraphDeleted : TParagraphEvent read FOnParagraphDeleted write FOnParagraphDeleted; |
|
property OnParagraphMergedWithNext: TParagraphEvent read FOnParagraphMergedWithNext write FOnParagraphMergedWithNext; |
|
property OnParagraphSplit: TParagraphLayoutSplitEvent read FOnParagraphSplit write FOnParagraphSplit; |
|
property OnParagraphVerticalTrimChanged: TParagraphEvent read FOnParagraphVerticalTrimChanged write FOnParagraphVerticalTrimChanged; |
|
property ParagraphAffineBox[AIndex: integer]: TAffineBox read GetParagraphAffineBox; |
|
property ParagraphAlignment[AIndex: integer]: TBidiTextAlignment read GetParagraphAlignment write SetParagraphAlignment; |
|
property ParagraphCount: integer read GetParagraphCount; |
|
property ParagraphEndBrokenLine[AIndex: integer]: integer read GetParagraphEndBrokenLine; |
|
property ParagraphEndIndex[AIndex: integer]: integer read GetParagraphEndIndex; |
|
property ParagraphEndIndexBeforeParagraphSeparator[AIndex: integer]: integer read GetParagraphEndIndexBeforeParagraphSeparator; |
|
property ParagraphEndPart[AIndex: integer]: integer read GetParagraphEndPart; |
|
property ParagraphRectF[AIndex: integer]: TRectF read GetParagraphRectF; |
|
property ParagraphRightToLeft[AIndex: integer]: boolean read GetParagraphRightToLeft; |
|
property ParagraphSpacingAbove: single read FParagraphSpacingAbove write SetParagraphSpacingAbove; |
|
property ParagraphSpacingBelow: single read FParagraphSpacingBelow write SetParagraphSpacingBelow; |
|
property ParagraphStartBrokenLine[AIndex: integer]: integer read GetParagraphStartBrokenLine; |
|
property ParagraphStartIndex[AIndex: integer]: integer read GetParagraphStartIndex; |
|
property ParagraphStartPart[AIndex: integer]: integer read GetParagraphStartPart; |
|
property PartAffineBox[AIndex: integer]: TAffineBox read GetPartAffineBox; |
|
property PartBrokenLineIndex[AIndex: integer]: integer read GetPartBrokenLineIndex; |
|
property PartCount: integer read GetPartCount; |
|
property PartEndCaret[AIndex: integer]: TBidiCaretPos read GetPartEndCaret; |
|
property PartEndIndex[AIndex: integer]: integer read GetPartEndIndex; |
|
property PartRectF[AIndex: integer]: TRectF read GetPartRectF; |
|
property PartRightToLeft[AIndex: integer]: boolean read GetPartRightToLeft; |
|
property PartStartCaret[AIndex: integer]: TBidiCaretPos read GetPartStartCaret; |
|
property PartStartIndex[AIndex: integer]: integer read GetPartStartIndex; |
|
property TabSize: single read FTabSize write SetTabSize; |
|
property TextUTF8: string read GetText; |
|
property TopLeft: TPointF read FTopLeft write SetTopLeft; |
|
property TotalTextHeight: single read GetTotalTextHeight; |
|
property UnicodeChar[APosition0: integer]: LongWord read GetUnicodeChar; |
|
property UsedWidth: single read GetUsedWidth; |
|
property UTF8Char[APosition0: integer]: string4 read GetUTF8Char; |
|
property WordBreakHandler: TWordBreakHandler read FWordBreakHandler write FWordBreakHandler; |
Description
Fields
FAnalysis: TUnicodeAnalysis; |
|
This item has no description. |
FColor: TBGRAPixel; |
|
This item has no description. |
FComputedBrokenLineCount: integer; |
|
This item has no description. |
FComputedPartCount: integer; |
|
This item has no description. |
FLineHeight: single; |
|
This item has no description. |
FParagraph: array of TParagraphInfo; |
|
This item has no description. |
FRenderer: TBGRACustomFontRenderer; |
|
This item has no description. |
FTexture: IBGRAScanner; |
|
This item has no description. |
Methods
constructor Create(AFontRenderer: TBGRACustomFontRenderer; sUTF8: string); overload; |
|
This item has no description. |
constructor Create(AFontRenderer: TBGRACustomFontRenderer; sUTF8: string; ARightToLeft: boolean); overload; |
|
This item has no description. |
constructor Create(AFontRenderer: TBGRACustomFontRenderer; sUTF8: string; AFontBidiMode: TFontBidiMode); overload; |
|
This item has no description. |
destructor Destroy; override; |
|
This item has no description. |
function AddOverrideIfNecessary(var sUTF8: string; ARightToLeft: boolean): boolean; |
|
This item has no description. |
function CopyText(APosition, ACount: integer): string; |
|
This item has no description. |
function CopyTextBefore(APosition, ACount: integer): string; |
|
This item has no description. |
function DeleteText(APosition, ACount: integer): integer; |
|
This item has no description. |
function DeleteTextBefore(APosition, ACount: integer): integer; |
|
This item has no description. |
function FindTextAbove(AFromPosition: integer): integer; |
|
This item has no description. |
function FindTextBelow(AFromPosition: integer): integer; |
|
This item has no description. |
function GetBrokenLineAt(ACharIndex: integer): integer; |
|
This item has no description. |
function GetCaret(ACharIndex: integer): TBidiCaretPos; |
|
This item has no description. |
function GetCharIndexAt(APosition: TPointF; ABetweenGlyphs: boolean = true): integer; |
|
This item has no description. |
function GetParagraphAt(ACharIndex: Integer): integer; overload; |
|
This item has no description. |
function GetParagraphAt(APosition: TPointF): integer; overload; |
|
This item has no description. |
function GetTextEnveloppe(AStartIndex, AEndIndex: integer; APixelCenteredCoordinates: boolean = true; AMergeBoxes: boolean = true; AVerticalClip: boolean = false): ArrayOfTPointF; |
|
This item has no description. |
function GetTextPart(APartIndex: integer; AAddOverrideIfNecessary: boolean): string; |
|
This item has no description. |
function GetUntransformedCaret(ACharIndex: integer): TBidiCaretPos; |
|
This item has no description. |
function GetUntransformedTextEnveloppe(AStartIndex, AEndIndex: integer; APixelCenteredCoordinates: boolean = true; AMergeBoxes: boolean = true; AVerticalClip: boolean = false): ArrayOfTPointF; |
|
This item has no description. |
function IncludeNonSpacingChars(APosition, ACount: integer; AIncludeCombiningMarks: boolean = true): integer; |
|
This item has no description. |
function IncludeNonSpacingCharsBefore(APosition, ACount: integer; AIncludeCombiningMarks: boolean = true): integer; |
|
This item has no description. |
function InsertLineSeparator(APosition: integer): integer; |
|
This item has no description. |
function InsertText(ATextUTF8: string; APosition: integer): integer; |
|
This item has no description. |
function ComputeBidiTree(AMaxWidth: single; startIndex, endIndex: integer; bidiLevel: byte): TBidiTree; |
|
This item has no description. |
function GetFontBaseline: single; |
|
This item has no description. |
function GetFontFullHeight: single; |
|
This item has no description. |
function GetFontOrientation: single; |
|
This item has no description. |
function GetPartEndCaret(APartIndex: integer): TBidiCaretPos; |
|
This item has no description. |
function GetPartStartCaret(APartIndex: integer): TBidiCaretPos; |
|
This item has no description. |
function GetSameLevelString(startIndex,endIndex: integer; out nonDiscardedCount: integer): string; overload; |
|
This item has no description. |
function GetSameLevelString(startIndex,endIndex: integer): string; overload; |
|
This item has no description. |
function GetUntransformedParagraphAt(APosition: TPointF): integer; overload; |
|
This item has no description. |
function GetUntransformedPartEndCaret(APartIndex: integer; APart: PPartInfo): TBidiCaretPos; |
|
This item has no description. |
function GetUntransformedPartEndCaret(APartIndex: integer): TBidiCaretPos; |
|
This item has no description. |
function GetUntransformedPartStartCaret(APartIndex: integer; APrevPart, APart: PPartInfo): TBidiCaretPos; |
|
This item has no description. |
function GetUntransformedPartStartCaret(APartIndex: integer): TBidiCaretPos; |
|
This item has no description. |
function TextFitInfoBidiOverride(sUTF8: string; AWidth: single; ARightToLeft: boolean): integer; |
|
This item has no description. |
function TextSizeBidiOverride(sUTF8: string; ARightToLeft: boolean): TPointF; |
|
This item has no description. |
function TextSizeBidiOverrideSplit(AStartIndex, AEndIndex: integer; ARightToLeft: boolean; ASplitIndex: integer): TPointF; |
|
This item has no description. |
procedure ComputeLayoutIfNeeded; |
|
This item has no description. |
procedure DrawBrokenLines(ADest: TBGRACustomBitmap; AFirstBroken, ALastBrokenPlus1: integer); overload; |
|
This item has no description. |
procedure DrawBrokenLines(ADest: TBGRACustomBitmap; ATexture: IBGRAScanner; AFirstBroken, ALastBrokenPlus1: integer); overload; |
|
This item has no description. |
procedure DrawBrokenLines(ADest: TBGRACustomBitmap; AColor: TBGRAPixel; AFirstBroken, ALastBrokenPlus1: integer); overload; |
|
This item has no description. |
procedure DrawCaret(ADest: TBGRACustomBitmap; ACharIndex: integer; AMainColor, ASecondaryColor: TBGRAPixel); |
|
This item has no description. |
procedure DrawParagraphs(ADest: TBGRACustomBitmap; AColor: TBGRAPixel; AFirstPara, ALastParaPlus1: integer); overload; |
|
This item has no description. |
procedure DrawParagraphs(ADest: TBGRACustomBitmap; AFirstPara, ALastParaPlus1: integer); overload; |
|
This item has no description. |
procedure DrawParagraphs(ADest: TBGRACustomBitmap; ATexture: IBGRAScanner; AFirstPara, ALastParaPlus1: integer); overload; |
|
This item has no description. |
procedure DrawSelection(ADest: TBGRACustomBitmap; AStartIndex, AEndIndex: integer; AFillColor: TBGRAPixel; ABorderColor: TBGRAPixel; APenWidth: single); overload; |
|
This item has no description. |
procedure DrawSelection(ADest: TBGRACustomBitmap; AStartIndex, AEndIndex: integer; AFillColor: TBGRAPixel); overload; |
|
This item has no description. |
procedure DrawText(ADest: TBGRACustomBitmap); overload; |
|
This item has no description. |
procedure DrawText(ADest: TBGRACustomBitmap; AColor: TBGRAPixel); overload; |
|
This item has no description. |
procedure DrawText(ADest: TBGRACustomBitmap; ATexture: IBGRAScanner); overload; |
|
This item has no description. |
procedure DrawTextParts(ADest: TBGRACustomBitmap; ATexture: IBGRAScanner; AFirstPart, ALastPartPlus1: integer); overload; |
|
This item has no description. |
procedure DrawTextParts(ADest: TBGRACustomBitmap; AFirstPart, ALastPartPlus1: integer); overload; |
|
This item has no description. |
procedure DrawTextParts(ADest: TBGRACustomBitmap; AColor: TBGRAPixel; AFirstPart, ALastPartPlus1: integer); overload; |
|
This item has no description. |
procedure InvalidateLayout; |
|
This item has no description. |
procedure PathBrokenLines(ADest: IBGRAPath; AFirstBroken, ALastBrokenPlus1: integer); overload; |
|
This item has no description. |
procedure PathBrokenLines(ADest: IBGRAPath; AClipRect: TRect; AFirstBroken, ALastBrokenPlus1: integer); overload; |
|
This item has no description. |
procedure PathParagraphs(ADest: IBGRAPath; AClipRect: TRect; AFirstPara, ALastParaPlus1: integer); overload; |
|
This item has no description. |
procedure PathParagraphs(ADest: IBGRAPath; AFirstPara, ALastParaPlus1: integer); overload; |
|
This item has no description. |
procedure PathText(ADest: IBGRAPath); |
|
This item has no description. |
procedure PathText(ADest: IBGRAPath; AClipRect: TRect); |
|
This item has no description. |
procedure PathTextParts(ADest: IBGRAPath; AFirstPart, ALastPartPlus1: integer); overload; |
|
This item has no description. |
procedure PathTextParts(ADest: IBGRAPath; AClipRect: TRect; AFirstPart, ALastPartPlus1: integer); overload; |
|
This item has no description. |
procedure SetLayout(ARect: TRectF); |
|
This item has no description. |
procedure AddPart(AStartIndex, AEndIndex: integer; ABidiLevel: byte; ARectF: TRectF; APosCorrection: TPointF; ABrokenLineIndex: integer; ABrokenLine: PBrokenLineInfo); |
|
This item has no description. |
procedure AddPartsFromTree(APos: TPointF; ATree: TBidiTree; fullHeight, baseLine: single; ABrokenLineIndex: integer; ABrokenLine: PBrokenLineInfo); |
|
This item has no description. |
procedure AnalysisChanged(ASender: TObject; AParagraphIndex: integer; ACharStart, ACharCount: integer); |
|
This item has no description. |
procedure BidiModeChanged(ASender: TObject); |
|
unicode analysis events |
procedure CharDeleted(ASender: TObject; AParagraphIndex: integer; ACharStart, ACharCount: integer); |
|
This item has no description. |
procedure CharInserted(ASender: TObject; AParagraphIndex: integer; ACharStart, ACharCount: integer); |
|
This item has no description. |
procedure CheckTextLayout; |
|
This item has no description. |
procedure ComputeLayout; virtual; |
|
This item has no description. |
procedure Init(ATextUTF8: string; ABidiMode: TFontBidiMode); virtual; |
|
This item has no description. |
procedure InternalDrawText(ADest: TBGRACustomBitmap); |
|
This item has no description. |
procedure InternalDrawTextParts(ADest: TBGRACustomBitmap; AFirstPart, ALastPartPlus1: integer); |
|
This item has no description. |
procedure InternalInvalidateParagraphLayout(AParagraphIndex: integer); |
|
This item has no description. |
procedure InternalParagraphDeleted(AParagraphIndex: integer); |
|
This item has no description. |
procedure InternalPathText(ADest: IBGRAPath); overload; |
|
This item has no description. |
procedure InternalPathText(ADest: IBGRAPath; AClipRect: TRect); overload; |
|
This item has no description. |
procedure InternalPathTextParts(ADest: IBGRAPath; AFirstPart, ALastPartPlus1: integer); overload; |
|
This item has no description. |
procedure InternalPathTextParts(ADest: IBGRAPath; AClipRect: TRect; AFirstPart, ALastPartPlus1: integer); overload; |
|
This item has no description. |
procedure InternalRangeError; |
|
This item has no description. |
procedure InvalidateParagraphLayout(AParagraphIndex: integer); |
|
This item has no description. |
procedure NeedLayout; |
|
This item has no description. |
procedure OffsetParagraph(AParagraphIndex: integer; ADeltaY: single; ADeltaBroken, ADeltaPart: integer); |
|
This item has no description. |
procedure OffsetParagraphCharIndex(AParagraphIndex: integer; ADeltaChar: integer); |
|
This item has no description. |
procedure ParagraphDeleted(ASender: TObject; AParagraphIndex: integer); |
|
This item has no description. |
procedure ParagraphMergedWithNext(ASender: TObject; AParagraphIndex: integer); |
|
This item has no description. |
procedure ParagraphSplit(ASender: TObject; AParagraphIndex: integer; ACharIndex: integer); |
|
This item has no description. |
procedure TextOutBidiOverride(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; ARightToLeft: boolean); |
|
This item has no description. |
procedure TextPathBidiOverride(ADest: IBGRAPath; x, y: single; sUTF8: string; ARightToLeft: boolean); |
|
This item has no description. |
procedure TrimParagraphLayoutVertically(AParagraphIndex: integer); |
|
This item has no description. |
Properties
property AvailableHeight: single read FAvailableHeight write SetAvailableHeight; |
|
This item has no description. |
property AvailableWidth: single read FAvailableWidth write SetAvailableWidth; |
|
This item has no description. |
property BrokenLineAffineBox[AIndex: integer]: TAffineBox read GetBrokenLineAffineBox; |
|
This item has no description. |
property BrokenLineCount: integer read GetBrokenLineCount; |
|
This item has no description. |
property BrokenLineEndCaret[AIndex: integer]: TBidiCaretPos read GetBrokenLineEndCaret; |
|
This item has no description. |
property BrokenLineEndIndex[AIndex: integer]: integer read GetBrokenLineEndIndex; |
|
This item has no description. |
property BrokenLineEndPart[AIndex: integer]: integer read GetBrokenLineEndPart; |
|
This item has no description. |
property BrokenLineParagraphIndex[AIndex: integer]: integer read GetBrokenLineParagraphIndex; |
|
This item has no description. |
property BrokenLineRectF[AIndex: integer]: TRectF read GetBrokenLineRectF; |
|
This item has no description. |
property BrokenLineRightToLeft[AIndex: integer]: boolean read GetBrokenLineRightToLeft; |
|
This item has no description. |
property BrokenLineStartCaret[AIndex: integer]: TBidiCaretPos read GetBrokenLineStartCaret; |
|
This item has no description. |
property BrokenLineStartIndex[AIndex: integer]: integer read GetBrokenLineStartIndex; |
|
This item has no description. |
property BrokenLineStartPart[AIndex: integer]: integer read GetBrokenLineStartPart; |
|
This item has no description. |
property BrokenLineUnbrokenIndex[AIndex: integer]: integer read GetBrokenLineUnbrokenIndex; |
|
This item has no description. |
property BrokenLineUsedWidth[AIndex: integer]: single read GetBrokenLineUsedWidth; |
|
This item has no description. |
property CharCount: integer read GetCharCount; |
|
This item has no description. |
property ClipMargin: integer read FClipMargin write FClipMargin; |
|
This item has no description. |
property FontBidiMode: TFontBidiMode read GetFontBidiMode write SetFontBidiMode; |
|
This item has no description. |
property FontRenderer: TBGRACustomFontRenderer read FRenderer write SetFontRenderer; |
|
how many pixels can the text go outside of its box |
property LayoutComputed: boolean read GetLayoutComputed; |
|
This item has no description. |
property LineHeight: single read GetLineHeight; |
|
This item has no description. |
property Matrix: TAffineMatrix read GetMatrix; |
|
This item has no description. |
property MatrixInverse: TAffineMatrix read GetMatrixInverse; |
|
This item has no description. |
property OnBrokenLinesChanged: TBrokenLinesChangedEvent read FOnBrokenLinesChanged write FOnBrokenLinesChanged; |
|
This item has no description. |
property OnParagraphChanged: TParagraphEvent read FOnParagraphChanged write FOnParagraphChanged; |
|
This item has no description. |
property OnParagraphDeleted : TParagraphEvent read FOnParagraphDeleted write FOnParagraphDeleted; |
|
This item has no description. |
property OnParagraphMergedWithNext: TParagraphEvent read FOnParagraphMergedWithNext write FOnParagraphMergedWithNext; |
|
This item has no description. |
property OnParagraphSplit: TParagraphLayoutSplitEvent read FOnParagraphSplit write FOnParagraphSplit; |
|
This item has no description. |
property OnParagraphVerticalTrimChanged: TParagraphEvent read FOnParagraphVerticalTrimChanged write FOnParagraphVerticalTrimChanged; |
|
This item has no description. |
property ParagraphAffineBox[AIndex: integer]: TAffineBox read GetParagraphAffineBox; |
|
This item has no description. |
property ParagraphAlignment[AIndex: integer]: TBidiTextAlignment read GetParagraphAlignment write SetParagraphAlignment; |
|
This item has no description. |
property ParagraphCount: integer read GetParagraphCount; |
|
This item has no description. |
property ParagraphEndBrokenLine[AIndex: integer]: integer read GetParagraphEndBrokenLine; |
|
This item has no description. |
property ParagraphEndIndex[AIndex: integer]: integer read GetParagraphEndIndex; |
|
This item has no description. |
property ParagraphEndIndexBeforeParagraphSeparator[AIndex: integer]: integer read GetParagraphEndIndexBeforeParagraphSeparator; |
|
This item has no description. |
property ParagraphEndPart[AIndex: integer]: integer read GetParagraphEndPart; |
|
This item has no description. |
property ParagraphRectF[AIndex: integer]: TRectF read GetParagraphRectF; |
|
This item has no description. |
property ParagraphRightToLeft[AIndex: integer]: boolean read GetParagraphRightToLeft; |
|
This item has no description. |
property ParagraphSpacingAbove: single read FParagraphSpacingAbove write SetParagraphSpacingAbove; |
|
This item has no description. |
property ParagraphSpacingBelow: single read FParagraphSpacingBelow write SetParagraphSpacingBelow; |
|
This item has no description. |
property ParagraphStartBrokenLine[AIndex: integer]: integer read GetParagraphStartBrokenLine; |
|
This item has no description. |
property ParagraphStartIndex[AIndex: integer]: integer read GetParagraphStartIndex; |
|
This item has no description. |
property ParagraphStartPart[AIndex: integer]: integer read GetParagraphStartPart; |
|
This item has no description. |
property PartAffineBox[AIndex: integer]: TAffineBox read GetPartAffineBox; |
|
This item has no description. |
property PartBrokenLineIndex[AIndex: integer]: integer read GetPartBrokenLineIndex; |
|
This item has no description. |
property PartCount: integer read GetPartCount; |
|
This item has no description. |
property PartEndCaret[AIndex: integer]: TBidiCaretPos read GetPartEndCaret; |
|
This item has no description. |
property PartEndIndex[AIndex: integer]: integer read GetPartEndIndex; |
|
This item has no description. |
property PartRectF[AIndex: integer]: TRectF read GetPartRectF; |
|
This item has no description. |
property PartRightToLeft[AIndex: integer]: boolean read GetPartRightToLeft; |
|
This item has no description. |
property PartStartCaret[AIndex: integer]: TBidiCaretPos read GetPartStartCaret; |
|
This item has no description. |
property PartStartIndex[AIndex: integer]: integer read GetPartStartIndex; |
|
This item has no description. |
property TabSize: single read FTabSize write SetTabSize; |
|
This item has no description. |
property TextUTF8: string read GetText; |
|
This item has no description. |
property TopLeft: TPointF read FTopLeft write SetTopLeft; |
|
This item has no description. |
property TotalTextHeight: single read GetTotalTextHeight; |
|
This item has no description. |
property UnicodeChar[APosition0: integer]: LongWord read GetUnicodeChar; |
|
This item has no description. |
property UsedWidth: single read GetUsedWidth; |
|
This item has no description. |
property UTF8Char[APosition0: integer]: string4 read GetUTF8Char; |
|
This item has no description. |
property WordBreakHandler: TWordBreakHandler read FWordBreakHandler write FWordBreakHandler; |
|
This item has no description. |