Add back scale functionality
This commit is contained in:
@ -28,6 +28,8 @@ const defaultDrawingOptions: DrawingOptions = {
|
||||
};
|
||||
|
||||
export class Drawing extends XmlComponent {
|
||||
private inline: Inline;
|
||||
|
||||
constructor(imageData: IMediaData, drawingOptions?: DrawingOptions) {
|
||||
super("w:drawing");
|
||||
|
||||
@ -40,10 +42,16 @@ export class Drawing extends XmlComponent {
|
||||
...drawingOptions,
|
||||
};
|
||||
|
||||
|
||||
if (mergedOptions.position === PlacementPosition.INLINE) {
|
||||
this.root.push(new Inline(imageData.referenceId, imageData.dimensions));
|
||||
this.inline = new Inline(imageData.referenceId, imageData.dimensions);
|
||||
this.root.push(this.inline);
|
||||
} else if (mergedOptions.position === PlacementPosition.FLOATING) {
|
||||
this.root.push(new Anchor(imageData.referenceId, imageData.dimensions, mergedOptions));
|
||||
}
|
||||
}
|
||||
|
||||
public scale(factorX: number, factorY: number): void {
|
||||
this.inline.scale(factorX, factorY);
|
||||
}
|
||||
}
|
||||
|
@ -1,9 +1,11 @@
|
||||
import { Drawing } from "../../drawing";
|
||||
import { DrawingOptions } from "../../drawing/drawing";
|
||||
import { IMediaData } from "../../media/data";
|
||||
import { Run } from "../run";
|
||||
import { DrawingOptions } from "../../drawing/drawing";
|
||||
|
||||
export class PictureRun extends Run {
|
||||
private drawing: Drawing;
|
||||
|
||||
constructor(imageData: IMediaData, drawingOptions?: DrawingOptions) {
|
||||
super();
|
||||
|
||||
@ -11,6 +13,20 @@ export class PictureRun extends Run {
|
||||
throw new Error("imageData cannot be undefined");
|
||||
}
|
||||
|
||||
this.root.push(new Drawing(imageData, drawingOptions));
|
||||
this.drawing = new Drawing(imageData, drawingOptions);
|
||||
|
||||
this.root.push(this.drawing);
|
||||
}
|
||||
|
||||
public scale(factorX: number, factorY?: number): void {
|
||||
if (!factorX) {
|
||||
factorX = 1;
|
||||
}
|
||||
|
||||
if (!factorY) {
|
||||
factorY = factorX;
|
||||
}
|
||||
|
||||
this.drawing.scale(factorX, factorY);
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user