ag-charts-community
Version:
Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue
55 lines (54 loc) • 2.08 kB
TypeScript
import type { FontFamily, FontSize, FontStyle, FontWeight } from 'ag-charts-types';
import { type MeasureOptions } from '../../util/textMeasurer';
import { BBox } from '../bbox';
import type { RenderContext } from '../node';
import { Shape } from './shape';
export interface TextSizeProperties {
fontFamily?: FontFamily;
fontSize?: FontSize;
fontStyle?: FontStyle;
fontWeight?: FontWeight;
lineHeight?: number;
textBaseline?: CanvasTextBaseline;
textAlign?: CanvasTextAlign;
}
export declare class Text<D = any> extends Shape<D> {
static readonly className = "Text";
private static readonly debug;
private static readonly defaultFontSize;
x: number;
y: number;
private lines;
private onTextChange;
text?: string;
fontStyle?: FontStyle;
fontWeight?: FontWeight;
fontSize: number;
fontFamily?: string;
textAlign: CanvasTextAlign;
textBaseline: CanvasTextBaseline;
lineHeight?: number;
static computeBBox(lines: string | string[], x: number, y: number, opts: MeasureOptions, useGlyphIndependentMeasurements?: boolean): BBox;
protected computeBBox(useGlyphIndependentMeasurements?: boolean): BBox;
getBBox(useGlyphIndependentMeasurements?: boolean): BBox;
getTextMeasureBBox(): BBox;
isPointInPath(x: number, y: number): boolean;
render(renderCtx: RenderContext): void;
private renderLines;
setFont(props: TextSizeProperties): void;
setAlign(props: {
textAlign: CanvasTextAlign;
textBaseline: CanvasTextBaseline;
}): void;
toSVG(): {
elements: SVGElement[];
defs?: SVGElement[];
} | undefined;
}
declare const RotatableText_base: new (...args: any[]) => import("../transformable").RotatableType<Text<any>>;
export declare class RotatableText extends RotatableText_base {
}
declare const TransformableText_base: new (...args: any[]) => import("../transformable").RotatableType<import("../transformable").TranslatableType<Text<any>>>;
export declare class TransformableText extends TransformableText_base {
}
export {};