Example #1
0
        public static Bitmap GetRegionImage(RegionCaptureOptions options)
        {
            RegionCaptureOptions newOptions = GetRegionCaptureOptions(options);

            using (RegionCaptureForm form = new RegionCaptureForm(RegionCaptureMode.Default, newOptions))
            {
                form.ShowDialog();

                return(form.GetResultImage());
            }
        }
        public static Image GetRegionImage(RegionCaptureOptions options)
        {
            using (RegionCaptureForm form = new RegionCaptureForm(RegionCaptureMode.Default))
            {
                form.Config = GetRegionCaptureOptions(options);
                form.Config.ShowTips = false;

                form.Prepare();
                form.ShowDialog();

                return form.GetResultImage();
            }
        }
Example #3
0
        public static Image GetRegionImage(RegionCaptureOptions options)
        {
            using (RegionCaptureForm form = new RegionCaptureForm(RegionCaptureMode.Default))
            {
                form.Config          = GetRegionCaptureOptions(options);
                form.Config.ShowTips = false;

                form.Prepare();
                form.ShowDialog();

                return(form.GetResultImage());
            }
        }
Example #4
0
        public static Image GetRegionImage(RegionCaptureOptions options)
        {
            RegionCaptureOptions newOptions = GetRegionCaptureOptions(options);

            newOptions.ShowHotkeys = false;

            using (RegionCaptureForm form = new RegionCaptureForm(RegionCaptureMode.Default, newOptions))
            {
                form.Prepare();
                form.ShowDialog();

                return(form.GetResultImage());
            }
        }
Example #5
0
        public static Image AnnotateImage(Image img, RegionCaptureOptions options)
        {
            using (RegionCaptureForm form = new RegionCaptureForm(RegionCaptureMode.Editor))
            {
                form.Config = GetRegionCaptureOptions(options);
                form.Config.DetectWindows = false;
                form.Config.ShowTips      = false;
                form.Config.UseDimming    = false;

                form.Prepare(img);
                form.ShowDialog();

                if (form.Result == RegionResult.Region)
                {
                    return(form.GetResultImage());
                }
            }

            return(null);
        }
Example #6
0
        public static Image AnnotateImage(Image img, string filePath, RegionCaptureOptions options,
                                          Action <Image, string> saveImageRequested,
                                          Action <Image, string> saveImageAsRequested,
                                          Action <Image> copyImageRequested,
                                          Action <Image> uploadImageRequested,
                                          Action <Image> printImageRequested,
                                          bool taskMode = false)
        {
            RegionCaptureMode mode = taskMode ? RegionCaptureMode.TaskEditor : RegionCaptureMode.Editor;

            using (RegionCaptureForm form = new RegionCaptureForm(mode, options))
            {
                form.ImageFilePath = filePath;
                form.Prepare(img);
                form.ShowDialog();

                switch (form.Result)
                {
                case RegionResult.Close:     // Esc
                case RegionResult.AnnotateCancelTask:
                    return(null);

                case RegionResult.Region:     // Enter
                case RegionResult.AnnotateRunAfterCaptureTasks:
                    return(form.GetResultImage());

                case RegionResult.Fullscreen:     // Space or right click
                case RegionResult.AnnotateContinueTask:
                    return((Image)form.Image.Clone());

                case RegionResult.AnnotateSaveImage:
                    using (Image resultSaveImage = form.GetResultImage())
                    {
                        saveImageRequested(resultSaveImage, form.ImageFilePath);
                    }
                    break;

                case RegionResult.AnnotateSaveImageAs:
                    using (Image resultSaveImageAs = form.GetResultImage())
                    {
                        saveImageAsRequested(resultSaveImageAs, form.ImageFilePath);
                    }
                    break;

                case RegionResult.AnnotateCopyImage:
                    using (Image resultCopyImage = form.GetResultImage())
                    {
                        copyImageRequested(resultCopyImage);
                    }
                    break;

                case RegionResult.AnnotateUploadImage:
                    Image resultUploadImage = form.GetResultImage();
                    uploadImageRequested(resultUploadImage);
                    break;

                case RegionResult.AnnotatePrintImage:
                    using (Image resultPrintImage = form.GetResultImage())
                    {
                        printImageRequested(resultPrintImage);
                    }
                    break;
                }
            }

            return(null);
        }
