当前位置: 首页 > news >正文

素材网站下载省建设安全监督站的网站

素材网站下载,省建设安全监督站的网站,网络维护员岗位职责,乐清手机网站设计1、图片显示相关 1#xff09;、图片聊天背景拉伸不失真 2#xff09;、捏合、双击、下拉缩放 3#xff09;、Banner、相册 4#xff09;、动画 2、图片操作相关 1#xff09;、获取、下载图片#xff08;分享、传图片用#xff09; 2#xff09;、保存UIImage到本地 3… 1、图片显示相关   1、图片聊天背景拉伸不失真   2、捏合、双击、下拉缩放   3、Banner、相册   4、动画 2、图片操作相关   1、获取、下载图片分享、传图片用   2、保存UIImage到本地   3、绘制、解压图片     3-1、用原尺寸绘制      3-2、修改大小绘制免得每次拿原始大图片缩放显示   4、压缩图片     0、写在前面   1、图片显示模式为缩放以充满全屏需要注意剪切超出View的部分否则有时有问题。 self.photoImgV.contentMode UIViewContentModeScaleAspectFill; self.photoImgV.clipsToBounds YES;2)、加载网络图片更新 imageView 尺寸。因为涉及缩放所以要按比例算高度。 // 缩放宽度为 SCREEN_WIDTH self.goodsDetailImgV.contentMode UIViewContentModeScaleAspectFit; // 网图加载成功按比例更新高度 [self.goodsDetailImgV sd_setImageWithURL:[NSURL URLWithString:data[pic]] placeholderImage:[UIImage imageNamed:default_image] completed:^(UIImage * _Nullable image, NSError * _Nullable error, SDImageCacheType cacheType, NSURL * _Nullable imageURL) {[self.goodsDetailImgV mas_updateConstraints:^(MASConstraintMaker *make) {make.height.mas_equalTo( (SCREEN_WIDTH/image.size.width) * image.size.height );}]; }];1、图片显示相关   1、图片聊天背景拉伸不失真     1-1、方法1比较老的 UIImage *originalImage [UIImage imageNamed:sub.png]; finalImage [originalImage stretchableImageWithLeftCapWidth:originalImage.size.width/2 topCapHeight:0];1-2、方法2比较新的 UIImage *originalImg [UIImage imageNamed:sub];CGFloat protectH originalImg.size.height/2; CGFloat protectW originalImg.size.width/2;UIEdgeInsets protectEdg UIEdgeInsetsMake(protectH, protectW, protectH, protectW);UIImage *finalImg [originalImg resizableImageWithCapInsets:protectEdg resizingMode:UIImageResizingModeStretch];后续补充     根据情况设置 Insets 不一定都要取中点。意义为分别保护 {0, 0, 0, 0} 到 {top, left, bottom, right} 距离的图片。     2、捏合、双击、下拉缩放     2-1、捏合缩放       1、设置最大、最小缩放比例 scrollview.maximumZoomScale 2.0; scrollview.minimumZoomScale 0.5;2、设置代理 scrollview.delegate self;3、添加上ImageView   imageView.tag 101; [scrollview addSubview:imageView];4、给代理要缩放的View不一定要添加上才可以缩放可以缩放不在本 scrollview 的View效果就很奇葩了 - (nullable UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {UIImageView *imageView [scrollView viewWithTag:101];return imageView; }2-2、双击缩放         0、需要注意的地方         0-1、scrollView要设最大/小缩放比例         0-2、因为图片层在最上面且默认不可交互所以图片的View记得userInteractionEnabled YES 。         0-3、ScrollView需要缩小尺寸重设contentsize的时候如删除某照片要先清掉超出的的控件、数据。否则拉到底弹性的时候还能看到之前的。       1、scrollView才可以缩放所以要把ImageView加在scrollView给scrollView添加手势识别。 UITapGestureRecognizer *imageTwoTap [[UITapGestureRecognizer alloc]initWithTarget:self action:selector(twoTapAction:)]; imageTwoTap.numberOfTapsRequired 2; [scrollView addGestureRecognizer: imageTwoTap];2、第一次点哪放大哪第二次恢复原来大小 #define SCALE_WIDTH 60 //要放大的局部宽度大小 #define SCALE_HEIGHT 60 //要放大的局部高度大小-(void)twoTapAction:(UITapGestureRecognizer *)tap {UIScrollView *scrollView (UIScrollView *)tap.view;if (scrollView.zoomScale ! 1.0){[scrollView setZoomScale:1.0 animated:YES];}else{CGPoint tapPoint [tap locationInView:scrollView];[scrollView zoomToRect:CGRectMake(tapPoint.x-SCALE_WIDTH/2, tapPoint.y-SCALE_HEIGHT/2, SCALE_WIDTH, SCALE_HEIGHT) animated:YES];} }3、需要给代理放大、缩小的ImageView - (nullable UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView {if ([[scrollView viewWithTag:1000] isMemberOfClass:[UIImageView class]]){return [scrollView viewWithTag:1000];}return nil; }2-3、下拉缩放     //根据手势位置缩放、移动view判断所在位置需要返回待补充     3、Banner、相册       1、图片移动、     4、动画     参照《iOS动画》 - 0、写在前面 - 4、UIImageView 有自带的动画属性、方法   2、图片操作相关   1、获取、下载图片分享、传图片用     1-1、从 SDWebImage 缓存取 SDWebImageManager *manager [SDWebImageManager sharedManager];[manager diskImageExistsForURL:url completion:^(BOOL isInCache) {UIImage *img nil;if (isInCache) {// 有直接取img [[manager imageCache] imageFromDiskCacheForKey:url.absoluteString];}else{// 无下载} }];1-2、下载       1、同步加载图片仅做了解 NSData *imgData [NSData dataWithContentsOfURL:url]; UIImage *image [[UIImage alloc] initWithData:imgData];2、异步加载图片仅做了解 - (void)loadImageFromWebWithURL:(NSURL*)url {dispatch_queue_t queue dispatch_queue_create(test, NULL);dispatch_async(queue, ^{// 获取数据NSData *data [NSData dataWithContentsOfURL:url];// 主线程dispatch_sync(dispatch_get_main_queue(), ^{UIImage *image [UIImage imageWithData:data];});}); }3、SDWebImageDownloader 直接下载 SDWebImageDownloader *downloader [SDWebImageDownloader sharedDownloader];[downloader downloadImageWithURL:urloptions:SDWebImageDownloaderHighPriorityprogress:^(NSInteger receivedSize, NSInteger expectedSize, NSURL * _Nullable targetURL) {// 进度} completed:^(UIImage * _Nullable image, NSData * _Nullable data, NSError * _Nullable error, BOOL finished) {// 完成}];2、保存UIImage到本地     2-1、弄成data // UIImage 转换成 data、图片 保存 UIImage *img [UIImage imageNamed:test];//png格式 NSData *imageData UIImagePNGRepresentation(img);//JEPG格式 NSData *imageData UIImageJPEGRepresentation(img,1.0);2-2、写入       1、直接写入 NSString *cashesPath [NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,YES) firstObject];// pngdata写入 [imageData writeToFile:[cashesPath stringByAppendingPathComponent:image1.png] atomically:YES];// jpgdata写入 [imageData writeToFile:[cashesPath stringByAppendingPathComponent:image1.jpg] atomically:YES];2、用fileManage写入 NSFileManager *fileManager [NSFileManager defaultManager];NSString *cashesPath [NSSearchPathForDirectoriesInDomains(NSCachesDirectory,NSUserDomainMask,YES) firstObject];// 将图片保存为PNG格式 [fileManager createFileAtPath:[cashesPath stringByAppendingString:/image2.png] contents:imageData attributes:nil];// 将图片保存为JPEG格式 [fileManager createFileAtPath:[cashesPath stringByAppendingString:/image2.jpg] contents:imageData attributes:nil];补充测试后无论 data 还是 fileManage 写入同格式大小一致。如 image1.png 和 image2.png 。image1.jpg 和image2.jpg。     3、绘制、解压图片     3-1、用原尺寸绘制 UIGraphicsBeginImageContextWithOptions(image.size, YES, 0); [image drawAtPoint:CGPointZero]; image UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext();补充意义不大文件太大。目的是为了及时解压、刷新UI、且不改变原图片     3-2、修改大小绘制免得每次拿原始大图片缩放显示 UIGraphicsBeginImageContextWithOptions(size, YES, 0); [image drawInRect:CGRectMake(0, 0, size.width, size.height)]; image UIGraphicsGetImageFromCurrentImageContext(); UIGraphicsEndImageContext();补充1、注意size的设置。         1、如果是按原图片的size比例最大一边为1280绘制没问题。         2、如果是按显示控件 UIImageView 等固定size绘制可能会出现图片变形以填充满size。      2、UIGraphicsBeginImageContextWithOptions(size, YES, 0) 会比 UIGraphicsBeginImageContext(size) 效果好。     4、压缩图片 // 最大边长 #define kMaxLength 1280.0 // JPG格式压缩质量 0 - 1 #define kJPGCompressionQuality 0.5#pragma mark - 根据宽高压缩图片 - (UIImage*)imageWithImage:(UIImage*)originalImage scaleToSize:(CGSize)finalSize{UIGraphicsBeginImageContextWithOptions(finalSize, YES, 0);[originalImage drawInRect:CGRectMake(0, 0, finalSize.width, finalSize.height)];UIImage *finalImage UIGraphicsGetImageFromCurrentImageContext();UIGraphicsEndImageContext();return finalImage; }#pragma mark - 压缩一张图片 自定义最大宽高 - (UIImage*)imageWithImage:(UIImage*)originalImage maxLength:(CGFloat)maxLength{CGFloat originalImageW originalImage.size.width;CGFloat originalImageH originalImage.size.height;//宽高比 // CGFloat aspectRatio originalImageW / originalImageH;CGFloat finalImageW originalImageW;CGFloat finalImageH originalImageH;if(originalImageW maxLength || originalImageH maxLength){//超过设置的最大宽度 判断那个边最长if(originalImageW originalImageH){//宽度大于高度finalImageW maxLength;finalImageH (maxLength * originalImageH)/originalImageW;}else{finalImageH maxLength;finalImageW (maxLength * originalImageW)/originalImageH;}}UIImage *finalImage [self imageWithImage:originalImage scaleToSize:CGSizeMake(finalImageW, finalImageH)];NSData *finalImageData nil;if (UIImagePNGRepresentation(finalImage) nil) {finalImageData UIImageJPEGRepresentation(finalImage, kJPGCompressionQuality);}else{finalImageData UIImagePNGRepresentation(finalImage);}return [UIImage imageWithData:finalImageData]; }#pragma mark - 压缩多张图片 自定义最大宽高 - (NSArrayUIImage**)imageArrayWithImageArray:(NSArrayUIImage**)originalImageArray maxLength:(CGFloat)maxLength{NSMutableArray *finalImageArray [NSMutableArray array];for (int i 0; ioriginalImageArray.count; i) {UIImage *finalImage [self imageWithImage:originalImageArray[i] maxLength:maxLength];[finalImageArray addObject:finalImage];}return finalImageArray; }#pragma mark - 压缩一张图片 最大宽或高1280 - (UIImage*)imageWithImage:(UIImage*)image{return [self imageWithImage:image maxLength:kMaxLength]; }#pragma mark - 压缩多张图片 最大宽或高1280 - (NSArrayUIImage**)imageArrayWithImageArray:(NSArrayUIImage**)imageArr{return [self imageArrayWithImageArray:imageArr maxLength:kMaxLength]; }补充        1、在方法 - (UIImage*)imageWithImage:(UIImage*)originalImage maxLength:(CGFloat)maxLength       不管尺寸是否低于设定的最大宽高都会被绘制可选择优化。     2、修改自《iOS-微信分享多张图片UIActivityViewController多图分享和多图分享失败》  -- ZFJ_张福杰   CSDN   转载于:https://www.cnblogs.com/leonlincq/p/8330418.html
http://www.pierceye.com/news/520183/

