国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > .NET > 正文

ASP.NET輸出PNG圖片時出現GDI+一般性錯誤的解決方法

2020-01-18 01:25:02
字體:
來源:轉載
供稿:網友
以下是原文:
Code:
復制代碼 代碼如下:

Response.Clear();
Response.ContentType = "image/PNG";
img.Save(Response.OutputStream, ChartFormat.Png);

竟然出現異常,是GDI+一般性錯誤。但是如果格式是
Code:
復制代碼 代碼如下:

Response.ContentType = "image/jpeg";

就不會報錯。
好在以前遇到過,改成
Code:
復制代碼 代碼如下:

Response.ContentType = "image/PNG";
using (MemoryStream ms = new MemoryStream())
{
img.Save(ms, ChartFormat.Png);
Response.OutputStream.Write(ms.GetBuffer(), 0, (int)ms.Length);
}

就可以輸入png圖片了。
這是由于Response.OutputStream這個流的無法往回讀取造成的,也就是它的CanSeek屬性
是false。png圖像生成的時候不像jpeg,不是流式的,已經寫入的就不再管了,而是需要往回
不斷地寫入結構數據。但是response流無法往回seek,所以直接用就不行了。改成一個可以
seek的MemoryStream,先生成好png圖片,然后再輸出到response流。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 普兰店市| 通海县| 丹棱县| 五寨县| 两当县| 师宗县| 洛南县| 湘乡市| 滨州市| 资中县| 赤水市| 五台县| 滁州市| 广安市| 商南县| 玉屏| 奇台县| 天台县| 成武县| 邓州市| 图木舒克市| 肥城市| 五指山市| 定西市| 大兴区| 淳安县| 观塘区| 万宁市| 仁寿县| 贺州市| 临漳县| 右玉县| 乌兰察布市| 应用必备| 哈尔滨市| 阜宁县| 五大连池市| 辛集市| 长汀县| 中山市| 阿拉善左旗|