2016-05-16 10 views
1

iOSアプリケーションにPDFファイルを含むUIWebViewがあります。このPDFファイルは非常に幅広いです。このビューを開くと、デバイスはコンテンツを画面にフィットさせます。しかし、それはむしろ画面をいっぱいにし、ファイルを "カット"する必要があります。UIWebView:PDFファイルの画面を入力

それはこのようなものです:enter image description here

しかし、アプリ/ビューを起動するとき、それは次のようにする必要があります:enter image description here

これは私が使用しているコードです:

- (void)viewDidLoad { 

    NSString *path = [[NSBundle mainBundle] pathForResource:@"File" ofType:@"pdf"]; 
    NSURL *url = [NSURL fileURLWithPath:path]; 
    NSURLRequest *request = [NSURLRequest requestWithURL:url]; 
    [_ImageInWebView loadRequest:request]; 
    [_ImageInWebView setScalesPageToFit:YES]; 

    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 
} 

はあなたを行いますどのようにこの問題を解決するか考えている?

+0

setScalesPageToFitをNOに設定しましたか? –

+0

はい、私はしましたが、助けにはなりませんでした。他のアイデア? –

+0

setScalesPageToFitをNOに設定し、 '_ImageInWebView.scrollView.zoomScale = 1.0; ' –

答えて

0

ここには2つのことがあります。画面に合わせてページを拡大縮小すると、上に表示される画像が生成されます(画像の全幅が画面に収まる)。これは私たちが望むものではないので、setScalesPageToFitを無効にする必要があります。 OPは、これだけは彼らのために働いていないとすでに言及した。

スケーリングを無効にした後にもう1つ行うべきことは、表示したいPDFの部分に移動することです。ソリューションは、プロジェクト固有の設定によって異なる場合があります。自動レイアウトがオンまたはオフの場合にも違いがあります。

これは過去に私がWebビューでPDFを中心に使用してきたことです。私は高さの高いPDFファイルでこのコードを使用したことに注意してください。

dispatch_after(dispatch_time(DISPATCH_TIME_NOW, 10 * NSEC_PER_MSEC), dispatch_get_main_queue(), ^{ 
    CGFloat topInset = floor(([[self _ImageInWebView] frame].size.height - [[[self _ImageInWebView] scrollView] contentSize].height)/2); 
    [[[self _ImageInWebView] scrollView] setContentInset:UIEdgeInsetsMake(topInset, 0, 0, 0)]; 
    [[[self _ImageInWebView] scrollView] setContentOffset:CGPointMake(0, -topInset) animated:NO]; 
}); 
+0

残念ながら、私はまだ私の問題を解決するためにmenagedしていません。私を助けることができる他の人はいますか? –

+0

コードを試したときの結果は何でしたか?何か変わったのですか? –

+0

エラーメッセージが表示されました。私はこのコードは私の問題に適していないと思う。 –

関連する問題