public Figure( PdfPage page, RelativeSelection selection) { _page = page; _selection = selection; }
private Rectangle CalculateCropRectangleInPixels(RelativeSelection selection, int width, int height) { return new Rectangle( (int)(width * selection.RelativeOffsetX), (int)(height * selection.RelativeOffsetY), (int)(width * selection.RelativeWidth), (int)(height * selection.RelativeHeight)); }
public void SetRotation(int rotation) { _selection = new RelativeSelection( _page.PageDimensions, _selection.RelativeOffsetX, _selection.RelativeOffsetY, _selection.RelativeWidth, _selection.RelativeHeight, rotation); }
public void FigureSelected(FigureSelectedEventArgs arg) { var sourceRect = new RelativeSelection( _page.PageDimensions, arg.RelativeOffsetX, arg.RelativeOffsetY, arg.RelativeWidth, arg.RelativeHeight); var figure = _page.CreateFigure(sourceRect); _figureMap.Add(arg.Id, figure); var figureSelectedEvent = new FigureSelectedEvent( figure, () => { _page.RemoveFigure(_figureMap[arg.Id]); _figureMap.Remove(arg.Id); arg.Undo(); }); _messageBus.Publish(figureSelectedEvent); }
public Figure CreateFigure(RelativeSelection sourceRect) { var figure = _container.With(sourceRect).With(this).GetInstance<Figure>(); _figures.Add(figure); return figure; }