如何在C#中设置图像的宽度和高度
How To Set The Width And Height In Image C#
我有一张图片,我只需要裁剪它
- 例如我图片的像素是 (257,50)
- 我只需要那张照片的 (200,20) 我不需要那张照片的其余部分
我该怎么做?
中试用此功能
private Bitmap CropImage(Image originalImage, Rectangle sourceRectangle,
Rectangle? destinationRectangle = null)
{
if (destinationRectangle == null)
{
destinationRectangle = new Rectangle(Point.Empty, sourceRectangle.Size);
}
var croppedImage = new Bitmap(destinationRectangle.Value.Width,
destinationRectangle.Value.Height);
using (var graphics = Graphics.FromImage(croppedImage))
{
graphics.DrawImage(originalImage, destinationRectangle.Value,
sourceRectangle, GraphicsUnit.Pixel);
}
return croppedImage;
}
/// <summary>
/// Button click to choose an image and test
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnCrop_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == DialogResult.OK)
{
string imageFile = ofd.FileName;
Image img = new Bitmap(imageFile);
Rectangle source = new Rectangle(0, 0, 120, 20);
Image cropped = CropImage(img, source);
// Save cropped image here
cropped.Save(Path.GetDirectoryName(imageFile) + "\croppped." + Path.GetExtension(imageFile));
}
}
我有一张图片,我只需要裁剪它
- 例如我图片的像素是 (257,50)
- 我只需要那张照片的 (200,20) 我不需要那张照片的其余部分 我该怎么做?
private Bitmap CropImage(Image originalImage, Rectangle sourceRectangle,
Rectangle? destinationRectangle = null)
{
if (destinationRectangle == null)
{
destinationRectangle = new Rectangle(Point.Empty, sourceRectangle.Size);
}
var croppedImage = new Bitmap(destinationRectangle.Value.Width,
destinationRectangle.Value.Height);
using (var graphics = Graphics.FromImage(croppedImage))
{
graphics.DrawImage(originalImage, destinationRectangle.Value,
sourceRectangle, GraphicsUnit.Pixel);
}
return croppedImage;
}
/// <summary>
/// Button click to choose an image and test
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void btnCrop_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == DialogResult.OK)
{
string imageFile = ofd.FileName;
Image img = new Bitmap(imageFile);
Rectangle source = new Rectangle(0, 0, 120, 20);
Image cropped = CropImage(img, source);
// Save cropped image here
cropped.Save(Path.GetDirectoryName(imageFile) + "\croppped." + Path.GetExtension(imageFile));
}
}