2

I have created PDF from UIWebView like this :

UIPrintPageRenderer *render = [[UIPrintPageRenderer alloc] init];

[render addPrintFormatter:_webView.viewPrintFormatter startingAtPageAtIndex:0];

CGRect printableRect;
CGRect paperRect;
printableRect = CGRectMake(10, 5, kPaperSizeA4.width-20, kPaperSizeA4.height-10);
paperRect = CGRectMake(0, 0, kPaperSizeA4.width, kPaperSizeA4.height);
[render setValue:[NSValue valueWithCGRect:paperRect] forKey:@"paperRect"];
[render setValue:[NSValue valueWithCGRect:printableRect] forKey:@"printableRect"];

NSData *pdfData = [render printToPDF];
if (pdfData) {
     BOOL isSuccess = [pdfData writeToFile:aStrDocDirPath atomically:YES];
     if (isSuccess)
     {
         NSLog(@"Created and Saved");
     }
}

Now problem its add blank page in created PDF.

I refered Extra blank page when converting HTML to PDF using abcPDF. But in iOS how can we get rid of it???

Community
  • 1
  • 1
Paresh Navadiya
  • 38,095
  • 11
  • 81
  • 132

2 Answers2

4

Changes accordingly:

Firstly A4 size was this:

#define kPaperSizeA4 CGSizeMake(595,842)

Changed it to :

#define kPaperSizeA4 CGSizeMake(595.2,841.8)

Now increased page margin of content in PDF :

printableRect = CGRectMake(10, 18, kPaperSizeA4.width-20, kPaperSizeA4.height-36);

Refer for more Avoid extra blank page (with A4, in some unexpected cases

Paresh Navadiya
  • 38,095
  • 11
  • 81
  • 132
0

I got extra blank first page problem also when converting HTML to PDF. I was using FlyingSaucer for HTML to PDF conversion.

I had this CSS definition on my HTML:

@page Section1{
  size: 612.45pt 841.7pt;
}

div.Section1 {
  page: Section1;
}

The extra page was removed when I modified my CSS definition into:

@page {
      size: 612.45pt 841.7pt;
}