![]() |
Hoje vou apresentar um pequeno program que converte uma imagem para outro formato. |
Nosso programa feito na linguagem C# permite converter uma ou mais imagens para um formato especificado.
O programa possui apenas um formulário que é exibido a seguir:
Basta selecionar uma ou mais imagens no mesmo formato , a seguir selecionar o formato de saida e a pasta de destino e clicar no botão Converter Imagens.
Vejamos a seguir os principais códigos usados no programa.
No início do formulário definimos um array de strings para armazenar as imagens selecionadas:
List<string> lista = new
List<string>();
string resultado="";
No evento Click do botão para selecionar imagens temos o código abaixo:
private void btnProcurar_Click(object sender, EventArgs e)
{
lbImagens.Items.Clear();
lista.Clear();
openFileDialog1.Multiselect = true;
openFileDialog1.Filter = "Bmp image(*.bmp)|*.bmp|" + "Jpg image(*.jpg)|*.jpg|"
+ "Png image(*.png)|*.png|" + "Gif image(*.gif)|*.gif|" + "Emf image(*.emf)|*.emf|"
+ "Exif image(*.exif)|*.exif|" + "Icon image(*.ico)|*.ico|" +
"Wmf image(*.wmf)|*.wmf|" + "Tiff image(*.tiff)|*.tiff|" + "Todos os Arqs.(*.*)|*.*";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string[] info = openFileDialog1.FileNames;
foreach (string s in info)
{
lbImagens.Items.Add(Path.GetFileName(s));
lista.Add(s);
}
}
}
|
O código para definir a pasta de destino é visto a seguir :
private void btnPastaDestino_Click(object sender, EventArgs e)
{
if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
{
resultado = folderBrowserDialog1.SelectedPath;
lblDestino.Text = resultado.ToString();
}
btnConverter.Enabled = true;
}
|
Na propriedade Items do controle cboFormatoImagem especificamos os formatos que podem ser selecionados.
No evento Click do botão para converter imagens temos o código que vai realizar a conversão:
private void btnConverter_Click(object sender, EventArgs e)
{
string str="";
int f = 0;
int total = lbImagens.Items.Count;
if (cboFormatoImagem.SelectedIndex >= 0 && total > 0 )
{
str = cboFormatoImagem.Items[cboFormatoImagem.SelectedIndex].ToString();
string path = "";
foreach (string s in lista)
{
Image img = Image.FromFile(@s);
path = resultado + "\\" + Path.GetFileNameWithoutExtension(s) + "." + str.ToLower();
try
{
switch (str)
{
case "Bmp":
img.Save(@path, System.Drawing.Imaging.ImageFormat.Bmp);
break;
case "Jpg":
img.Save(@path, System.Drawing.Imaging.ImageFormat.Jpeg);
break;
case "Gif":
img.Save(@path, System.Drawing.Imaging.ImageFormat.Gif);
break;
case "Png":
img.Save(@path, System.Drawing.Imaging.ImageFormat.Png);
break;
case "Emf":
img.Save(@path, System.Drawing.Imaging.ImageFormat.Emf);
break;
case "Exif":
img.Save(@path, System.Drawing.Imaging.ImageFormat.Exif);
break;
case "Ico":
img.Save(@path, System.Drawing.Imaging.ImageFormat.Icon);
break;
case "Wmf":
img.Save(@path, System.Drawing.Imaging.ImageFormat.Wmf);
break;
case "Tiff":
img.Save(@path, System.Drawing.Imaging.ImageFormat.Tiff);
break;
}
}
catch (Exception ex)
{
MessageBox.Show("Erro : " + ex.Message);
return;
}
f++;
}
lblmsg.Text = f.ToString() + " Imagem(ens) Convertida(s) com Sucesso !!!";
}
else
{
MessageBox.Show("Selecione o formato de sáida ou selecione uma imagem para converter ! !",
"*** Alerta ***", MessageBoxButtons.OK, MessageBoxIcon.Warning);
cboFormatoImagem.Select();
cboFormatoImagem.Focus();
}
}
|
Você pode melhorar o programa em diversos aspectos treinando assim suas habilidades na linguagem C#.
Pegue o código completo
aqui:
ConverteImagem.zip
"Todas as coisas são puras
para os puros, mas nada é puro para os contaminados e
infiéis; antes o seu entendimento e consciência estão
contaminados.
Confessam que conhecem a Deus, mas negam-no com as
obras, sendo abomináveis, e desobedientes, e reprovados
para toda a boa obra."
Tito 1:15,16
Veja os
Destaques e novidades do SUPER DVD Visual Basic
(sempre atualizado) : clique e confira !
Quer migrar para o VB .NET ?
Quer aprender C# ??
Quer aprender os conceitos da Programação Orientada a objetos ? Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ? |
Gostou ?
Compartilhe no Facebook
Compartilhe no Twitter
Referências:
Super DVD Vídeo Aulas - Vídeo Aula sobre VB .NET, ASP .NET e C#
VB.NET/ C# - Aplicações completas para você aprender a ... - Macoratti