UNPKG

@needle-tools/engine

Version:

Needle Engine is a web-based runtime for 3D apps. It runs on your machine for development with great integrations into editors like Unity or Blender - and can be deployed onto any device! It is flexible, extensible and networking and XR are built-in.

79 lines (78 loc) 2.14 kB
import { Graphic } from './Graphic.js'; import { type ICanvas, type ICanvasEventReceiver, type IHasAlphaFactor } from './Interfaces.js'; export declare enum TextAnchor { UpperLeft = 0, UpperCenter = 1, UpperRight = 2, MiddleLeft = 3, MiddleCenter = 4, MiddleRight = 5, LowerLeft = 6, LowerCenter = 7, LowerRight = 8 } export declare enum VerticalWrapMode { Truncate = 0, Overflow = 1 } declare enum HorizontalWrapMode { Wrap = 0, Overflow = 1 } export declare enum FontStyle { Normal = 0, Bold = 1, Italic = 2, BoldAndItalic = 3 } /** * @category User Interface * @group Components */ export declare class Text extends Graphic implements IHasAlphaFactor, ICanvasEventReceiver { alignment: TextAnchor; verticalOverflow: VerticalWrapMode; horizontalOverflow: HorizontalWrapMode; lineSpacing: number; supportRichText: boolean; font?: string; fontStyle: FontStyle; setAlphaFactor(factor: number): void; get text(): string; set text(val: string); private set_text; get fontSize(): number; set fontSize(val: number); private sRGBTextColor; protected onColorChanged(): void; onParentRectTransformChanged(): void; onBeforeCanvasRender(_canvas: ICanvas): void; private updateOverflow; protected onCreate(_opts: any): void; onAfterAddedToScene(): void; private _text; private _fontSize; private _textMeshUi; private getTextOpts; onEnable(): void; onDisable(): void; private getAlignment; private feedText; private _didHandleTextRenderOnTop; private handleTextRenderOnTop; private renderOnTopCoroutine; private handleTag; private getText; private getNextTag; /** * Update provided opts to have a proper fontDefinition : family+weight+style * Ensure Family and Variant are registered in FontLibrary * * @param opts * @param fontStyle * @private */ private setFont; private getFamilyNameWithCorrectSuffix; } export {};