Example #1
0
		public Figure(
			PdfPage page,
			RelativeSelection selection)
		{
			_page = page;
			_selection = selection;
		}
Example #2
0
		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));
		}
Example #3
0
		public void SetRotation(int rotation)
		{
			_selection = new RelativeSelection(
				_page.PageDimensions,
				_selection.RelativeOffsetX,
				_selection.RelativeOffsetY,
				_selection.RelativeWidth,
				_selection.RelativeHeight,
				rotation);
		}
Example #4
0
		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);
		}
Example #5
0
		public Figure CreateFigure(RelativeSelection sourceRect)
		{
			var figure = _container.With(sourceRect).With(this).GetInstance<Figure>();
			_figures.Add(figure);
			return figure;
		}