我试图制作一个根据id返回图像的ashx页面。 我只会支持jpeg,png和gif。 jpeg和png工作得很好,但是gif让我很难过。
我的问题是图像类型是Gif(如此one)。 显示图像,但背景为绿色,没有动画。
我缺少什么? 是否有更好的方法让它返回图像?
这是我得到的代码:
public void ProcessRequest(HttpContext context)
{
QuestMediaPresenter FPresenter = new QuestMediaPresenter();
var lMediaId = Convert.ToInt32(context.Request.QueryString["MediaId"]);
if (lMediaId == null)
{
throw new HttpException(404, "Invalid image id.");
}
var lStream = FPresenter.GetMedia(lMediaId);
context.Response.ContentType = getImageContentType(lMediaId);
Image lImage = Image.FromStream(lStream);
//I know the System.Drawing.Imaging.ImageFormat.Gif is hardcode but its not
//relevant to this question, will make it dynamic later, if its still the way to go.
lImage.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Gif);
}
public bool IsReusable
{
get { return true; }
}