Tag: 图像操作

动态地将位图返回到浏览器

我正在裁剪图像,并希望使用ashx处理程序返回它。 裁剪代码如下: public static System.Drawing.Image Crop(string img, int width, int height, int x, int y) { try { System.Drawing.Image image = System.Drawing.Image.FromFile(img); Bitmap bmp = new Bitmap(width, height, PixelFormat.Format24bppRgb); bmp.SetResolution(image.HorizontalResolution, image.VerticalResolution); Graphics gfx = Graphics.FromImage(bmp); gfx.SmoothingMode = SmoothingMode.AntiAlias; gfx.InterpolationMode = InterpolationMode.HighQualityBicubic; gfx.PixelOffsetMode = PixelOffsetMode.HighQuality; gfx.DrawImage(image, new Rectangle(0, 0, width, height), x, y, width, height, GraphicsUnit.Pixel); […]

C# – 如何更改PNG质量或颜色深度

我应该编写一个程序,从用户那里获取一些PNG图像,进行一些简单的编辑,如旋转,并将它们保存在JAR文件中,以便它可以将图像用作资源。 问题是,当我打开,说一个80kb的图像,然后用C#保存它,我得到一个质量相同但130kb空间的图像。 因为它必须进入J2ME jar文件,我真的需要更小的尺寸,至少是原始尺寸。 我尝试了下面的代码,但后来发现它只适用于Jpeg图像。 ImageCodecInfo[] codecs = ImageCodecInfo.GetImageEncoders(); int j = 0; for (j = 0; j < codecs.Length; j++) { if (codecs[j].MimeType == "image/png") break; } EncoderParameter ratio = new EncoderParameter(System.Drawing.Imaging.Encoder.Quality, 10L); EncoderParameters CodecParams = new EncoderParameters(1); CodecParams.Param[0] = ratio; Image im; im = pictureBox1.Image; im.Save(address , codecs[j], CodecParams); 这是将图像加载到图片框的位置: private void pictureBox1_DoubleClick(object […]