Можно ли конвертировать html (uiwebview) на iphone в pdf или pngs? - PullRequest
1 голос
/ 21 октября 2009

Я бы хотел иметь возможность загрузить веб-страницу, а затем сохранить ее в формате PDF или PNG (или сохранить ее локально со всеми файлами HTML, изображений, CSS и т. Д.). Это так, что страницу можно просматривать без подключения к интернету. Есть ли стандартный способ сделать это?

Ответы [ 3 ]

1 голос
/ 24 октября 2009

UIWebView будет отображаться вне экрана, пока он находится в иерархии представлений активного окна. Затем вы можете отобразить его в буфер PNG.

Недостатком является то, что он не будет сам по размеру больше экрана, поэтому вы ограничены фотографированием страницы с шагом по размеру экрана.

Лучший способ - сделать то, что предложил coneybeare, и сохранить код и ресурсы страницы.

1 голос
/ 21 октября 2009

Боюсь, единственный способ полностью кэшировать страницу - это:

  1. Сохранить HTML в файл
  2. Пройдите по файлу и сохраните все связанные ресурсы (изображения, таблицы стилей, JavaScript)

Несмотря на это, некоторые страницы могут не полностью кэшироваться, так как для извлечения данных в 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
0 голосов
/ 05 декабря 2010

Так что вы можете экспортировать документ в Google doc, а затем загрузить его обратно в формате PDF. Полагаю, смысл в том, чтобы сделать это без подключения к сети.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...