在C#中,可以使用Graphics
类和DrawImage
方法来对PictureBox
中的图像进行缩放
using System;
using System.Drawing;
using System.Windows.Forms;
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
// 加载图像到 PictureBox
pictureBox1.Image = Image.FromFile("path/to/your/image.jpg");
}
private void buttonScale_Click(object sender, EventArgs e)
{
// 设置缩放比例
float scaleFactor = 0.5f;
// 获取原始图像尺寸
int originalWidth = pictureBox1.Image.Width;
int originalHeight = pictureBox1.Image.Height;
// 计算缩放后的图像尺寸
int newWidth = (int)(originalWidth * scaleFactor);
int newHeight = (int)(originalHeight * scaleFactor);
// 创建一个新的 Bitmap 用于存储缩放后的图像
Bitmap scaledImage = new Bitmap(newWidth, newHeight);
// 创建一个 Graphics 对象用于绘制缩放后的图像
using (Graphics graphics = Graphics.FromImage(scaledImage))
{
// 设置高质量的插值模式
graphics.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
// 设置高质量的缩放模式
graphics.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.HighQuality;
// 设置高质量的渲染模式
graphics.PixelOffsetMode = System.Drawing.Drawing2D.PixelOffsetMode.HighQuality;
// 绘制缩放后的图像
graphics.DrawImage(pictureBox1.Image, new Rectangle(0, 0, newWidth, newHeight));
}
// 将缩放后的图像显示在 PictureBox 上
pictureBox1.Image = scaledImage;
}
}
这段代码首先加载一张图片到PictureBox
控件中。然后,当用户点击按钮时,程序会根据设定的缩放比例对图像进行缩放,并将缩放后的图像显示在PictureBox
上。注意,你需要将path/to/your/image.jpg
替换为实际图像文件的路径。