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;

    }

  • 相关阅读:
    闭包
    函数进阶2
    文档翻译 Python 2.7.x和Python 3.x之间的主要区别(包括示例)
    Deep Learn 关于单维度模型的多维输出
    Deep Learning 名词解释
    Deep Learning 激活函数
    Deep Learning 归一化、标准化
    Deep Learning 梯度下降
    Deep Learning 循环神经网络
    Deep Learning BP反向传播
  • 原文地址:https://www.cnblogs.com/xiaoyuaixiami/p/5211042.html
Copyright © 2011-2022 走看看