Example #7
0
        public static void AnnotateImage(Image img, string filePath, RegionCaptureOptions options,
                                         Action <Image> afterCaptureTasksRequested,
                                         Action <Image, string> saveImageRequested,
                                         Action <Image, string> saveImageAsRequested,
                                         Action <Image> copyImageRequested,
                                         Action <Image> uploadImageRequested,
                                         Action <Image> printImageRequested)
        {
            using (RegionCaptureForm form = new RegionCaptureForm(RegionCaptureMode.Editor))
            {
                form.ImageFilePath = filePath;

                form.Config = GetRegionCaptureOptions(options);
                form.Config.DetectWindows = false;
                form.Config.ShowTips      = false;
                form.Config.UseDimming    = false;

                form.Prepare(img);
                form.ShowDialog();

                if (form.Result != RegionResult.Close)
                {
                    Image result = form.GetResultImage();

                    switch (form.Result)
                    {
                    default:
                        result.Dispose();
                        break;

                    case RegionResult.AnnotateRunAfterCaptureTasks:
                        afterCaptureTasksRequested(result);
                        break;

                    case RegionResult.AnnotateSaveImage:
                        saveImageRequested(result, form.ImageFilePath);
                        result.Dispose();
                        break;

                    case RegionResult.AnnotateSaveImageAs:
                        saveImageAsRequested(result, form.ImageFilePath);
                        result.Dispose();
                        break;

                    case RegionResult.AnnotateCopyImage:
                        copyImageRequested(result);
                        result.Dispose();
                        break;

                    case RegionResult.AnnotateUploadImage:
                        uploadImageRequested(result);
                        break;

                    case RegionResult.AnnotatePrintImage:
                        printImageRequested(result);
                        result.Dispose();
                        break;
                    }
                }
            }
        }
        public static void AnnotateImage(Image img, string filePath, RegionCaptureOptions options,
            Action<Image> afterCaptureTasksRequested,
            Action<Image, string> saveImageRequested,
            Action<Image, string> saveImageAsRequested,
            Action<Image> copyImageRequested,
            Action<Image> uploadImageRequested,
            Action<Image> printImageRequested)
        {
            using (RegionCaptureForm form = new RegionCaptureForm(RegionCaptureMode.Editor))
            {
                form.ImageFilePath = filePath;

                form.Config = GetRegionCaptureOptions(options);
                form.Config.DetectWindows = false;
                form.Config.ShowTips = false;
                form.Config.UseDimming = false;

                form.Prepare(img);
                form.ShowDialog();

                if (form.Result != RegionResult.Close)
                {
                    Image result = form.GetResultImage();

                    switch (form.Result)
                    {
                        default:
                            result.Dispose();
                            break;
                        case RegionResult.AnnotateRunAfterCaptureTasks:
                            afterCaptureTasksRequested(result);
                            break;
                        case RegionResult.AnnotateSaveImage:
                            saveImageRequested(result, form.ImageFilePath);
                            result.Dispose();
                            break;
                        case RegionResult.AnnotateSaveImageAs:
                            saveImageAsRequested(result, form.ImageFilePath);
                            result.Dispose();
                            break;
                        case RegionResult.AnnotateCopyImage:
                            copyImageRequested(result);
                            result.Dispose();
                            break;
                        case RegionResult.AnnotateUploadImage:
                            uploadImageRequested(result);
                            break;
                        case RegionResult.AnnotatePrintImage:
                            printImageRequested(result);
                            result.Dispose();
                            break;
                    }
                }
            }
        }
Example #9
0
        public static void CaptureRegion(TaskSettings taskSettings, bool autoHideForm = true)
        {
            RegionCaptureForm form = new RegionCaptureForm(RegionCaptureMode.Annotation);

            DoCapture(() =>
            {
                Image img = null;

                try
                {
                    form.Config = taskSettings.CaptureSettingsReference.SurfaceOptions;
                    form.Prepare(TaskHelpers.GetScreenshot(taskSettings).CaptureFullscreen());
                    form.ShowDialog();

                    img = form.GetResultImage();

                    if (img != null)
                    {
                        if (form.Result == RegionResult.Region && taskSettings.UploadSettings.RegionCaptureUseWindowPattern)
                        {
                            WindowInfo windowInfo = form.GetWindowInfo();

                            if (windowInfo != null)
                            {
                                img.Tag = new ImageTag
                                {
                                    WindowTitle = windowInfo.Text,
                                    ProcessName = windowInfo.ProcessName
                                };
                            }
                        }

                        lastRegionCaptureType = LastRegionCaptureType.Default;
                    }
                }
                finally
                {
                    if (form != null)
                    {
                        form.Dispose();
                    }
                }

                return img;
            }, CaptureType.Region, taskSettings, autoHideForm);
        }
Example #10
0
        public static Image AnnotateImage(Image img, string filePath, RegionCaptureOptions options,
                                          Action <Image, string> saveImageRequested,
                                          Action <Image, string> saveImageAsRequested,
                                          Action <Image> copyImageRequested,
                                          Action <Image> uploadImageRequested,
                                          Action <Image> printImageRequested)
        {
            using (RegionCaptureForm form = new RegionCaptureForm(RegionCaptureMode.TaskEditor))
            {
                form.ImageFilePath = filePath;

                form.Config = GetRegionCaptureOptions(options);
                form.Config.DetectWindows = false;
                form.Config.ShowHotkeys   = false;
                form.Config.UseDimming    = false;

                form.Prepare(img);
                form.ShowDialog();

                switch (form.Result)
                {
                case RegionResult.Close:     // Esc
                case RegionResult.AnnotateCancelTask:
                    return(null);

                case RegionResult.Region:     // Enter
                case RegionResult.AnnotateRunAfterCaptureTasks:
                    return(form.GetResultImage());

                case RegionResult.Fullscreen:     // Space
                case RegionResult.AnnotateContinueTask:
                    return((Image)img.Clone());

                case RegionResult.AnnotateSaveImage:
                    using (Image resultSaveImage = form.GetResultImage())
                    {
                        saveImageRequested(resultSaveImage, form.ImageFilePath);
                    }
                    break;

                case RegionResult.AnnotateSaveImageAs:
                    using (Image resultSaveImageAs = form.GetResultImage())
                    {
                        saveImageAsRequested(resultSaveImageAs, form.ImageFilePath);
                    }
                    break;

                case RegionResult.AnnotateCopyImage:
                    using (Image resultCopyImage = form.GetResultImage())
                    {
                        copyImageRequested(resultCopyImage);
                    }
                    break;

                case RegionResult.AnnotateUploadImage:
                    Image resultUploadImage = form.GetResultImage();
                    uploadImageRequested(resultUploadImage);
                    break;

                case RegionResult.AnnotatePrintImage:
                    using (Image resultPrintImage = form.GetResultImage())
                    {
                        printImageRequested(resultPrintImage);
                    }
                    break;
                }
            }

            return(null);
        }