ragazzi questo è il codice compilato senza errore,dovrebbe sovraporre duei immagini,stamparla a video e mandarle per email.Ora il problema è che l'imamgine viene stampata a video ma non invia l'email con l'allegato...penso che sia un problema della variabile che ho dato in ingresso all'attachments,perchè mettendo un normare url di un file invia l'email senza problemi.
<%@ Page Language="C#" Debug="true" %>
<%@ import Namespace="System" %>
<%@ import Namespace="System.Drawing" %>
<%@ import Namespace="System.Drawing.Imaging" %>
<%@ import Namespace="System.Drawing.Drawing2D" %>
<%@ Import Namespace="System.Text" %>
<%@ Import Namespace="System.Web.Mail" %>
<script runat="server">
void Page_Load(object sender, EventArgs e) {
CreaImmagine();
}
void CreaImmagine() {
System.Drawing.Image myImage = System.Drawing.Image.FromFile(Server.MapPath("2.jpg"));
Graphics myGraphics = Graphics.FromImage(myImage);
System.Drawing.Image timbro = System.Drawing.Image.FromFile(Server.MapPath("logopulito.gif"));
int MaxHeight = 1600;
int cordinatay= 1270;
int cordinatax= 650;
if (myImage.Height > MaxHeight)
{
cordinatay=1780;
cordinatax=330;
}
Rectangle myRec = new Rectangle(cordinatax,cordinatay,timbro.Width,timbro.Height);
float [][] colorArray ={ // r v b a
new float[] {1, 0, 0, 0, 0},//r
new float[] {0, 1, 0, 0, 0},//v
new float[] {0, 0, 1, 0, 0},//b
new float[] {0, 0, 0, 1, 0},//a
new float[] {0, 0, 0, 0, 1}};
ColorMatrix myColorMatrix = new ColorMatrix(colorArray);
ImageAttributes imageAttr = new ImageAttributes();
imageAttr.SetColorMatrix(myColorMatrix,ColorMatrixFlag.Default,ColorAdjustType.Bitmap);
myGraphics.DrawImage(timbro, myRec, 0, 0, timbro.Width, timbro.Height, GraphicsUnit.Pixel, imageAttr);
imageAttr.Dispose();
timbro.Dispose();
Response.ContentType = "image/jpeg";
myImage.Save(Response.OutputStream, ImageFormat.Jpeg);
StringBuilder strMessage = new StringBuilder();
MailMessage msg1 = new MailMessage();
strMessage.Append("<table border='0' cellpadding='4' >");
strMessage.Append("<tr>");
strMessage.Append("<td>");
strMessage.Append("</strong>");
strMessage.Append("</td>");
strMessage.Append("</tr>");
strMessage.Append("</table>");
msg1.From = "prova@hotmail.com";
msg1.To = "prova@hotmail.com";
msg1.Subject = "Invito ad unirti alla nosta comunity ";
msg1.Body = strMessage.ToString();
msg1.BodyFormat = MailFormat.Html;
msg1.Priority = MailPriority.Normal;
//Allegato
msg1.Attachments.Add(myImage);
SmtpMail.SmtpServer = "smtp.aruba.it" ;
try
{
SmtpMail.Send(msg1);
}
catch
{
}
myGraphics.Dispose();
myImage.Dispose();
}
</script>
grazie