/// <summary> /// Adds the annotation with comment. /// </summary> public void AddNewComment() { // get comment annotation image VintasoftImage image = DemosResourcesManager.GetResourceAsImage( "DemosCommonCode.Annotation.Comments.AnnotationCommentBuilder.CommentIcon.png"); // create comment annotation data EmbeddedImageAnnotationData annotationData = new EmbeddedImageAnnotationData(image); Resolution resolution = _annotationVisualTool.ImageViewer.Image.Resolution; annotationData.Size = new SizeF( (float)UnitOfMeasureConverter.ConvertToDeviceIndependentPixels(image.Width, UnitOfMeasure.Pixels, resolution.Horizontal), (float)UnitOfMeasureConverter.ConvertToDeviceIndependentPixels(image.Height, UnitOfMeasure.Pixels, resolution.Vertical)); annotationData.Border = false; // create comment annotationData.Comment = new AnnotationComment(Color.Yellow, Environment.UserName); annotationData.Comment.Type = "Comment"; // build annotation _annotationVisualTool.AnnotationBuildingFinished += AnnotationVisualTool_AnnotationBuildingFinished; RectangleAnnotationView view = (RectangleAnnotationView)_annotationVisualTool.AddAndBuildAnnotation(annotationData); view.Builder = new RectangularObjectMoveBuilder(view, annotationData.Size); }
/// <summary> /// Returns padding value converted from specified /// <see cref="UnitOfMeasure"> to millimeters. /// </summary> /// <param name="padding">Padding value.</param> /// <param name="units">Measure units of input padding value.</param> /// <returns> Padding value converted from specified <see cref="UnitOfMeasure"> to millimeters.</returns> private PaddingF ConvertPaddingToMillimeters(PaddingF padding, UnitOfMeasure units) { return(new PaddingF( (float)UnitOfMeasureConverter.ConvertToMillimeters(padding.Left, units), (float)UnitOfMeasureConverter.ConvertToMillimeters(padding.Top, units), (float)UnitOfMeasureConverter.ConvertToMillimeters(padding.Right, units), (float)UnitOfMeasureConverter.ConvertToMillimeters(padding.Bottom, units))); }
/// <summary> /// Returns padding value converted from specified /// <see cref="UnitOfMeasure"> to the device independent pixels. /// </summary> /// <param name="padding">Padding value.</param> /// <param name="units">Measure units of input padding value.</param> /// <returns> Padding value converted from specified /// <see cref="UnitOfMeasure"> to the device independent pixels.</returns> private PaddingF ConvertPaddingToDips(PaddingF padding, UnitOfMeasure units) { return(new PaddingF( (float)UnitOfMeasureConverter.ConvertToDeviceIndependentPixels(padding.Left, units), (float)UnitOfMeasureConverter.ConvertToDeviceIndependentPixels(padding.Top, units), (float)UnitOfMeasureConverter.ConvertToDeviceIndependentPixels(padding.Right, units), (float)UnitOfMeasureConverter.ConvertToDeviceIndependentPixels(padding.Bottom, units))); }
/// <summary> /// Handles the SelectedIndexChanged event of PageSizeComboBox object. /// </summary> private void pageSizeComboBox_SelectedIndexChanged(object sender, EventArgs e) { if (PageLayoutSettings == null) { return; } if (pageSizeComboBox.SelectedItem.ToString() != "Undefined") { ImageSize size; // if custom page size selected if (pageSizeComboBox.SelectedItem.ToString() == "Custom") { pageWidthNumericUpDown.Enabled = true; pageHeightNumericUpDown.Enabled = true; // if page size already set if (PageLayoutSettings.PageSize != null) { // create custom page size with current values size = ImageSize.FromInches( PageLayoutSettings.PageSize.WidthInInch, PageLayoutSettings.PageSize.HeightInInch, PageLayoutSettings.PageSize.Resolution); } else { // create custom page size with default values size = ImageSize.FromMillimeters(100, 100, Resolution.ScreenResolution); } } else { // get page size from paper kind size = ImageSize.FromPaperKind((PaperSizeKind)pageSizeComboBox.SelectedItem); pageWidthNumericUpDown.Enabled = false; pageHeightNumericUpDown.Enabled = false; } PageLayoutSettings.PageSize = size; // update page width and height containers pageWidthNumericUpDown.Value = (int)Math.Round(UnitOfMeasureConverter.ConvertToMillimeters(size.WidthInInch, UnitOfMeasure.Inches)); pageHeightNumericUpDown.Value = (int)Math.Round(UnitOfMeasureConverter.ConvertToMillimeters(size.HeightInInch, UnitOfMeasure.Inches)); } else { PageLayoutSettings.PageSize = null; pageWidthNumericUpDown.Enabled = false; pageHeightNumericUpDown.Enabled = false; } }
/// <summary> /// Sets the annotation comment location. /// </summary> /// <param name="comment">The comment.</param> private void SetAnnotationCommentLocation(AnnotationComment comment) { VintasoftImage focusedImage = _annotationVisualTool.ImageViewer.Image; if (focusedImage != null) { float x = (float)UnitOfMeasureConverter.ConvertToDeviceIndependentPixels(focusedImage.Width, UnitOfMeasure.Pixels, focusedImage.Resolution.Horizontal); comment.BoundingBox = new RectangleF( x, comment.Annotation.Location.Y, AnnotationComment.DefaultCommentSize.Width, AnnotationComment.DefaultCommentSize.Height); } }