C#中如何调整图像大小
在本篇文章中,我将介绍如何在C#中来调整你想要的图像大小。要实现这一目标,我们可以采取以下几个步骤:
1.首先要获取你想要调整大小的图像:
string path = Server.MapPath("~/Images");
System.Drawing.Image img = System.Drawing.Image.FromFile(string.Concat(path,"/3904.jpg"));
2.将图像转换为Bitmap:
Bitmap b = new Bitmap(img);
3.创建一个调整图像大小的方法:
private static System.Drawing.Image resizeImage(System.Drawing.Image imgToResize, Size size)
{
    //获取图片宽度
    int sourceWidth = imgToResize.Width;
    //获取图片高度
    int sourceHeight = imgToResize.Height;
    float nPercent = 0;
    float nPercentW = 0;
    float nPercentH = 0;
    //计算宽度的缩放比例
    nPercentW = ((float)size.Width / (float)sourceWidth);
    //计算高度的缩放比例
    nPercentH = ((float)size.Height / (float)sourceHeight);       
    if (nPercentH < nPercentW)
        nPercent = nPercentH;
    else
     nPercent = nPercentW;
     //期望的宽度
     int destWidth = (int)(sourceWidth * nPercent);
     //期望的高度
     int destHeight = (int)(sourceHeight * nPercent);
     Bitmap b = new Bitmap(destWidth, destHeight);
     Graphics g = Graphics.FromImage((System.Drawing.Image)b);
     g.InterpolationMode = InterpolationMode.HighQualityBicubic;
     //绘制图像
     g.DrawImage(imgToResize, 0, 0, destWidth, destHeight);
     g.Dispose();
     return (System.Drawing.Image)b;
}
在上面的方法中,我们获取了位图图像,然后绘制了不同尺寸的图像(这里绘制出的图像是基于指定的纵横比)
4.调用上述方法,得到调整大小之后的图片:
System.Drawing. Image i = resizeImage(b, new Size(100, 100));
输出结果:
谢谢浏览,希望对你有所帮助。
C#中如何调整图像大小的更多相关文章
- 如何在 HTML 中调整图像大小?
		
了解在 HTML 中调整图像大小的不同技术.何时应避免在浏览器端调整大小,以及在 Web 上操作和提供图像的正确方法. 如果您的图像不适合布局,您可以在 HTML 中调整其大小.在 HTML 中调整图 ...
 - [译]Android调整图像大小的一些方法
		
翻译自 某大神在Stack Overflow里的自问自答 (一般我们将Bitmap翻译为位图,但为了更好理解,在本文中我将它翻译成图像): 我们在开发的时候,经常需要从服务器中加载图像到客户端中,但有 ...
 - (opencv08)cv.resize()调整图像大小
		
(opencv08)cv.resize()调整图像大小 img = cv2.resize(src, dsize, dst=None, fx=None, fy=None, interpolation=N ...
 - PHP获取远程图片并调整图像大小(转)
		
<?php /** * *函数:调整图片尺寸或生成缩略图 *修改:2013-2-15 *返回:True/False *参数: * $Image 需要调整的图片(含路径) * $Dw=450 调整 ...
 - PHP获取远程图片并调整图像大小
		
<?php /** * *函数:调整图片尺寸或生成缩略图 *修改:2013-2-15 *返回:True/False *参数: * $Image 需要调整的图片(含路径) * $Dw= ...
 - Linux中如何使用gThumb批量调整图片大小
		
Linux中如何使用gThumb批量调整图片大小 导读 如果你的工作涉及到图片编辑和处理,就一定会有同时对多张图片进行批量大小调整的经历.虽然大多数图片编辑应用都能够非常容易地批量调整多张图片,但对于 ...
 - [OpenCV Qt教程] 在Qt图形界面中显示OpenCV图像的OpenGL Widget (第一部分)
		
本文译自:http://www.robot-home.it/blog/en/software/tutorial-opencv-qt-opengl-widget-per-visualizzare-imm ...
 - CSS 是怎样确定图像大小的?
		
本文转自奇舞周刊学习使用侵权删 先来看个例子,热热身. 上面这张图像的原始尺寸是:宽 54px 高 49px. 那么,在以下代码中,每张图像显示的最终尺寸是多少? https://p1.ssl.qhi ...
 - WPF中如何调整TabControl的大小,使其跟随Window的大小而改变?
		
多年不写技术博客,手生的很,也不知道大家都关注什么,最近在研究Wpf及3d模型的展示,碰到很多问题,这个是最后一个问题,写出来小结一下...... WPF中如何调整TabControl的大小,使其跟随 ...
 
随机推荐
- Jenkins 安装的HTML Publisher Plugin 插件无法展示ant生成的JunitReport报告
			
最近在做基于jenkins ant junit 的测试持续集成,单独ant junit生成的junitreport报告打开正常,使用Jenkins的HTML Publisher Plugin 插件无 ...
 - 【AR实验室】ARToolKit之Example篇
			
0x00 - 前言 PS : 我突然意识到ARToolKit本质可能就是一个可以实时求解相机内外参的解决方案. 拿到一个新的SDK,90%的人应该都会先跑一下Example.拿到ARToolKit的S ...
 - 【探索】在 JavaScript 中使用 C 程序
			
JavaScript 是个灵活的脚本语言,能方便的处理业务逻辑.当需要传输通信时,我们大多选择 JSON 或 XML 格式. 但在数据长度非常苛刻的情况下,文本协议的效率就非常低了,这时不得不使用二进 ...
 - Adaboost提升算法从原理到实践
			
1.基本思想: 综合某些专家的判断,往往要比一个专家单独的判断要好.在"强可学习"和"弱科学习"的概念上来说就是我们通过对多个弱可学习的算法进行"组合 ...
 - Redis百亿级Key存储方案(转)
			
1 需求背景 该应用场景为DMP缓存存储需求,DMP需要管理非常多的第三方id数据,其中包括各媒体cookie与自身cookie(以下统称supperid)的mapping关系,还包括了supperi ...
 - Div Vertical Menu ver5
			
这个小功能,如果是算此次,已经是第5次修改了.可以从这里看到前4次:V1, http://www.cnblogs.com/insus/archive/2011/10/17/2215637.html V ...
 - Android之SharedPreferences数据存储
			
一.SharedPreferences保存数据介绍 如果有想要保存的相对较小键值集合,应使用SharedPreferences API.SharedPreferences对象指向包含键值对的文件并提供 ...
 - 基于SOA架构的TDD测试驱动开发模式
			
以需求用例为基,Case&Coding两条线并行,服务(M)&消费(VC)分离,单元.接口.功能.集成四层质量管理,自动化集成.测试.交付全程支持. 3个大阶段(需求分析阶段.研发准备 ...
 - myrocks复制中断问题排查
			
背景 mysql可以支持多种不同的存储引擎,innodb由于其高效的读写性能,并且支持事务特性,使得它成为mysql存储引擎的代名词,使用非常广泛.随着SSD逐渐普及,硬件存储成本越来越高,面向写优化 ...
 - 萌新笔记——vim命令“=”、“d”、“y”的用法(结合光标移动命令,一些场合会非常方便)
			
vim有许多命令,网上搜有一堆贴子.文章列举出各种功能的命令. 对于"="."d"."y",我在无意中发现了它们所具有的相同的一些用法,先举 ...