在UIWebView

时间:2015-11-20 17:00:18

标签: html ios swift uiwebview

我在UIWebViews上遇到了一些麻烦。我有一个大的PDF(96页),它需要在UIWebView中加载,应该能够滚动到它的某个部分,并在其文本中搜索。所以我想把它转换成.htm是一个更好的解决方案。现在我的问题是html只显示在屏幕的一半,每个iPhone的大小,这是因为我认为转换器用它做了一些事情。 enter image description here

现在文字是这样的。我怎么能解决这个问题?有没有办法扩展内容?

感谢任何帮助,谢谢!

1 个答案:

答案 0 :(得分:0)

理想的解决方案是在HTML文档中使用CSS解决此问题。但是,由于我不知道您的HTML代码如何在这里找到如何从“外部”扩展HTML页面的解决方案:

最明显的解决方案是在UIWebView.scrollView上设置缩放:

webview.scrollView.maximumZoomScale = 2
webview.scrollView.zoomScale = 2

但是这个解决方案有一个很大的缺点:文本变得模糊,因为它只是缩放而不是以更大的尺寸渲染。所以这不起作用。

但是,如果直接在HTML文档中进行缩放,文本将以更大的尺寸呈现并保持清晰。另一方面,图像使用此方法会变得模糊。但是根据你的截图,你的HTML中没有图像,所以这可能适合你。

delegate上的UIWebView设置为ViewController并实现以下委托方法:

func webViewDidFinishLoad(webView: UIWebView) {
    webView.stringByEvaluatingJavaScriptFromString("document.body.style.zoom = 2.0")
}

这会将HTML文档缩放2.0倍。您可能需要根据需要调整因子。