C# – generating jpg thumbnails in dotnet

cimage

i am using this code to take a jpg image and save it as a thumbnail but it seems very slow ..

        Image thumbNail = image.GetThumbnailImage(width, height, null, new IntPtr());

is there any faster way to generate a large amount of thumbnails from a directory of images?

Best Answer

Try Draw Image - Re Edited

    public Image ResizeImage(Image openImage, int NewWidth, int NewHeight) {
        var openBitmap = new Bitmap(openImage);
        var newBitmap = new Bitmap(NewWidth, NewHeight);
        using (Graphics g = Graphics.FromImage(openBitmap))
        {
            g.InterpolationMode = InterpolationMode.HighQualityBicubic;
            g.PixelOffsetMode = PixelOffsetMode.HighQuality;
            g.DrawImage(newBitmap, new Rectangle(0, 0, NewWidth, NewHeight));
        }
        openBitmap.Dispose(); //Clear The Old Large Bitmap From Memory

        return (Image)newBitmap;
    }

Typical 3-4mb Image Takes Between 4-8ms