2012-12-27 56 views
1

目前,我在面板中使用图片框来显示图片。我已经实现了一个通过鼠标光标移动图像的逻辑。如何裁剪和保存图像的可见部分?

我的问题是,如果图像的尺寸大于面板(图片框的SizeMode=AutoSize),我想裁剪并保存在面板上显示的图像的部分大。我不知道该怎么做。我是一个begginer,我没有任何这方面的经验。

+0

可能重复http://stackoverflow.com/a/734941/ 1042848 –

+0

可能重复[如何使用C#裁剪图像?](http://stackoverflow.com/questions/734930/how-to-crop-an-image-using-c) – Tilak

回答

0

您可以使用此代码即可裁剪图片..

private static Image cropImage(Image img, Rectangle cropArea) 
{ 
    Bitmap bmpImage = new Bitmap(img); 
    Bitmap bmpCrop = bmpImage.Clone(cropArea,bmpImage.PixelFormat); 
    return (Image)(bmpCrop); 
} 

也看到这些教程..
http://www.switchonthecode.com/tutorials/csharp-tutorial-image-editing-saving-cropping-and-resizing
http://jasonjano.wordpress.com/2010/02/13/image-resizing-and-cropping-in-c/

+0

thanx ..但我想找到面板的像素(X轴和Y轴),我不知道该怎么做.. – user1931313

+0

请参阅相关主题..http://stackoverflow.com/questions/8553794/how-to-get-bitmap-from-painted-panel-in-c-sharp http://stackoverflow.com/questions/476255/access -to-A-单像素在-C-尖锐 – ridoy