UNPKG

tav-media

Version:

Cross platform media editing framework

30 lines (29 loc) 1.21 kB
/// <reference types="offscreencanvas" /> import type { Rect } from '../types'; import type { NativeImage as NativeImageType } from '../interfaces'; export declare class ScalerContext { static canvas: HTMLCanvasElement | OffscreenCanvas; static context: CanvasRenderingContext2D | OffscreenCanvasRenderingContext2D; static setCanvas(canvas: HTMLCanvasElement | OffscreenCanvas): void; static setContext(context: CanvasRenderingContext2D | OffscreenCanvasRenderingContext2D): void; static isEmoji(text: string): boolean; private readonly fontName; private readonly fontStyle; private readonly size; private readonly fauxBold; private readonly fauxItalic; private fontBoundingBoxMap; constructor(fontName: string, fontStyle: string, size: number, fauxBold?: boolean, fauxItalic?: boolean); fontString(): string; getTextAdvance(text: string): number; getTextBounds(text: string): Rect; generateFontMetrics(): { ascent: number; descent: number; xHeight: number; capHeight: number; }; generateImage(text: string, bounds: Rect): NativeImageType; protected loadCanvas(): void; private measureText; }