Przytnij obraz w c #
Mam zdjęcie, które chcę przyciąć, gdy nacisnę przycisk na formularzu. Mam następujący kod, który jest uruchamiany po naciśnięciu przycisku, ale nic nie robi z obrazem:
<code>try { Image image = Image.FromFile("test.jpg"); Bitmap bmp = new Bitmap(200, 200, PixelFormat.Format24bppRgb); bmp.SetResolution(80, 60); Graphics gfx = Graphics.FromImage(bmp); gfx.SmoothingMode = SmoothingMode.AntiAlias; gfx.InterpolationMode = InterpolationMode.HighQualityBicubic; gfx.PixelOffsetMode = PixelOffsetMode.HighQuality; gfx.DrawImage(image, new Rectangle(0, 0, 200, 200), 10, 10, 200, 200, GraphicsUnit.Pixel); // Dispose to free up resources image.Dispose(); bmp.Dispose(); gfx.Dispose(); } catch (Exception ex) { MessageBox.Show(ex.Message); } </code>
Mój obraz to w rzeczywistości zrzut ekranu aktywnego okna formularza z następującym kodem:
<code>Rectangle bounds = this.Bounds; using (Bitmap bitmap = new Bitmap(bounds.Width, bounds.Height)) { using (Graphics g = Graphics.FromImage(bitmap)) { g.CopyFromScreen(new Point(bounds.Left, bounds.Top), Point.Empty, bounds.Size); } bitmap.Save("test.jpg", ImageFormat.Jpeg); } </code>
Aby zakończyć to, naciskając ten sam przycisk, najpierw chcę zrobić zrzut ekranu formularza, a następnie przyciąć ten obraz, ale kadrowanie nie działa. Dlaczego?