美文网首页
iOS webView 截图

iOS webView 截图

作者: 萧城x | 来源:发表于2017-04-14 11:18 被阅读315次

    <pre>

    pragma mark ------------------------------------------------------- save -------------------------------------------------

    -(UIButton *)saveBtn
    {
    if (!_saveBtn) {
    _saveBtn = [UIButton buttonWithType:UIButtonTypeCustom];
    [_saveBtn setTitle:@"保存" forState:UIControlStateNormal];
    [_saveBtn sizeToFit];
    [_saveBtn addTarget:self action:@selector(saveTapped) forControlEvents:UIControlEventTouchUpInside];
    }
    return _saveBtn;
    }

    /*

    */
    -(void)saveTapped
    {
    __block NSString *hStr =@"";
    __block NSString *wtStr = @"";

    [self.webView evaluateJavaScript:@"document.body.scrollHeight;" completionHandler:^(id _Nullable response, NSError * _Nullable error) {
        NSLog(@"response: %@ error: %@", response, error);
        hStr = response;
        [self.webView evaluateJavaScript:@"document.body.scrollWidth;" completionHandler:^(id _Nullable response, NSError * _Nullable error) {
            NSLog(@"response: %@ error: %@", response, error);
            wtStr = response;
            
            self.webView.frame=CGRectMake(0, 0, [wtStr floatValue], [hStr floatValue]);
            UIGraphicsBeginImageContext(CGSizeMake(self.webView.frame.size.width,self.webView.frame.size.height));
            CGContextRef ctx = UIGraphicsGetCurrentContext();
            [self.webView.layer renderInContext:ctx];
            UIImage *finalimage = UIGraphicsGetImageFromCurrentImageContext();
            UIGraphicsEndImageContext();
            
            UIImageView *imaegview = [[UIImageView alloc] initWithFrame:CGRectMake(20, 20, 100, 600)];
            imaegview.image = finalimage;
            imaegview.contentMode = UIViewContentModeScaleToFill;
            [self.view addSubview:imaegview];
        }];
    }];
    

    }
    </pre>

    相关文章

      网友评论

          本文标题:iOS webView 截图

          本文链接:https://www.haomeiwen.com/subject/iqemattx.html