• IOS 图片拉伸


    (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)leftCapWidth topCapHeight:

    (NSInteger)topCapHeight 这个函数是UIImage的一个实例函数,它的功能是创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,第一个是左边不拉伸区域的宽度,第二个参数是上面不拉伸的高度。

    根据设置的宽度和高度,将接下来的一个像素进行左右扩展和上下拉伸。

    注意:可拉伸的范围都是距离leftCapWidth后的1竖排像素,和距离topCapHeight后的1横排像素。

    参数的意义是,如果参数指定10,5。那么,图片左边10个像素,上边5个像素。不会被拉伸,x坐标为11和一个像素会被横向复制,y坐标为6的一个像素会被纵向复制。

    注意:只是对一个像素进行复制到一定宽度。而图像后面的剩余像素也不会被拉伸。

    代码:
        UIImage *img=[UIImage imageNamed:@"bubbleSelf.png"];
        img=[img stretchableImageWithLeftCapWidth:15 topCapHeight:12];
        UIImageView *imgView=[[UIImageView alloc]initWithImage:img];
        [imgView setFrame:CGRectMake(10, 10, 200, 200)];
        [self. view addSubview:imgView];

    //////////////////////////////////////////////////////////////////////////////////////////////////////////

    关于UIView的setContentStetch方法:
    imageView.image = [UIImage imageNamed:@"image.png"];
    [imageView setContentStretch:CGRectMake(150.0/300.0,75.0/150.0,10.0/300.0,10.0/150.0)];
    image.png的大小是 210.0  x  126.0 ;
    imageView的frame是(9,117,300,150);
    150.0/300.0表示x轴上,前150个像素不进行拉伸。
    75.0/150.0表示y轴上,前75个像素不进行拉伸。
    10.0/300.0表示x轴上150后的10个像素(151-160)进行拉伸,直到image.png铺满imageView。
    10.0/150.0表示y轴上75后的10个(76-85)像素进行拉伸,直到image.png铺满imageView。

    本文转自  http://www.999dh.net/article/iphone_ios_art/70.html  转载请注明  

  • 相关阅读:
    几款开源的图形界面库(GUI Libraries)
    CMenu菜单
    开源免费的C/C++网络库(c/c++ sockets library) 七剑下天山
    基于MFC的ActiveX控件开发
    VC++中动态生成菜单技巧
    ActiveX控件打包成Cab置于网页中自动下载安装
    VC++API小查
    全面解析MFC应用程序中处理消息的顺序
    CMenu类的使用方法
    跨域单点登录实现(使用iframe)_勇敢的心_百度空间
  • 原文地址:https://www.cnblogs.com/rollrock/p/3013732.html
Copyright © 2020-2023  润新知