新聞中心
.NET生成縮略圖方法1. 使用Image的GetThumbnailImage 方法直接生成壓縮圖片,大概如此:

在黃巖等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務(wù)理念,為客戶提供做網(wǎng)站、網(wǎng)站制作 網(wǎng)站設(shè)計(jì)制作定制網(wǎng)站建設(shè),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),成都品牌網(wǎng)站建設(shè),營銷型網(wǎng)站建設(shè),成都外貿(mào)網(wǎng)站建設(shè)公司,黃巖網(wǎng)站建設(shè)費(fèi)用合理。
file://設(shè)置 原圖片 對(duì)象的 EncoderParameters 對(duì)象,設(shè)置清晰度
- ImageCodecInfo ici = GetCodecInfo((string)htmimes[mFileExtName]);
- EncoderParameters parameters = new EncoderParameters(1);
- parameters.Param[0] = new EncoderParameter(Encoder.Quality,lngDefinition);
- System.Drawing.Image.GetThumbnailImageAbort myCallback =new
- System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback);
- System.Drawing.Image myThumbnail = image.GetThumbnailImage(intNewWidth, intNewHeight,
- myCallback, IntPtr.Zero);
- myThumbnail.Save(txtNewPath, ici, parameters);
- ImageCodecInfo ici = GetCodecInfo((string)htmimes[mFileExtName]);
- EncoderParameters parameters = new EncoderParameters(1);
- parameters.Param[0] = new EncoderParameter(Encoder.Quality,lngDefinition);
- System.Drawing.Image.GetThumbnailImageAbort myCallback =new
- System.Drawing.Image.GetThumbnailImageAbort(ThumbnailCallback);
- System.Drawing.Image myThumbnail = image.GetThumbnailImage(intNewWidth, intNewHeight,
- myCallback, IntPtr.Zero);
- myThumbnail.Save(txtNewPath, ici, parameters);
.NET生成縮略圖方法2. 使用Graphics 重新繪制圖象
- ImageCodecInfo ici = GetCodecInfo((string)htmimes[mFileExtName]);
- EncoderParameters parameters = new EncoderParameters(1);
- parameters.Param[0] = new EncoderParameter(Encoder.Quality,lngDefinition);
- Bitmap objNewBitMap = new Bitmap(intNewWidth, intNewHeight, PixelFormat.Format32bppArgb);
- //從指定的 Image 對(duì)象創(chuàng)建新 Graphics 對(duì)象
- Graphics objGraphics = Graphics.FromImage(objNewBitMap);
- //清除整個(gè)繪圖面并以透明背景色填充
- objGraphics.Clear(Color.Transparent);
- //在指定位置并且按指定大小繪制 原圖片 對(duì)象
- objGraphics.DrawImage(image, new Rectangle(0, 0, intNewWidth, intNewHeight));
- objNewBitMap.Save(txtNewPath + txtNewFileName+"."+mFileExtName, ici, parameters);
- ImageCodecInfo ici = GetCodecInfo((string)htmimes[mFileExtName]);
- EncoderParameters parameters = new EncoderParameters(1);
- parameters.Param[0] = new EncoderParameter(Encoder.Quality,lngDefinition);
- Bitmap objNewBitMap = new Bitmap(intNewWidth, intNewHeight, PixelFormat.Format32bppArgb);
- //從指定的 Image 對(duì)象創(chuàng)建新 Graphics 對(duì)象
- Graphics objGraphics = Graphics.FromImage(objNewBitMap);
- //清除整個(gè)繪圖面并以透明背景色填充
- objGraphics.Clear(Color.Transparent);
- //在指定位置并且按指定大小繪制 原圖片 對(duì)象
- objGraphics.DrawImage(image, new Rectangle(0, 0, intNewWidth, intNewHeight));
- objNewBitMap.Save(txtNewPath + txtNewFileName+"."+mFileExtName, ici, parameters);
注意lngDefinition是調(diào)整清晰度的LONG型參數(shù),一般50-90 就很清晰了。
.NET生成縮略圖的2種效果,(相同寬度高度)清晰度上Graphics較好,圖片Graphics繪制的也比較小,小1/3左右。
文章名稱:.NET生成縮略圖方法二則
本文路徑:http://m.5511xx.com/article/cdcdccj.html


咨詢
建站咨詢
