Wie kann man in ein Picturebox-Bild hineinzoomen, ohne die Bildschärfe zu verändern?C#

Ein Treffpunkt für C#-Programmierer
Anonymous
 Wie kann man in ein Picturebox-Bild hineinzoomen, ohne die Bildschärfe zu verändern?

Post by Anonymous »

Ich habe folgendes Problem beim Vergrößern eines Bildes in einer Picturebox. Nach mehrmaligem Vergrößern und Verkleinern wird das BMP-Bild sehr unscharf. Weiß jemand, wie man dieses Problem löst?

Hier ist der Code:

Code: Select all

    public Form1()
{
InitializeComponent();

pictureBox1.MouseEnter += new EventHandler(pictureBox1_MouseEnter);
pictureBox1.MouseWheel += new MouseEventHandler(pictureBox1_MouseWheel);

//Set the SizeMode to center the image.
this.pictureBox1.SizeMode = PictureBoxSizeMode.CenterImage;
}

private double zoom = 1.0;
void pictureBox1_MouseWheel(object sender, MouseEventArgs e)
{

if (pictureBox1.Image != null)
{
if (e.Delta < 0)
{
zoom = zoom * 1.05;
}
else
{
if (zoom != 1.0)
{
zoom = zoom / 1.05;
}
}

txttextBox1.Text = zoom.ToString();

Bitmap bmp = new Bitmap(pictureBox1.Image, Convert.ToInt32(pictureBox1.Width * zoom), Convert.ToInt32(pictureBox1.Height * zoom));
Graphics g = Graphics.FromImage(bmp);
g.InterpolationMode = InterpolationMode.Default;
pictureBox1.Image = bmp;
}

}

private void pictureBox1_MouseEnter(object sender, EventArgs e)
{
pictureBox1.Focus();
}
Es spielt keine Rolle, wann ich den Interpolationsmodus ändere!
Danke!

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post