playcanvas
Version:
PlayCanvas WebGL game engine
176 lines (175 loc) • 5.79 kB
TypeScript
export class TextElement {
constructor(element: any);
_element: any;
_system: any;
_entity: any;
_text: string;
_symbols: any[];
_colorPalette: any[];
_outlinePalette: any[];
_shadowPalette: any[];
_symbolColors: any[];
_symbolOutlineParams: any[];
_symbolShadowParams: any[];
/** @type {string} */
_i18nKey: string;
_fontAsset: LocalizedAsset;
/** @type {Font | CanvasFont} */
_font: Font | CanvasFont;
_color: Color;
_colorUniform: Float32Array<ArrayBuffer>;
_spacing: number;
_fontSize: number;
_fontMinY: number;
_fontMaxY: number;
_originalFontSize: number;
_maxFontSize: number;
_minFontSize: number;
_autoFitWidth: boolean;
_autoFitHeight: boolean;
_maxLines: number;
_lineHeight: number;
_scaledLineHeight: number;
_wrapLines: boolean;
_drawOrder: number;
_alignment: Vec2;
_autoWidth: boolean;
_autoHeight: boolean;
width: number;
height: number;
_node: GraphNode;
_model: Model;
_meshInfo: any[];
_material: any;
_aabbDirty: boolean;
_aabb: BoundingBox;
_noResize: boolean;
_currentMaterialType: any;
_maskedMaterialSrc: any;
_rtlReorder: boolean;
_unicodeConverter: boolean;
_rtl: boolean;
_outlineColor: Color;
_outlineColorUniform: Float32Array<ArrayBuffer>;
_outlineThicknessScale: number;
_outlineThickness: number;
_shadowColor: Color;
_shadowColorUniform: Float32Array<ArrayBuffer>;
_shadowOffsetScale: number;
_shadowOffset: Vec2;
_shadowOffsetUniform: Float32Array<ArrayBuffer>;
_enableMarkup: boolean;
_rangeStart: number;
_rangeEnd: number;
destroy(): void;
set font(value: CanvasFont | Font);
get font(): CanvasFont | Font;
_onParentResize(width: any, height: any): void;
_onScreenChange(screen: any): void;
_onScreenSpaceChange(value: any): void;
_onDrawOrderChange(order: any): void;
_onPivotChange(pivot: any): void;
_onLocaleSet(locale: any): void;
_onLocalizationData(locale: any, messages: any): void;
_resetLocalizedText(): void;
_setText(text: any): void;
_updateText(text: any): void;
_removeMeshInstance(meshInstance: any): void;
_setMaterial(material: any): void;
_updateMaterial(screenSpace: any): void;
_updateMaterialEmissive(): void;
_updateMaterialOutline(): void;
_updateMaterialShadow(): void;
_isWordBoundary(char: any): boolean;
_isValidNextChar(nextchar: any): boolean;
_isNextCJKBoundary(char: any, nextchar: any): boolean;
_isNextCJKWholeWord(nextchar: any): boolean;
_updateMeshes(): void;
_lineWidths: any[];
_lineContents: any[];
set autoWidth(value: boolean);
get autoWidth(): boolean;
set autoHeight(value: boolean);
get autoHeight(): boolean;
_onFontRender(): void;
_onFontLoad(asset: any): void;
_onFontChange(asset: any, name: any, _new: any, _old: any): void;
_onFontRemove(asset: any): void;
_setTextureParams(mi: any, texture: any): void;
_getPxRange(font: any): number;
_getUv(char: any): any;
onEnable(): void;
onDisable(): void;
_setStencil(stencilParams: any): void;
_shouldAutoFitWidth(): boolean;
_shouldAutoFitHeight(): boolean;
_shouldAutoFit(): boolean;
_calculateCharsPerTexture(symbolIndex: any): {};
_updateRenderRange(): void;
set text(value: string);
get text(): string;
set key(value: string);
get key(): string;
set color(value: Color);
get color(): Color;
set opacity(value: number);
get opacity(): number;
set lineHeight(value: number);
get lineHeight(): number;
set wrapLines(value: boolean);
get wrapLines(): boolean;
get lines(): any[];
set spacing(value: number);
get spacing(): number;
set fontSize(value: number);
get fontSize(): number;
set fontAsset(value: number | import("../../asset/asset.js").Asset);
get fontAsset(): number | import("../../asset/asset.js").Asset;
set alignment(value: Vec2);
get alignment(): Vec2;
set rtlReorder(value: boolean);
get rtlReorder(): boolean;
set unicodeConverter(value: boolean);
get unicodeConverter(): boolean;
/**
* @type {BoundingBox}
*/
get aabb(): BoundingBox;
set outlineColor(value: Color);
get outlineColor(): Color;
set outlineThickness(value: number);
get outlineThickness(): number;
set shadowColor(value: Color);
get shadowColor(): Color;
set shadowOffset(value: Vec2);
get shadowOffset(): Vec2;
set minFontSize(value: number);
get minFontSize(): number;
set maxFontSize(value: number);
get maxFontSize(): number;
set autoFitWidth(value: boolean);
get autoFitWidth(): boolean;
set autoFitHeight(value: boolean);
get autoFitHeight(): boolean;
set maxLines(value: number);
get maxLines(): number;
set enableMarkup(value: boolean);
get enableMarkup(): boolean;
get symbols(): any[];
get symbolColors(): any[];
get symbolOutlineParams(): any[];
get symbolShadowParams(): any[];
get rtl(): boolean;
set rangeStart(rangeStart: number);
get rangeStart(): number;
set rangeEnd(rangeEnd: number);
get rangeEnd(): number;
}
import { LocalizedAsset } from '../../asset/asset-localized.js';
import type { Font } from '../../../framework/font/font.js';
import type { CanvasFont } from '../../../framework/font/canvas-font.js';
import { Color } from '../../../core/math/color.js';
import { Vec2 } from '../../../core/math/vec2.js';
import { GraphNode } from '../../../scene/graph-node.js';
import { Model } from '../../../scene/model.js';
import { BoundingBox } from '../../../core/shape/bounding-box.js';