@expofp/floorplan
Version:
Interactive floor plan library for expos and events
49 lines • 2.12 kB
TypeScript
import { Rect } from '@expofp/geometry';
import { ImageDef, TextAlignment, TextDef } from '@expofp/renderer';
import { CustomFonts, FontSizeFactor, RendererService } from '../../../../renderer';
import { Booth } from '../../../../store/BoothStore';
import { Exhibitor } from '../../../../store/ExhibitorStore';
import { BoothDrawerBaseWithoutPainter } from './BoothDrawerBase';
interface Prefix {
fontSize: number;
name: string;
short?: boolean;
}
export default function configBoothLabels(rendererService: RendererService, booth: Booth): BoothLabelDrawer | undefined;
export declare function getMinZoomFactorForDot(scaleFactors: number[]): number;
export declare const isDirectionsMode: () => boolean;
export declare function getFontUrlByWeight(weight: number, customFonts?: CustomFonts[], style?: string): string;
interface LabelFontWeights {
main: number;
details: number;
}
export declare function getBoothLabelWeights(): LabelFontWeights;
export declare function getExhibitorLabelWeights(): LabelFontWeights;
export declare function getBadgeFontWeight(): number;
export declare class BoothLabelDrawer extends BoothDrawerBaseWithoutPainter {
protected readonly rendererService: RendererService;
protected canvasRect: Rect;
protected paddingScaled: [number, number];
protected padding: number;
protected minZoomDotVisible: number;
protected maxZoomDotVisible: number;
protected exh: Exhibitor[];
protected shapeLabel: TextDef;
protected shapeDot: ImageDef;
protected fontSizes: [FontSizeFactor[], FontSizeFactor[]];
protected lines: [string[], string[]];
protected topLeftAlignment: TextAlignment;
protected centerAlignment: TextAlignment;
protected prefixes: Prefix[];
protected fontUrls: [string, string];
constructor(rendererService: RendererService, booth: Booth);
getShape(): (ImageDef | TextDef)[];
getShapeDot(): void;
private createLines;
private calculateFontSizeFactors;
private calcArea;
private optimizationLevel;
private measureText;
}
export {};
//# sourceMappingURL=config-booth-labels.d.ts.map