精华内容
下载资源
问答
  • #import @interface UIImage (YKD) /** * 加载图片 * * @param imageName 图片名 */ + (UIImage *)imageWithName:(NSString *)... * 返回一张自由拉伸的图片 */ + (UIImage *)resizedImageWithName:(NSString *
    #import <UIKit/UIKit.h>
    
    @interface UIImage (YKD)
    /**
     *  加载图片
     *
     *  @param imageName 图片名
     */
    + (UIImage *)imageWithName:(NSString *)imageName;
    
    /**
     *  返回一张自由拉伸的图片
     */
    + (UIImage *)resizedImageWithName:(NSString *)name;
    
    /**
     *  按比例返回一张拉伸后的图片
     */
    + (UIImage *)resizedImageWithName:(NSString *)name left:(CGFloat)left top:(CGFloat)top;
    @end

    #import "UIImage+YKD.h"
    //判断是否为iOS 7
    #define iOS7 ([[UIDevice currentDevice].systemVersion doubleValue] >= 7.0)
    
    
    @implementation UIImage (YKD)
    
    + (UIImage *)imageWithName:(NSString *)imageName
    {
        if (iOS7) {
            NSString *newName = [imageName stringByAppendingString:@"_os7"];
            UIImage *image = [UIImage imageNamed:newName];
            if (image == nil) {
                image = [UIImage imageNamed:imageName];
            }
            return image;
        }
        //非iOS 7
        return [UIImage imageNamed:imageName];
    }
    
    + (UIImage *)resizedImageWithName:(NSString *)name
    {
        return [self resizedImageWithName:name left:0.5 top:0.5];
    }
    
    + (UIImage *)resizedImageWithName:(NSString *)name left:(CGFloat)left top:(CGFloat)top
    {
        UIImage *image = [self imageNamed:name];
        return [image stretchableImageWithLeftCapWidth:image.size.width * left topCapHeight:image.size.height * top];
    }
    
    @end

    展开全文
  • ios-实现可拉伸的图片

    2017-07-10 16:01:53
    这里我们可以在项目中新建一个.m文件实现对UIImage类的扩展,其实就是给这个类添加新方法...//返回一张可拉伸的图片 是对UIImage类的扩展 @interface UIImage (Extend) + (instancetype)resizedImageWithName:(NSString
    这里我们可以在项目中新建一个.m文件实现对UIImage类的扩展,其实就是给这个类添加新方法,但是不能用于成员变量。具体看代码。这个可以实现图片的平铺拉伸,而不是直接拉伸。
    //UIImage+Extend.h 文件中
    #import <UIKit/UIKit.h>
    //返回一张可拉伸的图片 是对UIImage类的扩展
    @interface UIImage (Extend)
    + (instancetype)resizedImageWithName:(NSString *)imageName;
    + (instancetype)resizedImageWithName:(NSString *)imageName width:(CGFloat)width height:(CGFloat)height;
    @end
    
    //UIImage的扩展类 .m文件中
    #import "UIImage+Extend.h"
    
    @implementation UIImage (Extend)
    + (instancetype)resizedImageWithName:(NSString *)imageName
    {
        return [self resizedImageWithName:imageName width:0.5 height:0.5];
    }
    + (instancetype)resizedImageWithName:(NSString *)imageName width:(CGFloat)width height:(CGFloat)height
    {
        UIImage *image = [UIImage imageNamed:imageName];
        return [image stretchableImageWithLeftCapWidth:image.size.width * width
                                          topCapHeight:image.size.height * height];
        /*创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,第一个是左边不拉伸区域的宽度,第二个参数是上面不拉伸的高度。那么接下来的一个像素会被拉伸。
        例如,leftCapHeight为6,topCapHeight为8。那么,图片左边的6个像素,上边的8个像素。不会被拉伸,而左边的第7个像素,上边的第9个像素这一块区域将
         会被拉伸。剩余的部分也不会被拉伸.如果参数指定10,5。那么,图片左边10个像素,上边5个像素。不会被拉伸,x坐标为11和一个像素会被横向复制,y坐标为6
         的一个像素会被纵向复制。注意:只是对一个像素进行复制到一定宽度。而图像后面的剩余像素也不会被拉伸。个方法只有2个参数,leftCapWidth代表左端盖宽度,
          */
     }
    @end
    
    topCapHeight代表上端盖高度。系统会自动计算出右端盖宽度rightCapWidth和底端盖高度bottomCapHeight,算法如下:
     系统会自动计算rightCapWidth
     rightCapWidth = image.width - leftCapWidth - 1;
     系统会自动计算bottomCapHeight
     bottomCapHeight = image.height - topCapHeight - 1 所以可拉伸的区域其实只有1*1。实际可拉伸的其实就是那个点而已你想拉伸多大给你无限的填充也就是说拉伸的就是你设定的left和top坐标的位置+1的那个点
    展开全文
  • 创建可拉伸的图片

    2012-08-19 14:36:00
    创建可拉伸的图片 [code="c"]UIImage *navBarImage = [[UIImage imageNamed:@"header_bkd.png"] stretchableImageWithLeftCapWidth:5 topCapHeight:0.0]; [[UINavigationBar appeara...
    创建可拉伸的图片
    UIImage *navBarImage = [[UIImage imageNamed:@"header_bkd.png"]
    stretchableImageWithLeftCapWidth:5 topCapHeight:0.0];
    [[UINavigationBar appearance] setBackgroundImage:navBarImage
    forBarMetrics:UIBarMetricsDefault];
    展开全文
  • (NSInteger)topCapHeight 这个函数是UIImage的一个实例函数,它的功能是创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,第一个是左边不拉伸区域的宽度,第二个参数是上面不拉伸的高度。 根据设置的宽...

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

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

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

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

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

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

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

    下面是我测试的截图

    原图 


     





     

    展开全文
  • 象ACDSEE一样能自由缩放拉伸的图片显示程序,VC6.0多文档编写
  • // 返回一个可拉伸的图片 // UIImage的分类 + (UIImage *)resizedImage:(NSString *)name { UIImage *image = [self imageWithName:name]; return [image stretchableImageWithLeftCapWidth:image.siz...
  • /** * 加载图片 * * @param name 图片名 */ + (UIImage *)imageWithName:... * 返回一张自由拉伸的图片 */ + (UIImage *)resizedImageWithName:(NSString *)name; + (UIImage *)resizedImageWithName:(NSS
  • + (UIImage *)resizedImage:(NSString *)name {  UIImage *image = [UIImage imageWithName:name];  return [image ...stretchableImageWithLeftCapWidth:image.size.width * ...0.5 topCapHeight:image.size.
  • 本资源实现了在一个对话框指定区域画图,图片可根据指定区域大小拉伸自身大小。并且实现了在对话框指定订房画各种彩色形状。例如圆、正方形等等。
  • 还记得在Windows下用MFC或WTL写用户界面程序的时候,为了给可改变大小的对话框加上背景图案,需要对设计师提供的图片进行裁剪。把图片切成九块,其中四个角是不拉伸的,四条棱边可以在一个方向上拉伸,中间区域则可...
  • drawBitmap(Bitmap bitmap, Rect ...Bitmap bitmap:需要处理的图片 Rect src:图片的坐标 RectF dst:需要绘制的图片所在位置的坐标 Paint paint:画笔类(处理图片时一般为null) 下面来介绍下Rect和RectF and
  • 在Interface Builder中,UIButtonbackgroundImage不支持拉伸,准确说是UIButton中backgroundImage不能支持contentStretch属性,在IB中,不能单独对UIButtonbackgroundImage设置contentStretch属性。...
  • 图片的拉伸

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

    2017-03-21 15:37:00
    - (UIImage *)...该方法的意思是意思就是用来创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,第一个是左边不拉伸区域的宽度,第二个参数是上面不拉伸的高度。那么接下来的一个...
  • 图片的部分拉伸

    2016-05-16 10:24:00
    (NSInteger)topCapHeight 这个函数是UIImage的一个实例函数,它的功能是创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,第一个是左边不拉伸区域的宽度,第二个参数是上面不拉伸的高度。 根据设置的宽度...
  • (NSInteger)topCapHeight 这个函数是UIImage的一个实例函数,它的功能是创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,第一个是左边不拉伸区域的宽度,第二个参数是上面不拉伸的高度。 根据设置的...
  • 拉伸图片的方法

    2015-12-25 11:26:41
    传入一个图片,拉伸后返回一个图片。 1.- (UIImage *)stretchableImageWithLeftCapWidth:(NSInteger)... 这个函数是UIImage的一个实例函数,它的功能是创建一个内容可拉伸,而边角不拉伸的图片,需要两个参数,
  • 拉伸图片的两种方法

    千次阅读 2016-02-23 22:42:37
    在开发时,常常会遇到一个图片作为控件的image显示时,图片太小,此时图片被拉伸后,图片四周显示的并不是我们想要的结果,此时我们就需要对图片进行... 使用xcode进入应用程序的资产文件夹下,点击需要拉伸的图片  2
  • 拉伸设置按钮的图片

    2016-01-22 11:12:36
     为了减小应用的大小,可以拉伸的图片是没有必要放全图的。 上面的图片就是被拉伸的图片,其实还可以再小的。 下面是相应的例子:   UIImage *originalImageN = [UIImage imageNamed:@"me_yqhy6_63x28&...
  • ios图片拉伸的问题

    2015-06-16 15:32:01
    主要使用的是如下的方法 - (UIImage *)...可以用来创建一个内容可拉伸,而边角不拉伸的图片, 需要两个参数, 第一个是左边不拉伸区域的宽度,第二个参数是上面不拉伸的高度。 那么
  • 主要为大家详细介绍了iOS图片实现可拉伸不变形的处理操作,通过UIImage对象调用该方法,并且传入要拉伸的图片的名字作为参数,实现返回一个可拉伸不变形的图片,感兴趣的小伙伴们可以参考一下
  • 图片的拉伸问题

    2015-03-16 22:56:48
    UIImage *image = [UIImage ... // 通过一张原始图片生成一张可拉伸的图片  CGFloat imageW = image.size.width * 0.5;  CGFloat imageH = image.size.height * 0.5;  UIImage *newIma

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,291
精华内容 2,116
关键字:

拉伸的图片