Swift 改变UIImage图片的大小尺寸,或按比例缩放实例

在开发中,我们有时候需要对原始的 UIImage 进行处理,比如修改大小或者进行缩放操作。

 

1,扩展UIImage

这里先对 UIImage 进行扩展,增加两个方法,分别用于尺寸的重置和大小缩放。

import UIKit
 
extension UIImage {
    /**
     *  重设图片大小
     */
    func reSizeImage(reSize:CGSize)->UIImage {
        //UIGraphicsBeginImageContext(reSize);
        UIGraphicsBeginImageContextWithOptions(reSize,false,UIScreen.mainScreen().scale);
        self.drawInRect(CGRectMake(0, 0, reSize.width, reSize.height));
        let reSizeImage:UIImage = UIGraphicsGetImageFromCurrentImageContext();
        UIGraphicsEndImageContext();
        return reSizeImage;
    }
    
    /**
     *  等比率缩放
     */
    func scaleImage(scaleSize:CGFloat)->UIImage {
        let reSize = CGSizeMake(self.size.width * scaleSize, self.size.height * scaleSize)
        return reSizeImage(reSize)
    }
}

 

import UIKit
 
class ViewController: UIViewController {
    
    let image = UIImage(named:"img.jpg")
 
    @IBOutlet weak var imageView: UIImageView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
    }
 
    //显示原始图片
    @IBAction func btn1Click(sender: AnyObject) {
        imageView.image = image
    }
    
    //将图片修改成指定尺寸(160*100)
    @IBAction func btn2Click(sender: AnyObject) {
        let reSize = CGSize(width: 240, height: 150)
        imageView.image = image?.reSizeImage(reSize)
    }
    
    //将图片缩小成原来的一半
    @IBAction func btn3Click(sender: AnyObject) {
        imageView.image = image?.scaleImage(0.5)
    }
    
    override func didReceiveMemoryWarning() {
        super.didReceiveMemoryWarning()
    }
}

时间: 2024-11-05 17:23:32

Swift 改变UIImage图片的大小尺寸,或按比例缩放实例的相关文章

php缩放图片(根据宽高的等比例缩放)实例介绍_php技巧

推荐一个简单实用的缩放图片工具 SimpleImage,参考http://www.white-hat-web-design.co.uk/blog/resizing-images-with-php/ 使用方法: 设定宽高,不等比例缩放 复制代码 代码如下: <?php include('SimpleImage.php'); $image = new SimpleImage(); $image->load('picture.jpg'); $image->resize(250,400); $i

css图片等比例缩放实例

 代码如下 复制代码 <style type="text/css"> .thumbImage img{ MAX-WIDTH: 100%!important;HEIGHT: auto!important;width:expression(this.width > 600 ? "600px" : this.width)!important; } .thumbImage {MARGIN: auto;WIDTH: 600px;} *html.thumbIm

四款css 图片按比例缩放实例(兼容ie6,7,firefox)

使用max-width,max-height:或者min-width,min-height的css属性即可.如:  代码如下 复制代码 img{max-width:100px;max-height:100px;} img{min-width:100px;min-height:100px;} 对于ie6及其以下版本的浏览器,则可以利用其支持的expression属性,在css code中嵌入网页特效 code 来实现图片的缩放 .thumbimage {max-width: 100px;max-h

jquery 图片预加载 自动等比例缩放插件_jquery

复制代码 代码如下: /* **************图片预加载插件****************** ///作者:没剑(2008-06-23) ///http://regedit.cnblogs.com ///说明:在图片加载前显示一个加载标志,当图片下载完毕后显示图片出来 可对图片进行是否自动缩放功能 此插件使用时可让页面先加载,而图片后加载的方式, 解决了平时使用时要在图片显示出来后才能进行缩放时撑大布局的问题 ///参数设置: scaling 是否等比例自动缩放 width 图片最大

几款js图片等比例缩放效果代码

<!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns="http://www.111cn.net/ 1999/xhtml"> <head> <meta http-equiv="cont

JavaScript动态改变网页图片大小

在自己的网站上更新文章时一个比较常见的问题是:文章插图太宽,使整个网页都变形了.如果对每个插图都先进行缩放再插入的话,太麻烦了. 我前段时间写的一篇文章就遇到过这种事情,后来用CSS的overflow和max-width属性暂时解决了页面变形的问题.这种方法好处是简单,但坏处是会破坏某些细节的效果. 如overflow:hidden,意思是当内部元素宽度大于父框架时隐藏超出宽度的部分.这样做可能会是一些内容突然截断,被隐藏了,很对不起观众. 通过max-width属性限制文章插图最大宽度的话,需

jQuery动态改变图片显示大小(修改版)的实现思路及代码_jquery

当我们要显示后台传过来若干个尺寸不一的图片时,为了保证图片大小的一致性及比例的协调,需要动态改变图片显示尺寸.通过搜索,我们可以从网上找到实现此功能的jQuery代码如下.这段代码可以使图片的大小保持在一定范围内,如果图片的原始尺寸都大于max*值,则显示出来的图片宽度都相等. 原始代码: 复制代码 代码如下: $(document).ready(function() {     $('.post img').each(function() {     var maxWidth = 100; /

Office教程:word怎样统一图片大小尺寸

  word怎样统一图片大小尺寸 首先新建一个新建 Microsoft Word 文档 你想要把图片缩小到什么程度,就先设置一下 文件---页面设置---页边距 这里的左右页边距就是你要让自己的图片变成多大,页边距越大,图片之后就会越小 下面插入预先准备好的图片 看看,原本大小不一的图片瞬间整齐了 下面要做的事情就是把这些图片从word导出来 文件---另存为网页---网页 然后关掉word文件,你就可以看到旁边多了一个文件夹,里面就是刚刚你调整过大小的图片. 接下来插入图片就可以看到统一大小的

swift 怎么获取图片大小

问题描述 swift 怎么获取图片大小 //指定imageView的边框,大小为图片大小 imageV.frame = CGRectMake(0.0 0.0image?.size.widthimage?.size.height) 这样写会报错怎么获取图片的大小呢