swift - WkWebView 中 PDF 的第一页呈现像素化

标签 swift pdf wkwebview

我在 WkWebView 中呈现多页 pdf 时遇到了一些问题。

如果它是单个页面,它看起来不错。但是任何多页 PDF 的第一页看起来都很糟糕。我不知道为什么。

Example

我这样加载请求

wkWebView.load(URLRequest(url: request as! URL))

我在另一个 View 中保留一个 wkWebView 并避免滚动滚动(这是有原因的,我知道 scrollView 是如何工作的)然后我将 wWebView 的高度和它的 scrollView 设置为与 contentSize 相同的高度。

wkWebView.frame.size.height = wkWebView.scrollView.contentSize.height
wkWebView.frame.size.width = UIScreen.main.bounds.width
wkWebView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
wkWebView.scrollView.delegate = self

最佳答案

发生这种情况的原因是因为在执行实际请求之前,您需要将 wkWebView 作为 subview 添加到将包含它的 scrollView 中。否则页面可能会像素化,并且在放大时它们也不会正确运行。

解决方法:

self.scrollView.addSubview(wkWebView)
wkWebView.load(URLRequest(url: request as! URL))

不会工作:

wkWebView.load(URLRequest(url: request as! URL))
self.scrollView.addSubview(wkWebView)

类似这个问题:https://stackoverflow.com/a/44623268/3418097

关于swift - WkWebView 中 PDF 的第一页呈现像素化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48109772/

相关文章:

linux - Root 无法打开 PDF Ubuntu 而用户可以

ios - 如何获取 iOS 设备型号(例如 A1530)?

ios - 使用 MapKit 和 Swift 打开给定地址中的 map

ios - 如何在 iOS 中显示弹出窗口(见图)

ios - 使用 http 从 URL 打开应用程序

ios - 我如何在 iOS 上使用 CoreGraphics 渲染的 pdf 上反转文本颜色?

pdf - cfdocument 如何调整页脚高度?

swift - 平滑 NSWindow 调整大小重新 : contentSize of WKWebView

ios - 使用 3G 连接时出现奇怪的错误?

javascript - 我如何等待回调来解决 JS 中的 promise ?同步 iOS WKWebView 和 JS