NIMKitResourceResizer.m 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. //
  2. // YXNOSResizer.m
  3. // NIM
  4. //
  5. // Created by amao on 11/19/14.
  6. // Copyright (c) 2014 Netease. All rights reserved.
  7. //
  8. #import "NIMKitResourceResizer.h"
  9. @interface NIMKitResourceResizer ()
  10. @property (nonatomic,assign) CGFloat scale;
  11. @end
  12. @implementation NIMKitResourceResizer
  13. + (instancetype)sharedResizer
  14. {
  15. static NIMKitResourceResizer *instance = nil;
  16. static dispatch_once_t onceToken;
  17. dispatch_once(&onceToken, ^{
  18. instance = [[NIMKitResourceResizer alloc] init];
  19. });
  20. return instance;
  21. }
  22. - (instancetype)init
  23. {
  24. if (self = [super init])
  25. {
  26. _scale = [[UIScreen mainScreen] scale];
  27. }
  28. return self;
  29. }
  30. - (NSString *)resize:(NSString *)mode
  31. width:(CGFloat)width
  32. height:(CGFloat)height
  33. {
  34. CGSize size = [self resizeWidth:width height:height];
  35. return [NSString stringWithFormat:@"%ld%@%ld",(long)(size.width),mode,(long)(size.height)];
  36. }
  37. - (CGSize)resizeWidth:(CGFloat)width
  38. height:(CGFloat)height{
  39. return CGSizeMake(width * _scale,height * _scale);
  40. }
  41. - (NSString *)imageThumbnailURL:(NSString *)urlString
  42. {
  43. return [urlString length] ? [urlString stringByAppendingFormat:@"?imageView&thumbnail=%@",NIMKitNOSZ(75, 75)] : urlString;
  44. }
  45. - (NSString *)videoThumbnailURL:(NSString *)urlString
  46. {
  47. return [urlString length] ? [urlString stringByAppendingString:@"?vframe=1"] : urlString;
  48. }
  49. @end