UNPKG

@neosjs/screen-shot

Version:

JS截屏插件

211 lines (208 loc) 5.43 kB
type cutOutBoxBorder = { x: number; y: number; width: number; height: number; index: number; option: number; }; type movePositionType = { moveStartX: number; moveStartY: number; }; type positionInfoType = { startX: number; startY: number; width: number; height: number; }; type textInfoType = { positionX: number; positionY: number; color: string; size: number; }; type zoomCutOutBoxReturnType = { tempStartX: number; tempStartY: number; tempWidth: number; tempHeight: number; }; type toolPositionValType = 'left' | 'right' | 'center'; type hideBarInfoType = { state: boolean; color?: string; fillWidth?: number; fillHeight?: number; fillState?: boolean; }; type drawCutOutBoxReturnType = { startX: number; startY: number; width: number; height: number; }; type toolIcoType = 'square' | 'round' | 'right-top' | 'brush' | 'mosaicPen' | 'text' | 'separateLine' | 'save' | 'undo' | 'close' | 'confirm'; type toolbarType = { id: number; title: string; }; type crcEventType = { state: boolean; handler?: () => void; }; type genericMethodPostbackType = { code: number; data: null | boolean | number | Record<string, any>; msg: string; }; type screenShotType = { enableWebRtc?: boolean; screenFlow?: MediaStream; level?: number; canvasWidth?: number; canvasHeight?: number; onComplete?: (imgInfo: { base64: string; cutInfo: positionInfoType; }) => void; onClose?: () => void; onTrigger?: (res: { code: number; msg: string; displaySurface: string | null; displayLabel: string | null; }) => void; onLoaded?: (res: { code: number; msg: string; displaySurface: string | null; displayLabel: string | null; }) => void; onCancel?: (res: { code: number; msg: string; errorInfo: string; }) => void; onSave?: (code: number, msg: string) => void; position?: { top?: number; left?: number; }; clickCutFullScreen?: boolean; showToolIcon?: toolIcoType[]; showScreenData?: boolean; confirmBtnText?: string; imgSrc?: string; loadCrossImg?: boolean; proxyUrl?: string; screenShotDom?: HTMLElement | HTMLDivElement | HTMLCanvasElement; cropBoxInfo?: { x: number; y: number; w: number; h: number; }; webrtcReplyTime?: number; wrcImgPosition?: { x: number; y: number; w: number; h: number; }; lockScroll?: boolean; maskColor?: { r: number; g: number; b: number; a: number; }; toolPosition?: toolPositionValType; writeBase64?: boolean; hiddenScrollBar?: hideBarInfoType; webrtcWindowMode?: boolean; rightClickEvent?: crcEventType; cutDotColor?: string; cutDotSize?: number; cutDotRound?: boolean; maxUndoNum?: number; useRatioArrow?: boolean; imgAutoFit?: boolean; saveImgTitle?: string; dpr?: number; }; declare class ScreenShot { readonly version: string; readonly buildTime: string; private readonly data; private readonly videoController; private screenShotContainer; private screenShotDom; private toolController; private screenShotImageController; private screenShotCanvas; private textInputController; private optionController; private optionIcoController; private cutBoxSizeContainer; private plugInParameters; private webrtcReplyTime; private keyboardEventHandle; private drawGraphPosition; private tempGraphPosition; private wrcImgPosition; private hiddenScrollBar; private wrcWindowMode; private cutOutBoxBorderArr; private borderOption; private movePosition; private dragFlag; private clickCutFullScreen; private getFullScreenStatus; private drawGraphPrevX; private drawGraphPrevY; private degreeOfBlur; private dpr; private fullScreenDiffHeight; private position; private imgSrc; private loadCrossImg; private mouseInsideCropBox; private proxyUrl; private drawStatus; private captureStream; private cropBoxInfo; private textInputPosition; private placement; private customRightClickEvent; constructor(options: screenShotType); getCanvasController(): HTMLCanvasElement | null | undefined; destroy(): void; complete(): void; private load; private loadScreenFlowData; private wrcScreenShot; /** * 初始化截图容器 * @param triggerCallback * @param context * @param screenShotContainer * @private */ private initScreenShot; private mouseDownEvent; private mouseMoveEvent; private mouseUpEvent; private croppingBoxCallerCallback; private toolBarCallerCallback; /** * 显示最新的画布状态 * @private */ private showLastHistory; private setGlobalParameter; private setOptionalParameter; private createEvent; } export { ScreenShot as default }; export type { crcEventType, cutOutBoxBorder, drawCutOutBoxReturnType, genericMethodPostbackType, hideBarInfoType, movePositionType, positionInfoType, screenShotType, textInfoType, toolIcoType, toolPositionValType, toolbarType, zoomCutOutBoxReturnType };