【问题标题】:BNHtmlPdfKit Code Not Doing Anything on iOSBNHtmlPdfKit 代码在 iOS 上没有做任何事情
【发布时间】:2014-08-11 21:04:24
【问题描述】:

我正在尝试使用BNHtmlPdfKit 将一些 HTML 保存为 PDF。只是为了看看它是否有效,我正在尝试获取一个网页并将其写入 PDF。我无法让它工作(根本)。下面是我的代码。

首先,我包含委托参考:

@interface PPToolsTableViewController () <BNHtmlPdfKitDelegate>

然后我执行以下操作:

NSString *exportsPath = [[PPHelpers documentsPath] stringByAppendingPathComponent:[NSString stringWithFormat:@"exports/Exported.pdf"]];

BNHtmlPdfKit *htmlPdfKit = [[BNHtmlPdfKit alloc] init];
htmlPdfKit.delegate = self;
[htmlPdfKit saveUrlAsPdf:[NSURL URLWithString:@"http://google.com"] toFile:exportsPath];

什么都没有发生。没有错误,也没有任何委托方法触发:

- (void) createPdf:(id)sender {
  NSLog(@"Create PDF");
}
- (void)htmlPdfKit:(BNHtmlPdfKit *)htmlPdfKit didSavePdfData:(NSData *)data {
  NSLog(@"PDF Save Data");
}
- (void)htmlPdfKit:(BNHtmlPdfKit *)htmlPdfKit didSavePdfFile:(NSString *)file {
  NSLog(@"PDF Save File");
}
- (void)htmlPdfKit:(BNHtmlPdfKit *)htmlPdfKit didFailWithError:(NSError *)error {
  NSLog(@"PDF Error");
}

有熟悉这个库的人可以为我提供一个工作示例吗?或者也许发现我在这里所做的事情有什么问题?提前致谢。

【问题讨论】:

    标签: ios pdf-generation


    【解决方案1】:

    我终于在文档中找到了这个小sn-p,它让我找到了解决方案:

    确保在外部保留对 BNHtmlPdfKit 对象的引用 调用方法的范围。否则,将没有委托方法 叫……

    因此,将 BNHtmlPdfKit 对象设为 @property 就大不相同了:

    @property (strong, nonatomic) BNHtmlPdfKit *htmlPdfKit;
    

    ...然后这工作:

    NSString *exportsPath = [[PPHelpers documentsPath] stringByAppendingPathComponent:[NSString stringWithFormat:@"exports/Logbook.pdf"]];
    
    self.htmlPdfKit = [[BNHtmlPdfKit alloc] init];
    self.htmlPdfKit.delegate = self;
    
    [self.htmlPdfKit saveUrlAsPdf:[NSURL URLWithString:@"http://google.com"] toFile:exportsPath];
    

    现在好多了。 :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-18
      • 1970-01-01
      • 2012-09-07
      • 2016-10-02
      • 2013-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多