相关文章:

  • 个人网站 备案 广告建设国际网站
  • 苏州建站推广公司做网站费用怎么记分录
  • 做的比较好的家具网站首页在win10下建设网站
  • 住房和城乡建设部网站 绿地网站备案有时间吗
  • 新开传奇手游新服网谷歌seo运营
  • 新河网站建设网站空间 jsp
  • 网站视频如何下载中国建盏
  • 做网站的叫什么软件细谈电商网站外链建设的策略
  • 免费网站制作视频教程广东东莞营销
  • 女生做网站运营累不累贵州省铁路建设办公室网站
  • 全球外贸网站排名go生物网站做蛋白定位
  • 网站的规划和建设方案中教在线3d建模培训
  • 禾天姿网站开发设计上海官网
  • 个人备案后可以做电影网站吗做网站要注意哪些问题
  • 为什么我的网站在百度搜不到登封郑州网站建设
  • 中国建设部网站能查叉车证wordpress预览
  • 域名申请网页制作网站建设和外国人做古玩生意的网站
  • win7用自己ip做网站邯郸营销型网站建设
  • 织梦免费网站模块下载地址加强网站建设技术培训
  • 网站源码商城建设成都建站优化
  • 网站销售如何做业绩狗狗和人做网站
  • dede 手机站 怎么获取跳转网站安卓软件开发环境
  • 个人网站做什么类型好中国网络安全官网
  • 怎样优化网站排名上传到服务器的网站打开是空白
  • 我的世界做皮肤网站企业网站风格
  • 京东网站建设的基本情况做哪类网站赚钱
  • 淘宝上网站建设续费个人网站做什么类型的
  • 牙克石网站建设wordpress 跳过ftp
  • 中国建设银行官网站e路通下载店铺设计图纸及效果图大全
  • 福州网站推广公司烟台网络公司有哪些