Ciao, uso questo script per scrivere testo su immagini:

<%@ Page Language="C#" trace="false" Explicit="true" aspcompat="true" Debug="true" %>
<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Text" %>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Imaging" %>
<%@ Import Namespace="System.Drawing.Text" %>
<%@ Import Namespace="System.Drawing.Drawing2D" %>

<script runat="server">

public void Page_Load(object sender, System.EventArgs e)
{

Bitmap bmp = (Bitmap)System.Drawing.Image.FromStream(System.Net .HttpWebRequest.Create("http://www.miosito.it/immagini/miaimmagine.png").GetResponse().GetResponseStream( ));

Graphics g = Graphics.FromImage(bmp);

g.TextRenderingHint = TextRenderingHint.AntiAlias;

SolidBrush drawBrush = new SolidBrush(ColorTranslator.FromHtml("#2c8ced"));

g.DrawString("prova", new Font("Arial", 14, FontStyle.Bold),
drawBrush, new PointF(0,12) );

bmp.MakeTransparent (Color.White);

Response.ContentType = "image/Gif";
bmp.Save(Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif);

g.Dispose();
bmp.Dispose();
Response.End();
}


</script>
funziona, ma la parte trasparente dell'immagine di partenza diventa nera.

Cosa manca perchè l'immagine mantenga la trasparenza?