me ios.html,GitHub - iclems/iOS-htmltopdf

iOS-htmltopdf

e296e2027ce540924771a6ada6571cb4.png

This class enables simple URL-based PDF creation. Pages are created the exact same way they would be if the user printed the content on an iOS device (very similar as well as OS X print output).

Example code:

self.PDFCreator = [NDHTMLtoPDF createPDFWithURL:

[NSURL URLWithString:@"http://url.com"]

pathForPDF:[@"~/Documents/demo.pdf" stringByExpandingTildeInPath]

delegate:self

pageSize:kPaperSizeA4

margins:UIEdgeInsetsMake(10, 5, 10, 5)];

or using block syntax

self.PDFCreator = [NDHTMLtoPDF createPDFWithURL:[NSURL URLWithString:@"http:/url.com"]

pathForPDF:[@"~/Documents/blocksDemo.pdf" stringByExpandingTildeInPath]

pageSize:kPaperSizeA4 margins:UIEdgeInsetsMake(10, 5, 10, 5)

successBlock:^(NDHTMLtoPDF *htmlToPDF) {

NSLog(@"HTMLtoPDF did succeed (%@ / %@)", htmlToPDF, htmlToPDF.PDFpath);

} errorBlock:^(NDHTMLtoPDF *htmlToPDF) {

NSLog(@"HTMLtoPDF did fail (%@)", htmlToPDF);

}];

You can also use the alternative following code to generate PDF directly from HTML string, without using an URL. This is useful if you want your PDF generator to work offline or if you don't want to write first your code into a local file (you can then use NSURL with a local file through fileURLWithPath:) :

+ (id)createPDFWithHTML:(NSString*)HTML pathForPDF:(NSString*)PDFpath delegate:(id )delegate pageSize:(CGSize)pageSize margins:(UIEdgeInsets)pageMargins;

+ (id)createPDFWithHTML:(NSString*)HTML baseURL:(NSURL*)baseURL pathForPDF:(NSString*)PDFpath delegate:(id )delegate pageSize:(CGSize)pageSize margins:(UIEdgeInsets)pageMargins;

+ (id)createPDFWithHTML:(NSString*)HTML pathForPDF:(NSString*)PDFpath pageSize:(CGSize)pageSize margins:(UIEdgeInsets)pageMargins successBlock:(NDHTMLtoPDFCompletionBlock)successBlock errorBlock:(NDHTMLtoPDFCompletionBlock)errorBlock;

+ (id)createPDFWithHTML:(NSString*)HTML baseURL:(NSURL*)baseURL pathForPDF:(NSString*)PDFpath pageSize:(CGSize)pageSize margins:(UIEdgeInsets)pageMargins successBlock:(NDHTMLtoPDFCompletionBlock)successBlock errorBlock:(NDHTMLtoPDFCompletionBlock)errorBlock;

A paper size is only defined by a rect (e.g. kPaperSizeA4 = CGSizeMake(595.2,841.8)).

Please, be sure to create a property (e.g. PDFCreator) as NDHTMLtoPDF works asynchronously using UIWebView.

Feel free to contact me if you have any question !

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值