複数のHTMLファイルから複数のPDFを生成します。使用iclems機能は、複数のPDF変換に複数のHTMLを有効にするために、私はforループを包むよ
for (int i=0; i<= 47; i++) {
NSString *inputHTMLfileName = [NSString stringWithFormat:@"wkhtml_tempfile_%d",j];
NSString *outputPDFfileName = [NSString stringWithFormat:@"~/Documents/%d_delegateDemo%d.pdf",loop,j];
NSURL *htmlFileUrl = [[NSBundle mainBundle]
URLForResource:inputHTMLfileName withExtension:@"html"];
// Check for existing pdf file and remove it
NSError *pdfDeleteError;
if ([[NSFileManager defaultManager] fileExistsAtPath:outputPDFfileName]){
//removing file
if (![[NSFileManager defaultManager] removeItemAtPath:outputPDFfileName error:&pdfDeleteError]){
NSString * errorMessage = [NSString stringWithFormat:@"wk %d Could not remove old pdf files. Error:%@",j, pdfDeleteError];
NSLog(@"%@",errorMessage);
}
}
self.PDFCreator = [NDHTMLtoPDF createPDFWithURL:htmlFileUrl pathForPDF:[outputPDFfileName stringByExpandingTildeInPath] pageSize:kPaperSizeA4 margins:UIEdgeInsetsMake(10, 5, 10, 5) successBlock:^(NDHTMLtoPDF *htmlToPDF) {
NSString *result = [NSString stringWithFormat:@"HTMLtoPDF did succeed (%@/%@)", htmlToPDF, htmlToPDF.PDFpath];
NSLog(@"%@",result);
self.resultLabel.text = result;
} errorBlock:^(NDHTMLtoPDF *htmlToPDF) {
NSString *result = [NSString stringWithFormat:@"HTMLtoPDF did fail (%@)", htmlToPDF];
NSLog(@"%@",result);
self.resultLabel.text = result;
}];
}
しかし、それは
でクラッシュスレッド1:EXC_BAD_ACCESS(コード= EXC_I386_GPFLT)githubのに
リンク: https://github.com/iclems/iOS-htmltopdf
しかし、forループをボタンを押したままにすると(1秒に1回この機能が起動されます)、アプリケーションはクラッシュしません。
については は、うーん... – user1872384
そこにいるUIコードを動作しません含まれています...ので、私は実際に実行することはできませんそれは例えばバックグラウンドでself.webview = [[UIWebView alloc] initWithFrame:self.view.frame]; – user1872384