Files
obsidian-excalidraw-plugin/docs/API/attributes_functions_overview.md
Zsolt Viczian e66b7aef7f 1.2.24 gridSize
2021-08-31 20:40:25 +02:00

2.1 KiB

◀ Excalidraw Automate How To

Attributes and functions overview

Here's the interface implemented by ExcalidrawAutomate:

ExcalidrawAutomate: {
  plugin: ExcalidrawPlugin;
  elementIds: [];
  elementsDict: {},
  style: {
    strokeColor: string;
    backgroundColor: string;
    angle: number;
    fillStyle: FillStyle;
    strokeWidth: number;
    storkeStyle: StrokeStyle;
    roughness: number;
    opacity: number;
    strokeSharpness: StrokeSharpness;
    fontFamily: number;
    fontSize: number;
    textAlign: string;
    verticalAlign: string;
    startArrowHead: string;
    endArrowHead: string;
  }
  canvas: {theme: string, viewBackgroundColor: string, gridSize: number};
  setFillStyle(val:number): void;
  setStrokeStyle(val:number): void;
  setStrokeSharpness(val:number): void;
  setFontFamily(val:number): void;
  setTheme(val:number): void;
  addToGroup(objectIds:[]):void;
  addRect(topX:number, topY:number, width:number, height:number):string;
  addDiamond(topX:number, topY:number, width:number, height:number):string;
  addEllipse(topX:number, topY:number, width:number, height:number):string;
  addText(topX:number, topY:number, text:string, formatting?:{width?:number, height?:number,textAlign?: string, verticalAlign?:string, box?: boolean, boxPadding?: number},id?:string):string;
  addLine(points: [[x:number,y:number]]):void;
  addArrow(points: [[x:number,y:number]],formatting?:{startArrowHead:string,endArrowHead:string,startObjectId:string,endObjectId:string}):void ;
  connectObjects(objectA: string, connectionA: ConnectionPoint, objectB: string, connectionB: ConnectionPoint, formatting?:{numberOfPoints: number,startArrowHead:string,endArrowHead:string, padding: number}):void;
  toClipboard(templatePath?:string): void;
  create(params?:{filename: string, foldername:string, templatePath:string, onNewPane: boolean}):Promise<void>;
  createSVG(templatePath?:string):Promise<SVGSVGElement>;
  createPNG(templatePath?:string):Promise<any>;
  wrapText(text:string, lineLen:number):string;
  clear(): void;
  reset(): void;
  isExcalidrawFile(f:TFile): boolean;  
};