public FCrop(ChangeTracker changeTracker) { this.changeTracker = changeTracker; InitializeComponent(); CropTransform = new CropTransform(); }
public FCrop(ChangeTracker changeTracker, ThumbnailRenderer thumbnailRenderer) { this.changeTracker = changeTracker; this.thumbnailRenderer = thumbnailRenderer; InitializeComponent(); CropTransform = new CropTransform(); }
public static Bitmap PostProcessStep1(Image output, ScanProfile profile) { double scaleFactor = 1; if (!profile.UseNativeUI) { scaleFactor = profile.AfterScanScale.ToIntScaleFactor(); } var result = ImageScaleHelper.ScaleImage(output, scaleFactor); if (!profile.UseNativeUI && profile.ForcePageSize) { float width = output.Width / output.HorizontalResolution; float height = output.Height / output.VerticalResolution; if (float.IsNaN(width) || float.IsNaN(height)) { width = output.Width; height = output.Height; } PageDimensions pageDimensions = profile.PageSize.PageDimensions() ?? profile.CustomPageSize; if (pageDimensions.Width > pageDimensions.Height && width < height) { // Flip dimensions result = new CropTransform { Right = (int)((width - (float)pageDimensions.HeightInInches()) * output.HorizontalResolution), Bottom = (int)((height - (float)pageDimensions.WidthInInches()) * output.VerticalResolution) }.Perform(result); // result.SetResolution((float)(output.Width / pageDimensions.HeightInInches()), (float)(output.Height / pageDimensions.WidthInInches())); } else { result = new CropTransform { Right = (int)((width - (float)pageDimensions.WidthInInches()) * output.HorizontalResolution), Bottom = (int)((height - (float)pageDimensions.HeightInInches()) * output.VerticalResolution) }.Perform(result); //result.SetResolution((float)(output.Width / pageDimensions.WidthInInches()), (float)(output.Height / pageDimensions.HeightInInches())); } } return result; }
private void btnRevert_Click(object sender, EventArgs e) { CropTransform = new CropTransform(); UpdatePreviewBox(); }