Class TBGRACustomTypeWriter
Unit
Declaration
type TBGRACustomTypeWriter = class(TObject)
Description
Abstract class for font rendering using cached glyphs
Hierarchy
- TObject
- TBGRACustomTypeWriter
Overview
Fields
DrawGlyphsSimultaneously: boolean; |
|
LigatureWithF: boolean; |
|
OutlineMode: TBGRATypeWriterOutlineMode; |
|
SubstituteBidiBracket: boolean; |
|
TypeWriterMatrix: TAffineMatrix; |
Methods
constructor Create; |
|
destructor Destroy; override; |
|
function GetGlyphBox(AIdentifier: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft): TAffineBox; |
|
function GetTextBox(ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft): TAffineBox; |
|
function GetTextGlyphBoxes(ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft): TGlyphBoxes; |
|
function GetTextSizeBeforeTransform(ATextUTF8 :string): TPointF; |
|
function ComputeKerning(AIdLeft, AIdRight: string): single; virtual; |
|
function CustomHeaderSize: integer; virtual; |
|
function FindGlyph(AIdentifier: string): TAVLTreeNode; |
|
function FindKerning(AIdLeft, AIdRight: string): TAVLTreeNode; |
|
function GetDisplayInfo(ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment): TBGRATextDisplayInfo; |
|
function GetGlyph(AIdentifier: string): TBGRAGlyph; virtual; |
|
function GetGlyphMatrix(AGlyph: TBGRAGlyph; X,Y: Single; AAlign: TBGRATypeWriterAlignment): TAffineMatrix; |
|
function GetKerningOffset(AIdBefore, AIdAfter: string; ARightToLeft: boolean): single; virtual; |
|
function GetTextMatrix(ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment): TAffineMatrix; |
|
function HeaderName: string; virtual; |
|
function ReadCustomTypeWriterHeader(AStream: TStream): TBGRACustomTypeWriterHeader; |
|
procedure CopyTextPathTo(ADest: IBGRAPath; ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft); virtual; |
|
procedure DrawGlyph(ADest: TBGRACanvas2D; AIdentifier: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft; AMirrored: boolean = false); |
|
procedure DrawText(ADest: TBGRACanvas2D; ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft); virtual; |
|
procedure LoadGlyphsFromFile(AFilenameUTF8: string; AWithKerning: boolean = true); |
|
procedure LoadGlyphsFromStream(AStream: TStream; AWithKerning: boolean = true); |
|
procedure NeedAsciiRange(AComputeKerning: boolean = false); |
|
procedure NeedGlyphAnsiRange(AComputeKerning: boolean = false); |
|
procedure NeedGlyphRange(AUnicodeFrom, AUnicodeTo: LongWord; AComputeKerning: boolean = false); |
|
procedure SaveGlyphsToFile(AFilenameUTF8: string; AWithKerning: boolean = true); |
|
procedure SaveGlyphsToStream(AStream: TStream; AWithKerning: boolean = true); |
|
procedure TextFitInfoBeforeTransform(ATextUTF8: string; AMaxWidth: single; out ACharCount, AByteCount: integer; out AUsedWidth: single); |
|
procedure AddGlyph(AGlyph: TBGRAGlyph); |
|
procedure BrowseAllGlyphs(ACallback: TBrowseGlyphCallback; AData: pointer); |
|
procedure BrowseGlyphs(ATextUTF8: string; ACallback: TBrowseGlyphCallback; AData: pointer; ADisplayOrder: boolean); |
|
procedure ClearGlyphs; |
|
procedure DrawLastPath(ADest: TBGRACanvas2D); |
|
procedure GlyphPath(ADest: TBGRACanvas2D; AIdentifier: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft; AMirrored: boolean = false); |
|
procedure ReadAdditionalHeader(AStream: TStream); virtual; |
|
procedure ReadKerning(AStream: TStream); virtual; |
|
procedure RemoveGlyph(AIdentifier: string); |
|
procedure SetGlyph(AIdentifier: string; AValue: TBGRAGlyph); |
|
procedure WriteCustomHeader(AStream: TStream); virtual; |
|
procedure WriteKerning(AStream: TStream); virtual; |
Properties
property BidiMode: TFontBidiMode read FBidiMode write SetBidiMode; |
|
property Glyph[AIdentifier: string]: TBGRAGlyph read GetGlyph write SetGlyph; |
Description
Fields
DrawGlyphsSimultaneously: boolean; |
|
This item has no description. |
LigatureWithF: boolean; |
|
This item has no description. |
OutlineMode: TBGRATypeWriterOutlineMode; |
|
This item has no description. |
SubstituteBidiBracket: boolean; |
|
This item has no description. |
TypeWriterMatrix: TAffineMatrix; |
|
This item has no description. |
Methods
constructor Create; |
|
This item has no description. |
destructor Destroy; override; |
|
This item has no description. |
function GetGlyphBox(AIdentifier: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft): TAffineBox; |
|
This item has no description. |
function GetTextBox(ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft): TAffineBox; |
|
This item has no description. |
function GetTextGlyphBoxes(ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft): TGlyphBoxes; |
|
This item has no description. |
function GetTextSizeBeforeTransform(ATextUTF8 :string): TPointF; |
|
This item has no description. |
function ComputeKerning(AIdLeft, AIdRight: string): single; virtual; |
|
This item has no description. |
function CustomHeaderSize: integer; virtual; |
|
This item has no description. |
function FindGlyph(AIdentifier: string): TAVLTreeNode; |
|
This item has no description. |
function FindKerning(AIdLeft, AIdRight: string): TAVLTreeNode; |
|
This item has no description. |
function GetDisplayInfo(ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment): TBGRATextDisplayInfo; |
|
This item has no description. |
function GetGlyph(AIdentifier: string): TBGRAGlyph; virtual; |
|
This item has no description. |
function GetGlyphMatrix(AGlyph: TBGRAGlyph; X,Y: Single; AAlign: TBGRATypeWriterAlignment): TAffineMatrix; |
|
This item has no description. |
function GetKerningOffset(AIdBefore, AIdAfter: string; ARightToLeft: boolean): single; virtual; |
|
This item has no description. |
function GetTextMatrix(ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment): TAffineMatrix; |
|
This item has no description. |
function HeaderName: string; virtual; |
|
This item has no description. |
function ReadCustomTypeWriterHeader(AStream: TStream): TBGRACustomTypeWriterHeader; |
|
This item has no description. |
procedure CopyTextPathTo(ADest: IBGRAPath; ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft); virtual; |
|
This item has no description. |
procedure DrawGlyph(ADest: TBGRACanvas2D; AIdentifier: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft; AMirrored: boolean = false); |
|
This item has no description. |
procedure DrawText(ADest: TBGRACanvas2D; ATextUTF8: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft); virtual; |
|
This item has no description. |
procedure LoadGlyphsFromFile(AFilenameUTF8: string; AWithKerning: boolean = true); |
|
This item has no description. |
procedure LoadGlyphsFromStream(AStream: TStream; AWithKerning: boolean = true); |
|
This item has no description. |
procedure NeedAsciiRange(AComputeKerning: boolean = false); |
|
This item has no description. |
procedure NeedGlyphAnsiRange(AComputeKerning: boolean = false); |
|
This item has no description. |
procedure NeedGlyphRange(AUnicodeFrom, AUnicodeTo: LongWord; AComputeKerning: boolean = false); |
|
This item has no description. |
procedure SaveGlyphsToFile(AFilenameUTF8: string; AWithKerning: boolean = true); |
|
This item has no description. |
procedure SaveGlyphsToStream(AStream: TStream; AWithKerning: boolean = true); |
|
This item has no description. |
procedure TextFitInfoBeforeTransform(ATextUTF8: string; AMaxWidth: single; out ACharCount, AByteCount: integer; out AUsedWidth: single); |
|
This item has no description. |
procedure AddGlyph(AGlyph: TBGRAGlyph); |
|
This item has no description. |
procedure BrowseAllGlyphs(ACallback: TBrowseGlyphCallback; AData: pointer); |
|
This item has no description. |
procedure BrowseGlyphs(ATextUTF8: string; ACallback: TBrowseGlyphCallback; AData: pointer; ADisplayOrder: boolean); |
|
This item has no description. |
procedure ClearGlyphs; |
|
This item has no description. |
procedure DrawLastPath(ADest: TBGRACanvas2D); |
|
This item has no description. |
procedure GlyphPath(ADest: TBGRACanvas2D; AIdentifier: string; X,Y: Single; AAlign: TBGRATypeWriterAlignment = twaTopLeft; AMirrored: boolean = false); |
|
This item has no description. |
procedure ReadAdditionalHeader(AStream: TStream); virtual; |
|
This item has no description. |
procedure ReadKerning(AStream: TStream); virtual; |
|
This item has no description. |
procedure RemoveGlyph(AIdentifier: string); |
|
This item has no description. |
procedure SetGlyph(AIdentifier: string; AValue: TBGRAGlyph); |
|
This item has no description. |
procedure WriteCustomHeader(AStream: TStream); virtual; |
|
This item has no description. |
procedure WriteKerning(AStream: TStream); virtual; |
|
This item has no description. |
Properties
property BidiMode: TFontBidiMode read FBidiMode write SetBidiMode; |
|
This item has no description. |
property Glyph[AIdentifier: string]: TBGRAGlyph read GetGlyph write SetGlyph; |
|
This item has no description. |