zoukankan      html  css  js  c++  java
  • 屏幕截图

    - (IBAction)clip {

        dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{

            // 1.捕捉

            UIImage *newImage = [UIImage captureWithView:self.view];

            

            // 2.写文件

            NSData *data = UIImagePNGRepresentation(newImage);

            NSString *path = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) lastObject] stringByAppendingPathComponent:@"new.png"];

            [data writeToFile:path atomically:YES];

        });

    }

    //给UIImage添加类目   传人截屏范围。返回剪切图片

    + (instancetype)captureWithView:(UIView *)view

    {

        // 1.开启上下文

        UIGraphicsBeginImageContextWithOptions(view.frame.size, NO, 0.0);

        

        // 2.将控制器view的layer渲染到上下文

        [view.layer renderInContext:UIGraphicsGetCurrentContext()];

        //如果截屏次数很多,那么就用下面方法代替,不然CPU会给出警告。导致崩溃 /////////

    // 1.开启上下文

       // UIGraphicsBeginImageContext(view.frame.size);

        //[view drawViewHierarchyInRect:CGRectMake(0, view.frame.origin.y, view.frame.size.width, view.frame.size.height)  afterScreenUpdates:YES];

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

        // 3.取出图片

        UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();

        

        // 4.结束上下文

        UIGraphicsEndImageContext();

        

        return newImage;

    }

  • 相关阅读:
    银行卡和手机号占位符
    防京东进度尺的金额
    圆的进度条
    HMTL5滑动块研究
    自动生成验证码
    HTML5语义化
    (转)C++中使用C代码
    (转)四旋翼飞行器基本知识
    如何将.jpg图片 转换成.eps 格式图片
    HDOJ 1196 Lowest Bit
  • 原文地址:https://www.cnblogs.com/xiaoyuaixiami/p/5211042.html
Copyright © 2011-2022 走看看