改变图片尺寸

news/2024/7/7 22:23:01
// 改变图片尺寸
-(UIImage *)thumbnailWithImageWithoutScale:(UIImage *)image size:(CGSize)asize{

    UIImage *newimage;
    if (nil == image) {
        newimage = nil;
    }else{
        CGSize oldsize = image.size;
        CGRect rect;
        if (asize.width/asize.height > oldsize.width/oldsize.height) {
            
            rect.size.width = asize.height*oldsize.width/oldsize.height;
            rect.size.height = asize.height;
            rect.origin.x = (asize.width - rect.size.width)/2;
            rect.origin.y =0;
        }else{
            rect.size.width = asize.width;
            rect.size.height = asize.width*oldsize.height/oldsize.width;
            rect.origin.x =0;
            rect.origin.y = (asize.height - rect.size.height)/2;
        }
        
        UIGraphicsBeginImageContext(asize);
        CGContextRef context =UIGraphicsGetCurrentContext();
        CGContextSetFillColorWithColor(context, [[UIColor clearColor] CGColor]);
        UIRectFill(CGRectMake(0,0, asize.width, asize.height));//clear background
        [image drawInRect:rect];
        newimage = UIGraphicsGetImageFromCurrentImageContext();
        UIGraphicsEndImageContext();
   }
   return newimage;
   
}
复制代码

http://www.niftyadmin.cn/n/3060754.html

相关文章

Git建立远程/本地服务器和git命令的使用

Github 远程仓库 1、github.com 注册账户 2、在github上创建仓库 3、生成本地ssh key [rootlocalhost ~]# ssh-keygen -t rsa -C maiya163.com # 邮箱要与github上注册的相同 [rootlocalhost ~]# cat .ssh/id_rsa.pub ssh-rsaAAAAB3NzaC1yc2EAAAADAQABAAABAQDVThfq4brrlsPGtAkn…

磁盘格式化、磁盘挂载以及手动增加swap空间

磁盘格式化cat /etc/filesystems:查看centos7操作系统所支持的文件系统类型。centos7默认的文件系统类型为xfs。早期版本使用的是ext文件系统,6使用的是ext4,5使用的是ext3,依此类推。可以使用mount命令来查看分区的挂载情况以及文…

android动画笔记

动画 插值器 估值器 动画分类 View动画(补间动画)、帧动画、属性动画View动画(补间动画)包括:平移、旋转、缩放、透明度,View动画是一种渐近式动画 帧动画:图片切换动画属性动画:通过…

Linux-redhat7-----静态ip配置

1、配置子网IP和子网掩码,25(网段)可更改为其他值, 2、点击上图,“NAT设置”可查看默认网关,配置IP时需要用到 3、vi /etc/sysconfig/network-scripts/ifcfg-eno16777736 编辑网卡配置信息 4、vi /etc/res…

codeforces 962C Make a Square

题目链接&#xff1a;http://codeforces.com/contest/962/problem/C 题意&#xff1a;给你一个数字n &#xff08;n<2e9)没有前导0。现在需要你删除一些数字&#xff0c;也可以不删除&#xff0c;使得剩下的数是平方数。删除后得到的数字不存在前导0。输出删除最少的位数&am…

基于word2vec训练词向量(一)

欢迎大家关注我们的网站和系列教程&#xff1a;http://www.tensorflownews.com/&#xff0c;学习更多的机器学习、深度学习的知识&#xff01; 1.回顾DNN训练词向量 上次说到了通过DNN模型训练词获得词向量&#xff0c;这次来讲解下如何用word2vec训练词获取词向量。 回顾下之前…

linux块I/O总体概括

直接先上重点&#xff0c;linux中IO栈的完全图如下&#xff1a; 系统中能够随机访问固定大小数据片的硬件设备称作块设备。固定大小的数据片称为块。常见的块设备就是硬盘了。不能随机访问的就是字符设备了&#xff0c;管理块设备比字符设备要复杂很多。 块设备中最小的可寻址单…

6.1 压缩打包介绍 6.2 gzip压缩工具 6.3 bzip2压缩工具 6.4 xz压缩工具

6.1 压缩打包介绍6.2 gzip压缩工具&#xff1a;不可以压缩目录6.3 bzip2压缩工具&#xff1a;不可以压缩目录&#xff0c;否则出错6.4 xz压缩工具&#xff1a;不可以压缩目录&#xff0c;否则出错 转载于:https://blog.51cto.com/13227377/2102834