是否可以将iphone上的html(uiwebview)转换为pdf或pngs?

时间:2009-10-21 15:06:22

标签: iphone html pdf uiwebview png

我希望能够下载网页,然后将其另存为pdf或png(或在本地保存所有html,image和css等文件)。这样就可以在没有互联网连接的情况下查看页面。有没有标准的方法来做到这一点?

3 个答案:

答案 0 :(得分:1)

恐怕唯一的办法就是完全缓存页面:

  1. 将HTML保存到文件
  2. 逐步浏览文件并保存所有链接的资源(图片,样式表,javascript)
  3. 即便如此,某些页面可能无法完全缓存,因为javascript可能需要在其他位置连接以提取数据。

    如果您想截取屏幕截图,可以使用私有API来截取屏幕截图:

    CGImageRef UIGetScreenImage();
    @interface UIImage (ScreenImage)
    + (UIImage *)imageWithScreenContents;
    @end
    
    @implementation UIImage (ScreenImage)
    + (UIImage *)imageWithScreenContents
    {
        CGImageRef cgScreen = UIGetScreenImage();
        if (cgScreen) {
            UIImage *result = [UIImage imageWithCGImage:cgScreen];
            CGImageRelease(cgScreen);
            return result;
        }
        return nil;
    }
    @end
    

答案 1 :(得分:1)

只要UIWebView位于活动窗口的视图层次结构中,它就会在屏幕外呈现。然后,您可以将其渲染到PNG缓冲区。

缺点是它的尺寸不会比屏幕大,所以你只能以屏幕大小的增量拍摄页面。

很多更好的方法是做一些coneybeare建议并保存页面的代码和资产。

答案 2 :(得分:0)

也可以将文档导出到Google文档,然后以PDF格式下载。我想这里的重点是在没有连接到网络的情况下这样做。