public
Bitmap ResizeImage(Image
image, int width,
int height)
{
var destinationRectangle
= new
Rectangle(0, 0,
width, height);
var destinationImage
= new
Bitmap(width, height);
destinationImage.SetResolution(image.HorizontalResolution, image.VerticalResolution);
using (var
graphics = Graphics.FromImage(destinationImage))
{
SetGraphicsOptions(graphics);
using
(var wrapMode =
new
ImageAttributes())
{
wrapMode.SetWrapMode(WrapMode.TileFlipXY);
graphics.DrawImage(image, destinationRectangle, 0, 0, image.Width, image.Height,
GraphicsUnit.Pixel,
wrapMode);
}
}
return destinationImage;
}
private
void SetGraphicsOptions(Graphics
graphics)
{
graphics.CompositingMode =
CompositingMode.SourceCopy;
graphics.CompositingQuality =
CompositingQuality.HighQuality;
graphics.InterpolationMode =
InterpolationMode.HighQualityBicubic;
graphics.SmoothingMode =
SmoothingMode.HighQuality;
graphics.PixelOffsetMode =
PixelOffsetMode.HighQuality;
}
Keine Kommentare:
Kommentar veröffentlichen