如题,我缩小放大是直接改变图片长宽的

解决方案 »

  1.   


    HttpPostedFile upPhoto = photo.PostedFile;
                        int upPhotoLength = upPhoto.ContentLength;                    System.Drawing.Image oldImage, newImage; //存放老图和新图                    int imageLength = 60; //60k
                        int imageSize = 400;
                        if (upPhotoLength > imageLength * 1024)
                        {
                            //调整图片大小
                            oldImage = System.Drawing.Image.FromStream(upPhoto.InputStream);                        newImage = Helper.ThumbnailImage(oldImage, imageSize);
                        }
                        else
                        {
                            newImage = System.Drawing.Image.FromStream(upPhoto.InputStream);
                        }                    MemoryStream PhotoStream = new MemoryStream();
                        newImage.Save(PhotoStream, System.Drawing.Imaging.ImageFormat.Jpeg);
    用缩略图的方式
      

  2.   


    public static System.Drawing.Image ThumbnailImage(System.Drawing.Image oldImage, int newSize)
        {
            decimal width = oldImage.Width;
            decimal height = oldImage.Height;
            int newwidth, newheight;
            if (width > height)
            {
                newwidth = newSize;
                newheight = (int)(height / width * newSize);
            }
            else
            {
                newheight = newSize;
                newwidth = (int)(width / height * newSize);
            }
            return oldImage.GetThumbnailImage(newwidth, newheight, null, IntPtr.Zero);    }
      

  3.   

    我也要问问下  有没有一个好的办法可以解决,在html里面图片放大后也不能失真的