我的iOS应用中有UIWebView
包含PDF文件。这个PDF文件非常广泛。打开此视图时,设备会将内容与屏幕匹配。但它应该填满屏幕并“剪切”文件。
这是我正在使用的代码:
- (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 :(得分:0)
这里有两件事情可做。缩放页面以适合屏幕将生成在顶部看到的图像(图像的整个宽度适合屏幕)。在这种情况下,这不是我们想要的,所以我们应该禁用setScalesPageToFit。 OP已经提到仅此一项对他们没有用。
我们禁用缩放后应该做的另一件事是导航到我们想要显示的PDF部分。解决方案可能因项目特定设置而异。如果打开或关闭自动布局,也会有所不同。
这是我过去用于在网络视图中居中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];
});