editor-render-v2
Version:
编辑器渲染器
80 lines (79 loc) • 2.3 kB
TypeScript
import { Layer } from 'ag-psd';
import { IInitFabricObj, IGradientOptions } from '../../interface';
import Converter from './Converter';
import { fabric } from 'fabric';
interface IStrokeStyle {
stroke: string | IGradientOptions;
strokeWidth: number;
paintFirst?: string;
}
interface IPoint {
x: number;
y: number;
}
declare class ConverterCommon {
converter: Converter;
constructor(converter: Converter);
/**
* 转换通用的属性
* @param layer 需要转换的层
* @returns 包含位置、ID、名字、透明度信息
*/
converterCommon(layer: Layer): IInitFabricObj;
/**
* 转换文字的填充色
* @param layer 需要转换的层
* @returns 转换结果
*/
converterTextFillColor(layer: Layer): string | IGradientOptions;
/**
* 转换文字的角度,缩放,位置信息
* @param layer 需要转换的文字层
* @returns 转换结果
*/
converterTextStyle(layer: Layer): IInitFabricObj;
/**
* 转换图片的剪切蒙版
* @param layer 需要转换的层
* @returns 转换的结果
*/
converterImgClipMask(layer: Layer): IInitFabricObj | boolean;
/**
* 转换文字描边
* @param layer 需要转换的层
* @returns 转换结果
*/
converterStroke(layer: Layer): IStrokeStyle;
/**
* 转换文字阴影
* @param layer 需要转换的层
* @returns 转换结果
*/
converterShadow(layer: Layer): fabric.IShadowOptions | boolean;
/**
* 转换矢量图形的点
* @param layer 需要转换的层
* @returns 转换结果
*/
converterVectorPoint(layer: Layer): IPoint[];
/**
* 转换矢量图形的颜色
* @param layer 需要转换的层
* @returns 转换结果
*/
converterVectorFillColor(layer: Layer): string | IGradientOptions;
getLayerBound(object: IInitFabricObj): {
left: number;
right: number;
top: number;
bottom: number;
};
private converterVectorStroke;
private converterGradientOverlay;
private resetColorLinear;
private resetColorRadial;
private resetColorStops;
private getUpLayer;
checkIsFlexBox(layer: Layer): boolean;
}
export default ConverterCommon;