コード例 #1
0
        public ClipRect(ClipWindow clipWin, Rect rect)
        {
            InitializeComponent();

            _clipWin = clipWin;
            UpdateLayout(rect);
        }
コード例 #2
0
        public static string ShowClip()
        {
            string path = string.Empty;

            if (clipWIN == null)
            {
                clipWIN = new ClipWindow()
                {
                    Topmost = true
                };
                clipWIN._screenBitmap = ImageDeal.GetScreenSnapshot(clipWIN._screenScale);;
                clipWIN.ShowDialog();

                path    = clipWIN._clipSavePath;
                clipWIN = null;
            }
            else
            {
                clipWIN.Activate();
            }

            // Rect rect = clipWIN.rectClip.Rect;

            // double wpfDpi = 96;

            // wpfDpi = clipWIN._sysDpi / wpfDpi;
            // double rateDpi = wpfDpi;

            // var clip = new System.Drawing.Rectangle((int)(rect.X * rateDpi), (int)(rect.Y * rateDpi),
            //(int)(rect.Width * rateDpi), (int)(rect.Height * rateDpi));

            // string root = SDKClient.SDKClient.Instance.property.CurrentAccount.imgPath;
            // if (!System.IO.Directory.Exists(root))
            // {
            //     System.IO.Directory.CreateDirectory(root);
            // }
            // clipWIN._clipSavePath = System.IO.Path.Combine(root, $"{Guid.NewGuid().ToString()}.jpg");
            // BitmapSource source = ImageDeal.SaveUiToImageFile(clipWIN.canvasMain, clip, rateDpi, clipWIN._clipSavePath);
            // if (source == null)
            // {
            //     clipWIN._clipSavePath = null;
            // }
            // else
            // {
            //     Clipboard.SetImage(source);
            // }

            return(path);
        }