import { CanvasLike, GlobalRuntime } from '@antv/g-lite'; import type { Device, Texture } from '@antv/g-device-api'; import type { StyleGlyph } from './AlphaImage'; import GlyphAtlas from './GlyphAtlas'; export type PositionedGlyph = { glyph: number; x: number; y: number; scale: number; fontStack: string; }; export declare const BASE_FONT_WIDTH = 24; export declare const BASE_FONT_BUFFER = 3; export declare function isCJK(char: number): boolean; export declare function getDefaultCharacterSet(): string[]; /** * TODO: use one atlas for all fontstacks, each fontstack has one texture now */ export declare class GlyphManager { private runtime; private sdfGeneratorCache; private textMetricsCache; private glyphAtlas; private glyphMap; private glyphAtlasTexture; constructor(runtime: GlobalRuntime); destroy(): void; getMap(): Record>; getAtlas(): GlyphAtlas; getAtlasTexture(): Texture; layout(lines: string[], fontStack: string, lineHeight: number, textAlign: CanvasTextAlign | 'middle', letterSpacing: number, offsetX: number, offsetY: number): PositionedGlyph[]; generateAtlas(canvas: CanvasLike, fontStack: string, fontFamily: string, fontWeight: string, fontStyle: string, text: string, device: Device): void; private generateSDF; } //# sourceMappingURL=GlyphManager.d.ts.map