Class TBGRASystemFontRenderer
Unit
Declaration
type TBGRASystemFontRenderer = class(TBGRACustomFontRenderer)
Description
Font renderer using system rendering (LCL, mseGUI).
Hierarchy
- TObject
- TBGRACustomFontRenderer
- TBGRASystemFontRenderer
Overview
Fields
FFont: TFont; |
|
FOwnUnderline: boolean; |
|
FWordBreakHandler: TWordBreakHandler; |
|
OverrideUnderlineDecoration: boolean; |
Methods
constructor Create; |
|
destructor Destroy; override; |
|
function FontExists(AName: string): boolean; override; |
|
function GetFontPixelMetric: TFontPixelMetric; override; |
|
class function PatchSystemFontName(AName: string): string; |
|
function TextFitInfo(sUTF8: string; AMaxWidth: integer): integer; override; |
|
function TextSize(sUTF8: string): TSize; overload; override; |
|
function TextSize(sUTF8: string; AMaxWidth: integer; ARightToLeft: boolean): TSize; overload; override; |
|
function TextSizeAngle(sUTF8: string; orientationTenthDegCCW: integer): TSize; override; |
|
function InternalGetFontPixelMetric: TFontPixelMetric; |
|
function InternalTextSize(sUTF8: string; AShowPrefix: boolean): TSize; |
|
function InternalTextSizeAngle(sUTF8: string; AShowPrefix: boolean; AOrientation: integer): TSize; virtual; |
|
function InternalTextSizeStyle(sUTF8: string; AStyle: TTextStyle; AMaxWidth: integer): TSize; virtual; |
|
procedure SplitText(var ATextUTF8: string; AMaxWidth: integer; out ARemainsUTF8: string); |
|
procedure TextOut(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; texture: IBGRAScanner; align: TAlignment); overload; override; |
|
procedure TextOut(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; c: TBGRAPixel; align: TAlignment; ARightToLeft: boolean); overload; override; |
|
procedure TextOut(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; texture: IBGRAScanner; align: TAlignment; ARightToLeft: boolean); overload; override; |
|
procedure TextOut(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; c: TBGRAPixel; align: TAlignment); overload; override; |
|
procedure TextOutAngle(ADest: TBGRACustomBitmap; x, y: single; orientationTenthDegCCW: integer; sUTF8: string; texture: IBGRAScanner; align: TAlignment; ARightToLeft: boolean); overload; override; |
|
procedure TextOutAngle(ADest: TBGRACustomBitmap; x, y: single; orientationTenthDegCCW: integer; sUTF8: string; texture: IBGRAScanner; align: TAlignment); overload; override; |
|
procedure TextOutAngle(ADest: TBGRACustomBitmap; x, y: single; orientationTenthDegCCW: integer; sUTF8: string; c: TBGRAPixel; align: TAlignment); overload; override; |
|
procedure TextOutAngle(ADest: TBGRACustomBitmap; x, y: single; orientationTenthDegCCW: integer; sUTF8: string; c: TBGRAPixel; align: TAlignment; ARightToLeft: boolean); overload; override; |
|
procedure TextRect(ADest: TBGRACustomBitmap; ARect: TRect; x, y: integer; sUTF8: string; style: TTextStyle; texture: IBGRAScanner); overload; override; |
|
procedure TextRect(ADest: TBGRACustomBitmap; ARect: TRect; x, y: integer; sUTF8: string; style: TTextStyle; c: TBGRAPixel); overload; override; |
|
procedure TextWordBreak(ADest: TBGRACustomBitmap; AText: string; x, y, AMaxWidth: integer; ATexture: IBGRAScanner; AHorizAlign: TAlignment; AVertAlign: TTextLayout; ARightToLeft: boolean = false); overload; |
|
procedure TextWordBreak(ADest: TBGRACustomBitmap; AText: string; x, y, AMaxWidth: integer; AColor: TBGRAPixel; AHorizAlign: TAlignment; AVertAlign: TTextLayout; ARightToLeft: boolean = false); overload; |
|
procedure DefaultWorkBreakHandler(var ABeforeUTF8, AAfterUTF8: string); |
|
procedure InternalSplitText(var ATextUTF8: string; AMaxWidth: integer; out ARemainsUTF8: string; AWordBreak: TWordBreakHandler); overload; |
|
procedure InternalSplitText(var ATextUTF8: string; AMaxWidth: integer; out ARemainsUTF8: string; out ALineEndingBreak: boolean; AWordBreak: TWordBreakHandler); overload; |
|
procedure InternalTextOut(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; c: TBGRAPixel; texture: IBGRAScanner; align: TAlignment; AShowPrefix: boolean = false; ARightToLeft: boolean = false); |
|
procedure InternalTextOutAngle(ADest: TBGRACustomBitmap; x, y: single; AOrientation: integer; sUTF8: string; c: TBGRAPixel; texture: IBGRAScanner; align: TAlignment; AShowPrefix: boolean = false; ARightToLeft: boolean = false); virtual; |
|
procedure InternalTextOutEllipse(ADest: TBGRACustomBitmap; x, y, availableWidth: single; sUTF8: string; c: TBGRAPixel; texture: IBGRAScanner; align: TAlignment; AShowPrefix: boolean = false; ARightToLeft: boolean = false); |
|
procedure InternalTextRect(ADest: TBGRACustomBitmap; ARect: TRect; x, y: integer; sUTF8: string; style: TTextStyle; c: TBGRAPixel; ATexture: IBGRAScanner); |
|
procedure InternalTextWordBreak(ADest: TBGRACustomBitmap; ATextUTF8: string; x, y, AMaxWidth: integer; AColor: TBGRAPixel; ATexture: IBGRAScanner; AHorizAlign: TAlignment; AVertAlign: TTextLayout; ARightToLeft: boolean); |
|
procedure UpdateFont; virtual; |
Properties
property OnWordBreak: TWordBreakHandler read FWordBreakHandler write FWordBreakHandler; |
Description
Fields
FFont: TFont; |
|
This item has no description. |
FOwnUnderline: boolean; |
|
This item has no description. |
FWordBreakHandler: TWordBreakHandler; |
|
font parameters |
OverrideUnderlineDecoration: boolean; |
|
This item has no description. |
Methods
constructor Create; |
|
This item has no description. |
destructor Destroy; override; |
|
This item has no description. |
function FontExists(AName: string): boolean; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.FontExists. Checks whether a font exists |
function GetFontPixelMetric: TFontPixelMetric; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.GetFontPixelMetric. Returns measurement for the current font in pixels |
class function PatchSystemFontName(AName: string): string; |
|
This item has no description. |
function TextFitInfo(sUTF8: string; AMaxWidth: integer): integer; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextFitInfo. Returns the number of Unicode characters that fit into the specified size |
function TextSize(sUTF8: string): TSize; overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextSize. Returns the total size of the string provided using the current font. Orientation is not taken into account, so that the width is horizontal |
function TextSize(sUTF8: string; AMaxWidth: integer; ARightToLeft: boolean): TSize; overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextSize. Returns the total size of the string provided given a maximum width and RTL mode, using the current font. Orientation is not taken into account, so that the width is along the text |
function TextSizeAngle(sUTF8: string; orientationTenthDegCCW: integer): TSize; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextSizeAngle. Returns the total size of the string provided using the current font, with the given orientation in tenth of degrees CCW, along the text |
function InternalGetFontPixelMetric: TFontPixelMetric; |
|
This item has no description. |
function InternalTextSize(sUTF8: string; AShowPrefix: boolean): TSize; |
|
This item has no description. |
function InternalTextSizeAngle(sUTF8: string; AShowPrefix: boolean; AOrientation: integer): TSize; virtual; |
|
This item has no description. |
function InternalTextSizeStyle(sUTF8: string; AStyle: TTextStyle; AMaxWidth: integer): TSize; virtual; |
|
This item has no description. |
procedure SplitText(var ATextUTF8: string; AMaxWidth: integer; out ARemainsUTF8: string); |
|
draw unerline according to computed font pixel metric instead of using system rendering of underline |
procedure TextOut(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; texture: IBGRAScanner; align: TAlignment); overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextOut. Same as above functions, except that the text is filled using texture. The value of FontOrientation is taken into account, so that the text may be rotated |
procedure TextOut(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; c: TBGRAPixel; align: TAlignment; ARightToLeft: boolean); overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextOut. Same as above but with given RTL mode |
procedure TextOut(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; texture: IBGRAScanner; align: TAlignment; ARightToLeft: boolean); overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextOut. Same as above but with given RTL mode |
procedure TextOut(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; c: TBGRAPixel; align: TAlignment); overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextOut. Draws the UTF8 encoded string, with color c. If align is taLeftJustify, (x, y) is the top-left corner. If align is taCenter, (x, y) is at the top and middle of the text. If align is taRightJustify, (x, y) is the top-right corner. The value of FontOrientation is taken into account, so that the text may be rotated |
procedure TextOutAngle(ADest: TBGRACustomBitmap; x, y: single; orientationTenthDegCCW: integer; sUTF8: string; texture: IBGRAScanner; align: TAlignment; ARightToLeft: boolean); overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextOutAngle. Same as above but with given RTL mode |
procedure TextOutAngle(ADest: TBGRACustomBitmap; x, y: single; orientationTenthDegCCW: integer; sUTF8: string; texture: IBGRAScanner; align: TAlignment); overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextOutAngle. Same as above, except that the orientation is specified, overriding the value of the property FontOrientation |
procedure TextOutAngle(ADest: TBGRACustomBitmap; x, y: single; orientationTenthDegCCW: integer; sUTF8: string; c: TBGRAPixel; align: TAlignment); overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextOutAngle. Same as above, except that the orientation is specified in tenth of degrees CCW, overriding the value of the property FontOrientation |
procedure TextOutAngle(ADest: TBGRACustomBitmap; x, y: single; orientationTenthDegCCW: integer; sUTF8: string; c: TBGRAPixel; align: TAlignment; ARightToLeft: boolean); overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextOutAngle. Same as above but with given RTL mode |
procedure TextRect(ADest: TBGRACustomBitmap; ARect: TRect; x, y: integer; sUTF8: string; style: TTextStyle; texture: IBGRAScanner); overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextRect. Same as above except a texture is used to fill the text |
procedure TextRect(ADest: TBGRACustomBitmap; ARect: TRect; x, y: integer; sUTF8: string; style: TTextStyle; c: TBGRAPixel); overload; override; |
|
This item has no description. Showing description inherited from TBGRACustomFontRenderer.TextRect. Draw the UTF8 encoded string at the coordinate (x, y), clipped inside the rectangle ARect. Additional style information is provided by the style parameter. The color c is used to fill the text. No rotation is applied. |
procedure TextWordBreak(ADest: TBGRACustomBitmap; AText: string; x, y, AMaxWidth: integer; ATexture: IBGRAScanner; AHorizAlign: TAlignment; AVertAlign: TTextLayout; ARightToLeft: boolean = false); overload; |
|
This item has no description. |
procedure TextWordBreak(ADest: TBGRACustomBitmap; AText: string; x, y, AMaxWidth: integer; AColor: TBGRAPixel; AHorizAlign: TAlignment; AVertAlign: TTextLayout; ARightToLeft: boolean = false); overload; |
|
This item has no description. |
procedure DefaultWorkBreakHandler(var ABeforeUTF8, AAfterUTF8: string); |
|
This item has no description. |
procedure InternalSplitText(var ATextUTF8: string; AMaxWidth: integer; out ARemainsUTF8: string; AWordBreak: TWordBreakHandler); overload; |
|
This item has no description. |
procedure InternalSplitText(var ATextUTF8: string; AMaxWidth: integer; out ARemainsUTF8: string; out ALineEndingBreak: boolean; AWordBreak: TWordBreakHandler); overload; |
|
This item has no description. |
procedure InternalTextOut(ADest: TBGRACustomBitmap; x, y: single; sUTF8: string; c: TBGRAPixel; texture: IBGRAScanner; align: TAlignment; AShowPrefix: boolean = false; ARightToLeft: boolean = false); |
|
This item has no description. |
procedure InternalTextOutAngle(ADest: TBGRACustomBitmap; x, y: single; AOrientation: integer; sUTF8: string; c: TBGRAPixel; texture: IBGRAScanner; align: TAlignment; AShowPrefix: boolean = false; ARightToLeft: boolean = false); virtual; |
|
This item has no description. |
procedure InternalTextOutEllipse(ADest: TBGRACustomBitmap; x, y, availableWidth: single; sUTF8: string; c: TBGRAPixel; texture: IBGRAScanner; align: TAlignment; AShowPrefix: boolean = false; ARightToLeft: boolean = false); |
|
This item has no description. |
procedure InternalTextRect(ADest: TBGRACustomBitmap; ARect: TRect; x, y: integer; sUTF8: string; style: TTextStyle; c: TBGRAPixel; ATexture: IBGRAScanner); |
|
This item has no description. |
procedure InternalTextWordBreak(ADest: TBGRACustomBitmap; ATextUTF8: string; x, y, AMaxWidth: integer; AColor: TBGRAPixel; ATexture: IBGRAScanner; AHorizAlign: TAlignment; AVertAlign: TTextLayout; ARightToLeft: boolean); |
|
This item has no description. |
procedure UpdateFont; virtual; |
|
This item has no description. |
Properties
property OnWordBreak: TWordBreakHandler read FWordBreakHandler write FWordBreakHandler; |
|
This item has no description. |