Bom pessoal, estou tendo problemas com uma aplicação em que, de uma imagem base (.jpg) ,eu escrevo um texto e salvo a imagem no próprio servidor para então ser enviada a url por email para a pessoa. Basicamente é um sistema de cartao de natal, em que o usuário digita o email e o nome da pessoa que deseja "presentear" e envia o cartão.
Na minha máquina funciona perfeitamente, o problema é quando eu coloco "online". Ele da o seguinte erro: A Generic Error Ocurrer in GDI+ quando a imagem vai ser salva. OBRIGADO.
Code Snippet
public
partial class natal : System.Web.UI.Page
{
public string timeofday;
protected void Page_Load(object sender, EventArgs e)
{
DateTime dt = DateTime.Now;
timeofday = dt.ToString(
"HHmmssffff");
}
protected void btnEnviar_Click(object sender, EventArgs e)
{
string arquivo_imagem = timeofday.ToString() + ".jpg";
string dirImagem = Server.MapPath("images/natal/cartoes") + "\\";
//Carregar Imagem
System.Drawing.
Image abre_imagem = System.Drawing.Image.FromFile(Request.PhysicalApplicationPath + rbtnlImagens.SelectedValue.ToString());
int largura = abre_imagem.Width * 200 / abre_imagem.Height;
Bitmap bmp = new Bitmap(abre_imagem);
System.Drawing.
Bitmap newBMP = new System.Drawing.Bitmap(bmp);
System.Drawing.
Graphics objGra = System.Drawing.Graphics.FromImage(newBMP);
Graphics g = Graphics.FromImage(newBMP);
//Calcula onde ir ser escrito o texto
Rectangle treta = new Rectangle(40, newBMP.Height / 8, newBMP.Width / 3, newBMP.Height / 2);
StringFormat sf = new StringFormat();
sf.Alignment =
StringAlignment.Near;
g.DrawString(
"De: " + txtNome.Text + " \r\n\n" +
"Para: " + txtNomeDestinatario.Text + " \r\n\n" +
txtTexto.Text,
new Font("trebuchet ms", 9), Brushes.Black, treta, sf);
//Fechando conexäes
bmp.Dispose();
sf.Dispose();
g.Dispose();
abre_imagem.Dispose();
newBMP.Save(dirImagem + arquivo_imagem, System.Drawing.Imaging.ImageFormat.Jpeg);
GC.Collect();
GC.WaitForPendingFinalizers();
GC.Collect();
//Mandar Email
MailMessage mailMessage = new MailMessage();
mailMessage.From =
new MailAddress("contato@wwww.com.br");
mailMessage.CC.Add(txtEmail.Text);
mailMessage.Subject =
"CartÆo de Natal";
mailMessage.IsBodyHtml =
true;
mailMessage.Body =
"<img src=\"http://www.wwww.com.br/images/natal/cartoes/" + arquivo_imagem + "\" border=\"0px\" />";
SmtpClient smtp = new SmtpClient();
smtp.Send(mailMessage);
Response.Redirect(
"obrigado.aspx");
}
}