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

首頁 > 網站 > 幫助中心 > 正文

模擬QQ心情圖片上傳預覽示例

2024-07-09 22:47:09
字體:
來源:轉載
供稿:網友
出于安全性能的考慮,目前js端不支持獲取本地圖片進行預覽,正好在做一款類似于QQ心情的發布框,找了不少jquery插件,沒幾個能滿足需求,因此自己使用SWFuplad來實現這個圖片上傳預覽。

先粘上以下插件,在別的圖片上傳功能說不定各位能用的上。

1、jQuery File Upload

Demo地址:http://blueimp.github.io/jQuery-File-Upload/
優點是使用jquery進行圖片的異步上傳,可控性好,可根據自己的需求任意定制;
缺點是在IE9等一些瀏覽器中,不支持圖片預覽,圖片選擇框中不支持多文件選擇(這點是我拋棄它的原因);

2、CFUpdate

Demo地址:http://www.access2008.cn/update/
優點:使用js+flash實現,兼容所有瀏覽器,優點界面效果還可以,支持批量上傳、支持預覽、進度條、刪除等功能,作為圖片的上傳控件非常好用;
缺點:定制型插件,只能修改顏色,樣式已經固定死了;

3、SWFUpload

下載地址:http://code.google.com/p/swfupload/
中文文檔幫助地址:http://www.phptogether.com/swfuploadoc/#uploadError
本文所使用的就是此插件,使用flash+jquery實現,可以更改按鈕及各種樣式;監聽事件也很全。

以下貼出源碼及設計思路,主要功能點包括:
1、圖片的上傳預覽(先將圖片上傳至服務器,然后再返回地址預覽,目前拋開html5比較靠譜的預覽方式)
2、縮略圖的產生(等比例縮放后再截取中間區域作為縮略圖,類似QQ空間的做法,不過貌似QQ空間加入了人臉識別的功能)

以下是此次實現的功能截圖:
 
1、Thumbnail.cs
代碼如下:
public class Thumbnial
{
/// <summary>
/// 生成縮略圖
/// </summary>
/// <param name="imgSource">原圖片</param>
/// <param name="newWidth">縮略圖寬度</param>
/// <param name="newHeight">縮略圖高度</param>
/// <param name="isCut">是否裁剪(以中心點)</param>
/// <returns></returns>
public static Image GetThumbnail(System.Drawing.Image imgSource, int newWidth, int newHeight, bool isCut)
{
int rWidth = 0; // 等比例縮放后的寬度
int rHeight = 0; // 等比例縮放后的高度
int sWidth = imgSource.Width; // 原圖片寬度
int sHeight = imgSource.Height; // 原圖片高度
double wScale = (double)sWidth / newWidth; // 寬比例
double hScale = (double)sHeight / newHeight; // 高比例
double scale = wScale < hScale ? wScale : hScale;
rWidth = (int)Math.Floor(sWidth / scale);
rHeight = (int)Math.Floor(sHeight / scale);
Bitmap thumbnail = new Bitmap(rWidth, rHeight);
try
{
// 如果是截取原圖,并且原圖比例小于所要截取的矩形框,那么保留原圖

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 云霄县| 虹口区| 新昌县| 都匀市| 丰县| 杭锦后旗| 汪清县| 新安县| 沙湾县| 平谷区| 高雄县| 苍南县| 万全县| 濉溪县| 论坛| 德昌县| 昔阳县| 高密市| 昌图县| 吉首市| 杭锦旗| 阿坝县| 邳州市| 台州市| 曲靖市| 阿拉善右旗| 永吉县| 芜湖县| 五台县| 子洲县| 江山市| 屏东县| 廉江市| 宁阳县| 建瓯市| 洪湖市| 巴塘县| 南宁市| 巴塘县| 深圳市| 安西县|