濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > asp.net生成縮略圖實(shí)現(xiàn)代碼

asp.net生成縮略圖實(shí)現(xiàn)代碼

熱門標(biāo)簽:溫州外呼系統(tǒng)招商 上海400客服電話怎么申請(qǐng) 凱立德地鐵站地圖標(biāo)注 滄州電銷外呼系統(tǒng)價(jià)格 天津電銷外呼系統(tǒng)違法嗎 合肥ai電銷機(jī)器人費(fèi)用 銀行信貸電話機(jī)器人 400電話個(gè)人能不能辦理 手機(jī)外呼系統(tǒng)什么原理
復(fù)制代碼 代碼如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Drawing;
using System.IO;
namespace web三層
{
/// summary>
/// 顯示請(qǐng)求圖片的縮略圖,以寬度100像素為最大單位
/// /summary>
public class imgSmall : IHttpHandler
{
//圖片所在文件夾
static string picturesPath = @"d:\wordpictures\";
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "image/jpeg";
//獲取到傳遞過來的img字符串,比如
//http://localhost:5002/imgSmall.ashx?img=abacus8.jpg這種
string img = context.Request.Params["img"];
string path = picturesPath + img;
//如果文件存在才會(huì)去讀取,減少使用try,catch,提高程序性能
if (File.Exists(path))
{
//載入這個(gè)圖片
Image big = Image.FromFile(path);
//如果可以獲取到文件,才會(huì)執(zhí)行下面的代碼
if (big != null)
{
//設(shè)定最大的寬度,可以修改來生成更小的縮略圖
int newWidth = 100;
//根據(jù)圖片的寬高比來生成一個(gè)位圖
Bitmap bitmap = new Bitmap(newWidth, newWidth * big.Height / big.Width);
//根據(jù)圖板來創(chuàng)建一個(gè)圖畫
Graphics g = Graphics.FromImage(bitmap);
using (g)
{
//將大圖big畫到自己定義的小圖中bitmap
g.DrawImage(big, 0, 0, bitmap.Width, bitmap.Height);
//直接將處理好的位圖保存到響應(yīng)輸出流中,格式為jpeg!
bitmap.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);
}
}
}
else
{
//否則就發(fā)送一個(gè)文件不存在的信息到瀏覽器
context.Response.ContentType = "text/html";
context.Response.Write("文件不存在");
//或者發(fā)送一個(gè)文件不存在的圖片
//context.Response.WriteFile("todo此處修改為圖片所在路徑");
}
}
public bool IsReusable
{
get
{
return false;
}
}
}
}

這是一個(gè)一般處理程序,只需要給其發(fā)送一個(gè)文件名稱的參數(shù)就可以在瀏覽器上顯示出圖片(可以修改成發(fā)送一個(gè)圖片的序號(hào)id),比如下面的GridView控件中使用了此處理程序image

 

縮略圖字段中將其DataImageUrlField設(shè)置為文件名,這個(gè)字段是數(shù)據(jù)庫中一個(gè)字段(初學(xué)的時(shí)候我喜歡用中文字段,比較好理解),再將其DataImageUrlFormatString設(shè)置為:imgSmall.ashx?img={0},這樣在生成html代碼的時(shí)候就會(huì)把{0}替換成文件名這個(gè)字段的內(nèi)容,實(shí)際的效果如下圖:

image

縮略圖非常的小,才3040字節(jié),看官也可以發(fā)現(xiàn)當(dāng)瀏覽器請(qǐng)求圖片時(shí),請(qǐng)求的地址是imgSmall.ashx?img=abacus8.jpg

您可能感興趣的文章:
  • ASP.NET創(chuàng)建動(dòng)態(tài)縮略圖的方法
  • asp.net生成縮略圖示例方法分享
  • asp.net中生成縮略圖并添加版權(quán)實(shí)例代碼
  • asp.net文件上傳功能(單文件,多文件,自定義生成縮略圖,水印)
  • asp.net 生成縮略圖代碼
  • asp.net 上傳圖片并同時(shí)生成縮略圖的代碼
  • asp.net 點(diǎn)縮略圖彈出隨圖片大小自動(dòng)調(diào)整的頁面
  • ASP.Net 上傳圖片并生成高清晰縮略圖
  • asp.net生成高質(zhì)量縮略圖通用函數(shù)(c#代碼),支持多種生成方式
  • ASP.NET中高質(zhì)量縮略圖的生成代碼
  • asp.net圖片上傳生成縮略圖的注意事項(xiàng)
  • ASP.NET實(shí)現(xiàn)根據(jù)URL生成網(wǎng)頁縮略圖的方法

標(biāo)簽:常州 萊蕪 朔州 許昌 信陽 自貢 西雙版納 孝感

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《asp.net生成縮略圖實(shí)現(xiàn)代碼》,本文關(guān)鍵詞  asp.net,生成,縮,略圖,實(shí)現(xiàn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《asp.net生成縮略圖實(shí)現(xiàn)代碼》相關(guān)的同類信息!
  • 本頁收集關(guān)于asp.net生成縮略圖實(shí)現(xiàn)代碼的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    泗水县| 河西区| 温宿县| 安仁县| 金堂县| 庄浪县| 曲阳县| 叙永县| 茌平县| 合川市| 龙山县| 建始县| 化德县| 赣榆县| 东海县| 平乡县| 丹巴县| 靖江市| 江安县| 伊金霍洛旗| 内江市| 嫩江县| 泰和县| 广平县| 衡南县| 南华县| 武义县| 闽清县| 汤阴县| 广东省| 儋州市| 琼海市| 全南县| 齐齐哈尔市| 自治县| 时尚| 钟山县| 绍兴市| 甘孜| 新安县| 元朗区|