1

こんにちは皆さん、私は現在pptファイルを表示しているUIWebViewをビットマップイメージに変換しようとして立ち往生しています。

私はこのコードを持っています:

UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectMake(0, 0, 768, 708)];

NSString *path = [[NSBundle mainBundle] pathForResource:documentName ofType:nil];
NSURL *targetURL = [NSURL fileURLWithPath:path];
NSURLRequest *request = [NSURLRequest requestWithURL:targetURL];
[webView loadRequest:request];

NSLog(@"Ouverture du contexte image");
UIGraphicsBeginImageContext(webView.bounds.size);
[webView.layer renderInContext:UIGraphicsGetCurrentContext()];
UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();

Webビューは実際にはうまく表示されていますが、画像へのレンダリングを作成することはできませんでした。問題がどこにあるかを誰かが知っている場合;)ありがとう

4

1 に答える 1

2

スクリーンショットを撮るコードには何の問題もありません—あなたはそれを時期尚早に使用しているだけです。

[webView loadRequest:request];非同期クライアント要求を開始します。つまりwebView、コンテンツをロードする前にスクリーンショットを撮っているということです。

スクリーンショットを撮るコードをUIWebViewDelegateのメソッドに移動しますwebViewDidFinishLoad:。もちろん、これを達成するには、をに割り当てる必要がありdelegateます。webView

于 2012-04-20T11:44:35.113 に答える