mirror of
https://github.com/pipipi-pikachu/PPTist.git
synced 2025-04-15 02:20:00 +08:00
refactor(types): 抽离元素公共interface
This commit is contained in:
parent
6283f61417
commit
5be97ebdc2
@ -22,8 +22,7 @@ export interface PPTElementOutline {
|
|||||||
color?: string;
|
color?: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface PPTTextElement {
|
interface PPTBaseElement {
|
||||||
type: 'text';
|
|
||||||
id: string;
|
id: string;
|
||||||
left: number;
|
left: number;
|
||||||
top: number;
|
top: number;
|
||||||
@ -31,6 +30,10 @@ export interface PPTTextElement {
|
|||||||
groupId?: string;
|
groupId?: string;
|
||||||
width: number;
|
width: number;
|
||||||
height: number;
|
height: number;
|
||||||
|
}
|
||||||
|
|
||||||
|
export interface PPTTextElement extends PPTBaseElement{
|
||||||
|
type: 'text';
|
||||||
content: string;
|
content: string;
|
||||||
rotate?: number;
|
rotate?: number;
|
||||||
outline?: PPTElementOutline;
|
outline?: PPTElementOutline;
|
||||||
@ -58,15 +61,8 @@ export interface ImageElementClip {
|
|||||||
range: [[number, number], [number, number]];
|
range: [[number, number], [number, number]];
|
||||||
shape: string;
|
shape: string;
|
||||||
}
|
}
|
||||||
export interface PPTImageElement {
|
export interface PPTImageElement extends PPTBaseElement{
|
||||||
type: 'image';
|
type: 'image';
|
||||||
id: string;
|
|
||||||
left: number;
|
|
||||||
top: number;
|
|
||||||
lock?: boolean;
|
|
||||||
groupId?: string;
|
|
||||||
width: number;
|
|
||||||
height: number;
|
|
||||||
fixedRatio: boolean;
|
fixedRatio: boolean;
|
||||||
src: string;
|
src: string;
|
||||||
rotate?: number;
|
rotate?: number;
|
||||||
@ -82,15 +78,8 @@ export interface ShapeGradient {
|
|||||||
color: [string, string];
|
color: [string, string];
|
||||||
rotate: number;
|
rotate: number;
|
||||||
}
|
}
|
||||||
export interface PPTShapeElement {
|
export interface PPTShapeElement extends PPTBaseElement{
|
||||||
type: 'shape';
|
type: 'shape';
|
||||||
id: string;
|
|
||||||
left: number;
|
|
||||||
top: number;
|
|
||||||
lock?: boolean;
|
|
||||||
groupId?: string;
|
|
||||||
width: number;
|
|
||||||
height: number;
|
|
||||||
viewBox: number;
|
viewBox: number;
|
||||||
path: string;
|
path: string;
|
||||||
fixedRatio: boolean;
|
fixedRatio: boolean;
|
||||||
@ -103,16 +92,10 @@ export interface PPTShapeElement {
|
|||||||
shadow?: PPTElementShadow;
|
shadow?: PPTElementShadow;
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface PPTLineElement {
|
export interface PPTLineElement extends Omit<PPTBaseElement, 'height'>{
|
||||||
type: 'line';
|
type: 'line';
|
||||||
id: string;
|
|
||||||
left: number;
|
|
||||||
top: number;
|
|
||||||
lock?: boolean;
|
|
||||||
groupId?: string;
|
|
||||||
start: [number, number];
|
start: [number, number];
|
||||||
end: [number, number];
|
end: [number, number];
|
||||||
width: number;
|
|
||||||
style: string;
|
style: string;
|
||||||
color: string;
|
color: string;
|
||||||
points: [string, string];
|
points: [string, string];
|
||||||
@ -126,15 +109,8 @@ export interface ChartData {
|
|||||||
labels: string[];
|
labels: string[];
|
||||||
series: number[][];
|
series: number[][];
|
||||||
}
|
}
|
||||||
export interface PPTChartElement {
|
export interface PPTChartElement extends PPTBaseElement{
|
||||||
type: 'chart';
|
type: 'chart';
|
||||||
id: string;
|
|
||||||
left: number;
|
|
||||||
top: number;
|
|
||||||
lock?: boolean;
|
|
||||||
groupId?: string;
|
|
||||||
width: number;
|
|
||||||
height: number;
|
|
||||||
fill?: string;
|
fill?: string;
|
||||||
chartType: ChartType;
|
chartType: ChartType;
|
||||||
data: ChartData;
|
data: ChartData;
|
||||||
@ -169,15 +145,8 @@ export interface TableTheme {
|
|||||||
colHeader: boolean;
|
colHeader: boolean;
|
||||||
colFooter: boolean;
|
colFooter: boolean;
|
||||||
}
|
}
|
||||||
export interface PPTTableElement {
|
export interface PPTTableElement extends PPTBaseElement{
|
||||||
type: 'table';
|
type: 'table';
|
||||||
id: string;
|
|
||||||
left: number;
|
|
||||||
top: number;
|
|
||||||
lock?: boolean;
|
|
||||||
groupId?: string;
|
|
||||||
width: number;
|
|
||||||
height: number;
|
|
||||||
outline: PPTElementOutline;
|
outline: PPTElementOutline;
|
||||||
theme?: TableTheme;
|
theme?: TableTheme;
|
||||||
colWidths: number[];
|
colWidths: number[];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user