Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Thiago Gomes - Developer

Upload de Imagem - Alterar o Tamanho ( FileUpload )

Recommended Posts

Bom dia galera, preciso de uma ajuda.

Estou fazendo um upload com FileUpload, C#

 

Antes de Salvar a imagem, tentei o seguinte:

 

this.FileUpload1.Width = Unit.Pixel(350);

this.FileUpload1.Height = Unit.Pixel(350);

 

Mas nao deu certo..

Preciso de um outro componente para mudar o tamanho da imagem? ( Width, e Height)

Alguem pode me ajudar?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Das opções que testei achei essa a melhor.

 

        System.Drawing.Image imagem = System.Drawing.Image.FromFile(caminhoImagem);
       int altura = imagem.Height;
       int largura = 0;

       if (imagem.Width > 250)
           largura = 250;
       else
           largura = imagem.Width;

       altura = imagem.Height * largura / imagem.Width;
       largura = imagem.Width * altura / imagem.Height;

       imagem.Dispose();

       String initialPath = caminhoImagem;
       String finalPath = "CAMINHO DA IMAGEM FINAL" + nomeImagem;
       System.Drawing.Image originalImage = System.Drawing.Image.FromFile(initialPath);
       System.Drawing.Image thumbImage;
       Graphics graphic;

       ImageFormat format = originalImage.RawFormat;
       thumbImage = new Bitmap(largura, altura);

       graphic = Graphics.FromImage(thumbImage);
       graphic.CompositingQuality = CompositingQuality.HighQuality;
       graphic.SmoothingMode = SmoothingMode.HighQuality;
       graphic.InterpolationMode = InterpolationMode.HighQualityBicubic;
       graphic.DrawImage(originalImage, new Rectangle(0, 0, largura, altura));

       originalImage.Dispose();
       thumbImage.Save(finalPath, format);
       thumbImage.Dispose();
       imagem.Dispose();

 

Nesse caso estou limitando a largura e a altura a altera proporcionalmente para não distorcer a imagem.

 

Esse metodos necessida das bibliotecas

using System.IO;
using System.Drawing;
using System.Drawing.Imaging;
using System.Drawing.Drawing2D;

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.