美文网首页
iOS图片拉伸

iOS图片拉伸

作者: winning_ | 来源:发表于2017-01-02 10:25 被阅读27次

    在实际开发中美工给我们的图片不是那么合适,有时候需要对原图片进行拉伸,但是我们只是想把图片部分拉伸,而不是全部拉伸,造成图片的失真,这时候就需要用到以下苹果给我们提供的方法来实现。

    代码实现拉伸处理

    创建UIImageView
    UIImageView *imageView = [[UIImageView alloc] init];
    imageView.frame = CGRectMake(10, 10, 250, 150);
    [self.view addSubview:imageView];
    UIImage *img = [UIImage imageNamed:@"chat_send_nor"];
    
    • resizableImageWithCapInsets方法 iOS6以后的方法
    /*
     第一个参数是说明需要保护的区域,第二个参数是保护的模式
     UIImageResizingModeTile      平铺
     UIImageResizingModeStretch,  拉伸
     */
    img = [img resizableImageWithCapInsets:UIEdgeInsetsMake(30, 30, 30, 30) resizingMode:UIImageResizingModeStretch];
    
    • stretchableImageWithLeftCapWidth方法
    // right = width - left - 1;
    // bottom = height - top - 1;
    //实质上就拉伸一个像素,因为左边和上边保护完有公式就是1,一般保护都是宽高一半
    img = [img stretchableImageWithLeftCapWidth:img.size.width * 0.5 topCapHeight:img.size.height * 0.5];
    
    注意:可拉伸的范围都是距离leftCapWidth后的1竖排像素,和距离topCapHeight后的1横排像素。

    图形化界面中实现

    图形化界面中的好处是,不使用代码就可以全局的实现图形的拉伸。

    ![ ![屏幕快照上午10.12.06.png](https://img.haomeiwen.com/i3792777/92323e8a817ab3be.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)](https://img.haomeiwen.com/i3792777/fc86481c619686ab.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

    相关文章

      网友评论

          本文标题:iOS图片拉伸

          本文链接:https://www.haomeiwen.com/subject/xjlwvttx.html