亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > .NET > 正文

用C#輕松地在DOTNET中實現縮略圖

2024-07-21 02:19:35
字體:
來源:轉載
供稿:網友
以前,在頁面上實現縮略圖必須借助第三方組件?,F在,有了.net,就可以很輕松地實現縮略圖。下面就是實現縮略圖的例子。

關鍵字:c# ,asp.net,縮略圖

實例下載:http://www.lionsky.net/mywebsite/downsoft/list.aspx?id=221

tothumbnailimage.aspx


<%@ page language="c#" codebehind="tothumbnailimage.aspx.cs" src="tothumbnailimage.aspx.cs" autoeventwireup="false" inherits="exam_c.tothumbnailimage" %>
<html>
<head>
<title>lion互動網絡 =>生成縮略圖</title>
</head>
<body>
<form id="form1" method="post" runat="server">
</form>
</body>
</html>



tothumbnailimage.aspx.cs

using system;
using system.collections;
using system.componentmodel;
using system.data;
using system.drawing;
using system.web;
using system.web.sessionstate;
using system.web.ui;
using system.web.ui.webcontrols;
using system.web.ui.htmlcontrols;
using system.drawing.imaging;
namespace exam_c
{
/// <summary>
/// tothumbnailimage 的摘要說明。
/// </summary>
public class tothumbnailimage : system.web.ui.page
{
/*
create by lion
2003-05-20 19:00
copyright (c) 2004 www.lionsky.net. all rights reserved.
web: http://www.lionsky.net ;
email: [email protected]
*/


static hashtable htmimes=new hashtable();
internal readonly string allowext = ".jpe|.jpeg|.jpg|.png|.tif|.tiff|.bmp";

#region web 窗體設計器生成的代碼
override protected void oninit(eventargs e)
{
#region htmimes[".jpe"]="image/jpeg";
htmimes[".jpeg"]="image/jpeg";
htmimes[".jpg"]="image/jpeg";
htmimes[".png"]="image/png";
htmimes[".tif"]="image/tiff";
htmimes[".tiff"]="image/tiff";
htmimes[".bmp"]="image/bmp";
#endregion
//調用生成縮略圖方法
tothumbnailimages("lionsky.jpg","b.gif",300);
}
#endregion

#region helper

/// <summary>
/// 獲取圖像編碼解碼器的所有相關信息
/// </summary>
/// <param name="mimetype">包含編碼解碼器的多用途網際郵件擴充協議 (mime) 類型的字符串</param>
/// <returns>返回圖像編碼解碼器的所有相關信息</returns>
static imagecodecinfo getcodecinfo(string mimetype)
{
imagecodecinfo[] codecinfo = imagecodecinfo.getimageencoders();
foreach(imagecodecinfo ici in codecinfo)
{
if(ici.mimetype == mimetype)return ici;
}
return null;
}

/// <summary>
/// 檢測擴展名的有效性
/// </summary>
/// <param name="sext">文件名擴展名</param>
/// <returns>如果擴展名有效,返回true,否則返回false.</returns>
bool checkvalidext(string sext)
{
bool flag=false;
string[] aext = allowext.split('|');
foreach(string filetype in aext)
{
if(filetype.tolower()==sext)
{
flag = true;
break;
}
}
return flag;
}

/// <summary>
/// 保存圖片
/// </summary>
/// <param name="image">image 對象</param>
/// <param name="savepath">保存路徑</param>
/// <param name="ici">指定格式的編解碼參數</param>
void saveimage(system.drawing.image image,string savepath,imagecodecinfo ici)
{
//設置 原圖片 對象的 encoderparameters 對象
encoderparameters parameters = new encoderparameters(1);
parameters.param[0] = new encoderparameter(encoder.quality, ((long) 90));
image.save(savepath, ici, parameters);
parameters.dispose();
}
#endregion

#region methods

/// <summary>
/// 生成縮略圖
/// </summary>
/// <param name="sourceimagepath">原圖片路徑(相對路徑)</param>
/// <param name="thumbnailimagepath">生成的縮略圖路徑,如果為空則保存為原圖片路徑(相對路徑)</param>
/// <param name="thumbnailimagewidth">縮略圖的寬度(高度與按源圖片比例自動生成)</param>
public void tothumbnailimages(string sourceimagepath,string thumbnailimagepath,int thumbnailimagewidth)
{
string sourceimagepath = sourceimagepath;
string thumbnailimagepath = thumbnailimagepath;
int thumbnailimagewidth = thumbnailimagewidth;
string sext = sourceimagepath.substring(sourceimagepath.lastindexof(".")).tolower();
if(sourceimagepath.tostring()==system.string.empty) throw new nullreferenceexception("sourceimagepath is null!");
if(!checkvalidext(sext))
{
throw new argumentexception("原圖片文件格式不正確,支持的格式有[ "+ allowext +" ]","sourceimagepath");
}
//從 原圖片 創建 image 對象
system.drawing.image image = system.drawing.image.fromfile(httpcontext.current.server.mappath(sourceimagepath));
int num = ((thumbnailimagewidth / 4) * 3);
int width = image.width;
int height = image.height;
//計算圖片的比例
if ((((double) width) / ((double) height)) >= 1.3333333333333333f)
{
num = ((height * thumbnailimagewidth) / width);
}
else
{
thumbnailimagewidth = ((width * num) / height);
}
if ((thumbnailimagewidth < 1) || (num < 1))
{
return;
}
//用指定的大小和格式初始化 bitmap 類的新實例
bitmap bitmap = new bitmap(thumbnailimagewidth, num, pixelformat.format32bppargb);
//從指定的 image 對象創建新 graphics 對象
graphics graphics = graphics.fromimage(bitmap);
//清除整個繪圖面并以透明背景色填充
graphics.clear(color.transparent);
//在指定位置并且按指定大小繪制 原圖片 對象
graphics.drawimage(image, new rectangle(0, 0, thumbnailimagewidth, num));
image.dispose();
try
{
//將此 原圖片 以指定格式并用指定的編解碼參數保存到指定文件
string savepath = (thumbnailimagepath==null?sourceimagepath:thumbnailimagepath);
saveimage(bitmap,httpcontext.current.server.mappath(savepath),getcodecinfo((string)htmimes[sext]));
}
catch(system.exception e)
{
throw e;
}
finally
{
bitmap.dispose();
graphics.dispose();
}
}
#endregion

}
}
中國最大的web開發資源網站及技術社區,
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美日韩国产限制| 日本19禁啪啪免费观看www| 日韩激情av在线播放| 欧美高清激情视频| 97在线看福利| 欧美日韩免费区域视频在线观看| 欧美人在线视频| 成人淫片在线看| 亚洲中国色老太| 亚洲欧美日韩国产精品| 88国产精品欧美一区二区三区| 国产在线观看精品| 国产一区二区丝袜高跟鞋图片| 亚洲精品欧美一区二区三区| 亚洲精品自在久久| 91精品国产91久久久久久不卡| 欧美一区二粉嫩精品国产一线天| 欧美色视频日本高清在线观看| 隔壁老王国产在线精品| 黄色91在线观看| 欧美日韩一区二区在线播放| 色系列之999| 国产啪精品视频网站| 欧美激情精品久久久久| 久久99精品久久久久久琪琪| 精品无人国产偷自产在线| 激情懂色av一区av二区av| 日韩精品免费看| 欧美成人精品一区二区三区| 久久男人的天堂| 国产精品久久久久久亚洲调教| 欧美日韩高清在线观看| 中文字幕自拍vr一区二区三区| 日韩性生活视频| 国产亚洲福利一区| 国产精品久久久久久久久久东京| 成人免费直播live| 成人黄色午夜影院| 欧美精品久久久久a| 91精品国产免费久久久久久| 免费av在线一区| 日韩欧美在线观看视频| 久久69精品久久久久久久电影好| 国产主播欧美精品| 亚洲欧美日韩天堂一区二区| 欧美精品18videos性欧| 久久久久久久国产精品| 欧美乱妇高清无乱码| 中文国产成人精品| 亚洲欧美中文另类| 欧洲美女7788成人免费视频| 国产在线精品一区免费香蕉| 欧美二区乱c黑人| 国产精品国产福利国产秒拍| 欧美性视频网站| 亚洲视频在线观看免费| 欧美网站在线观看| 欧美亚洲免费电影| 国产999在线观看| 亚洲精品国产欧美| 日韩最新在线视频| 久久综合88中文色鬼| 亚洲一区制服诱惑| 中文字幕精品影院| 亚洲高清在线观看| 日本一欧美一欧美一亚洲视频| 自拍亚洲一区欧美另类| 亚洲精品成人网| 中文字幕成人精品久久不卡| 欧美主播福利视频| 国产中文字幕亚洲| 国产成人精品一区| 9.1国产丝袜在线观看| 韩国国内大量揄拍精品视频| 亚洲国产精品va在线看黑人动漫| 1769国内精品视频在线播放| 欧美老女人在线视频| 91亚洲精品久久久久久久久久久久| 欧洲一区二区视频| 亚洲欧美日本伦理| 国色天香2019中文字幕在线观看| 欧美日韩成人在线观看| 亚洲色图激情小说| 国产日韩在线视频| 欧美成人一区二区三区电影| 亚洲无亚洲人成网站77777| 亚洲一区二区三区四区在线播放| 亚洲精品一区久久久久久| 欧美成在线视频| 亚洲综合小说区| 成人福利视频在线观看| 国模视频一区二区三区| 91精品国产色综合久久不卡98| 亚洲18私人小影院| 国产精品久久久久久久美男| 国产精品v片在线观看不卡| 亚洲色图偷窥自拍| 亚洲精品一区二区久| 亚洲成人久久网| 久久99亚洲热视| 国产亚洲成av人片在线观看桃| 中文字幕欧美国内| 欧美风情在线观看| 欧美理论片在线观看| 91国内精品久久| 亚洲男人天堂2023| 亚洲人成网站999久久久综合| 久久成人精品视频| 日韩最新av在线| 亚洲第一视频网| 亚洲精品久久久久久久久久久| 一色桃子一区二区| 久久久黄色av| 国产精品偷伦视频免费观看国产| 欧美日韩亚洲成人| 国产乱肥老妇国产一区二| 狠狠久久五月精品中文字幕| 日韩在线不卡视频| 色悠久久久久综合先锋影音下载| 国产精品第10页| 在线国产精品播放| 国产美女精彩久久| 亚洲欧美成人精品| 亚洲大胆人体视频| 国产精品天天狠天天看| 精品伊人久久97| 精品久久久久久久久久久久久久| 中文日韩电影网站| 国产精品老牛影院在线观看| 不卡av日日日| 国产精品日韩在线一区| 亚洲在线第一页| 中文欧美在线视频| 亚洲护士老师的毛茸茸最新章节| 色综合天天综合网国产成人网| 亚洲精品在线不卡| 欧美一区二三区| 亚洲性线免费观看视频成熟| 91精品国产精品| 国产精品老女人精品视频| 亚洲欧美日韩高清| 亚洲精品久久久久久久久久久久| 欧美一区二三区| 亚洲国产精品久久久久秋霞不卡| 中文日韩在线观看| 国产日韩欧美视频在线| 久久久在线免费观看| 中文字幕在线视频日韩| 亚洲va欧美va国产综合久久| 国产欧美精品va在线观看| 色综合久久精品亚洲国产| 日韩av有码在线| 日韩欧美精品免费在线| 久久精品国产一区二区电影| 精品一区二区三区四区| …久久精品99久久香蕉国产| 一区二区三区黄色| 国产狼人综合免费视频| 国产精品户外野外| 欧美激情视频一区| 亚洲欧洲国产精品| 日韩高清电影好看的电视剧电影| 亚洲跨种族黑人xxx| 久久久久久香蕉网|