UIImage+Common.h 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. //
  2. // UIImage+Common.h
  3. // CommonLibrary
  4. //
  5. // Created by Alexi on 13-11-6.
  6. // Copyright (c) 2013年 ywchen. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. @interface UIImage (Common)
  10. - (UIImage *)fixOrientation;
  11. - (UIImage *)thumbnailWithSize:(CGSize)asize;
  12. - (UIImage *)rescaleImageToSize:(CGSize)size;
  13. - (UIImage *)cropImageToRect:(CGRect)cropRect;
  14. - (CGSize)calculateNewSizeForCroppingBox:(CGSize)croppingBox;
  15. - (UIImage *)cropCenterAndScaleImageToSize:(CGSize)cropSize;
  16. - (UIImage *)cropToSquareImage;
  17. // path为图片的键值
  18. - (void)saveToCacheWithKey:(NSString *)key;
  19. + (UIImage *)loadFromCacheWithKey:(NSString *)key;
  20. + (UIImage *)imageWithColor:(UIColor *)color;
  21. + (UIImage *)imageWithColor:(UIColor *)color size:(CGSize)size;
  22. + (UIImage *)randomColorImageWith:(CGSize)size;
  23. - (UIImage *)croppedImage:(CGRect)bounds;
  24. @end
  25. //========================================
  26. @interface UIImage (Cut)
  27. - (UIImage *)clipImageWithScaleWithsize:(CGSize)asize;
  28. - (UIImage *)clipImageWithScaleWithsize:(CGSize)asize roundedCornerImage:(NSInteger)roundedCornerImage borderSize:(NSInteger)borderSize;
  29. @end
  30. //========================================
  31. @interface UIImage (Resize)
  32. - (UIImage *)thumbnailImage:(NSInteger)thumbnailSize transparentBorder:(NSUInteger)borderSize cornerRadius:(NSUInteger)cornerRadius interpolationQuality:(CGInterpolationQuality)quality;
  33. - (UIImage *)resizedImage:(CGSize)newSize interpolationQuality:(CGInterpolationQuality)quality;
  34. - (UIImage *)resizedImageWithContentMode:(UIViewContentMode)contentMode bounds:(CGSize)bounds interpolationQuality:(CGInterpolationQuality)quality;
  35. - (UIImage *)resizedImage:(CGSize)newSize transform:(CGAffineTransform)transform drawTransposed:(BOOL)transpose interpolationQuality:(CGInterpolationQuality)quality;
  36. - (UIImage *)resizedImageInRect:(CGRect)rect transform:(CGAffineTransform)transform drawTransposed:(BOOL)transpose interpolationQuality:(CGInterpolationQuality)quality;
  37. - (CGAffineTransform)transformForOrientation:(CGSize)newSize;
  38. @end
  39. //========================================
  40. @interface UIImage (RoundedCorner)
  41. - (UIImage *)roundedCornerImage:(NSInteger)cornerSize borderSize:(NSInteger)borderSize;
  42. - (void)addRoundedRectToPath:(CGRect)rect context:(CGContextRef)context ovalWidth:(CGFloat)ovalWidth ovalHeight:(CGFloat)ovalHeight;
  43. @end
  44. //========================================
  45. @interface UIImage (SplitImageIntoTwoParts)
  46. + (NSArray*)splitImageIntoTwoParts:(UIImage*)image;
  47. @end