快速创建网页缩略图
Posted
技术标签:
【中文标题】快速创建网页缩略图【英文标题】:Creating webpages thumbnails in swift 【发布时间】:2019-03-19 01:37:27 【问题描述】:我正在尝试在我的应用上编写一个“网页选择器”,使用精美的轮播来显示网页缩略图。
但是,我不想在轮播中将网页缩略图显示为 webView,因为我可以同时获取大量 (20-30) 网页,并且加载所有这些网页会导致很多延迟.
因此,我决定使用网页的屏幕截图并使用这些图像来填充我的轮播,从而使轮播动画更加流畅。
这是我的问题: 我想知道是否有任何方法可以截取网页的屏幕截图(不显示在应用程序屏幕上)并将图像保存到我可以用来填充轮播的列表中。
我知道this question,但这是一个相当老的帖子,所以我想知道是否有其他方法可以做到这一点。另外,我尝试实施建议的解决方案,但没有奏效。
【问题讨论】:
【参考方案1】:您可以在视图控制器后面创建一个 WKWebView(因此不可见)并限制为您想要的大小。页面加载完成后,在UIGraphicsImageRender 中使用drawHierarchy(in:afterScreenUpdates:) 拍摄快照,并将生成的图像保存为缩略图。
【讨论】:
谢谢!我试图这样做,但所有的屏幕截图都是黑色的......我认为这是因为当我截取屏幕截图时,网页尚未加载。 设置你的 webView.navigationDelegate 并实现并等待 WKNavigationDelegate 中的didFinish
方法developer.apple.com/documentation/webkit/wknavigationdelegate/…以上是关于快速创建网页缩略图的主要内容,如果未能解决你的问题,请参考以下文章