Add scalable image feature

This commit is contained in:
Dolan
2018-03-24 19:06:10 +00:00
parent a954c69458
commit 05816abc12
15 changed files with 179 additions and 55 deletions

View File

@ -3,14 +3,23 @@ import { XmlComponent } from "file/xml-components";
import { ExtentsAttributes } from "./extents-attributes";
export class Extents extends XmlComponent {
private attributes: ExtentsAttributes;
constructor(x: number, y: number) {
super("a:ext");
this.root.push(
new ExtentsAttributes({
cx: x,
cy: y,
}),
);
this.attributes = new ExtentsAttributes({
cx: x,
cy: y,
});
this.root.push(this.attributes);
}
public setXY(x: number, y: number): void {
this.attributes.set({
cx: x,
cy: y,
});
}
}

View File

@ -4,10 +4,18 @@ import { Extents } from "./extents/extents";
import { Offset } from "./offset/off";
export class Form extends XmlComponent {
private extents: Extents;
constructor(x: number, y: number) {
super("a:xfrm");
this.root.push(new Extents(x, y));
this.extents = new Extents(x, y);
this.root.push(this.extents);
this.root.push(new Offset());
}
public setXY(x: number, y: number): void {
this.extents.setXY(x, y);
}
}

View File

@ -7,6 +7,8 @@ import { PresetGeometry } from "./preset-geometry/preset-geometry";
import { ShapePropertiesAttributes } from "./shape-properties-attributes";
export class ShapeProperties extends XmlComponent {
private form: Form;
constructor(x: number, y: number) {
super("pic:spPr");
@ -16,9 +18,15 @@ export class ShapeProperties extends XmlComponent {
}),
);
this.root.push(new Form(x, y));
this.form = new Form(x, y);
this.root.push(this.form);
this.root.push(new PresetGeometry());
// this.root.push(new NoFill());
// this.root.push(new Outline());
}
public setXY(x: number, y: number): void {
this.form.setXY(x, y);
}
}