2014-02-11 5 views
1

Я слияние 2 PDF с использованием https://stackoverflow.com/a/15431035/2745211. Теперь мне нужно добавить номер страницы в конце. Я пробовал следующие методы в https://developer.apple.com/library/ios/documentation/2DDrawing/Conceptual/DrawingPrintingiOS/GeneratingPDF/GeneratingPDF.html, но это не помогло.Добавление номеров страниц в объединенном PDF

Любые идеи/образец кода будут очень полезны.

ответ

1

мне удалось напечатать PDF страницы:

// Number of pages 
NSInteger numberOfPages1 = CGPDFDocumentGetNumberOfPages(pdfRef1); 
NSInteger numberOfPages2 = CGPDFDocumentGetNumberOfPages(pdfRef2); 
int totalNumberofPages = numberOfPages1 + numberOfPages2; 
// Create the output context 
CGContextRef writeContext = CGPDFContextCreateWithURL(pdfURLOutput, NULL, NULL); 

// Loop variables 
CGPDFPageRef page; 
CGRect mediaBox; 

// Read the first PDF and generate the output pages 
NSLog(@"GENERATING PAGES FROM PDF 1 (%i)...", numberOfPages1); 
for (int i=1; i<=numberOfPages1; i++) { 
    UIImage *pageNoImage = [self drawPageNumber:[NSString stringWithFormat:@"Page %d of %d",i,totalNumberofPages]]; 
    page = CGPDFDocumentGetPage(pdfRef1, i); 
    mediaBox = CGPDFPageGetBoxRect(page, kCGPDFMediaBox); 
    CGContextBeginPage(writeContext, &mediaBox); 
    CGContextDrawPDFPage(writeContext, page); 
    CGContextDrawImage(writeContext, CGRectMake (490, 70, 80, 20), pageNoImage.CGImage); 
    CGContextEndPage(writeContext); 
} 


// Read the second PDF and generate the output pages 
NSLog(@"GENERATING PAGES FROM PDF 2 (%i)...", numberOfPages2); 
for (int i=1; i<=numberOfPages2; i++) { 
     UIImage *pageNoImage = [self drawPageNumber:[NSString stringWithFormat:@"Page %d of %d",(i+numberOfPages1),totalNumberofPages]]; 
    page = CGPDFDocumentGetPage(pdfRef2, i); 
    mediaBox = CGPDFPageGetBoxRect(page, kCGPDFMediaBox); 
    CGContextBeginPage(writeContext, &mediaBox); 
    CGContextDrawPDFPage(writeContext, page); 
    CGContextDrawImage(writeContext, CGRectMake (490, 70, 80, 20), pageNoImage.CGImage); 
    CGContextEndPage(writeContext); 
} 
NSLog(@"DONE!"); 

// Finalize the output file 
CGPDFContextClose(writeContext); 
Смежные вопросы