2012-01-12 10 views

Respuesta

10

Si tiene UIImageView en UIViewController luego llamar a este método:

-(NSData*)makePDFfromView:(UIView*)view 
{ 
    NSMutableData *pdfData = [NSMutableData data]; 

    UIGraphicsBeginPDFContextToData(pdfData, view.bounds, nil); 
    UIGraphicsBeginPDFPage(); 
    CGContextRef pdfContext = UIGraphicsGetCurrentContext(); 
    [view.layer renderInContext:pdfContext]; 
    UIGraphicsEndPDFContext(); 

    return pdfData; 
} 

uso como esto:

NSData *pdfData = [self makePDFfromView:imgView]; 
//[pdfData writeToFile:@"myPdf.pdf" atomically:YES]; - save it to a file 
9

No es muy difícil, pero hay algunos pasos para configurar todo. Básicamente, debe crear un contexto de gráficos PDF y luego dibujar con comandos de dibujo estándar. Simplemente poner un UIImage en un PDF, se podría hacer algo como lo siguiente:

// assume this exists and is in some writable place, like Documents 
NSString* pdfFilename = /* some pathname */ 

// Create the PDF context 
UIGraphicsBeginPDFContextToFile(pdfFilename, CGRectZero, nil); // default page size 
UIGraphicsBeginPDFPageWithInfo(CGRectZero, nil); 

// Draw the UIImage -- I think PDF contexts are flipped, so you may have to 
// set a transform -- see the documentation link below if your image draws 
// upside down 
[theImage drawAtPoint:CGPointZero]; 

// Ending the context will automatically save the PDF file to the filename 
UIGraphicsEndPDFContext(); 

Para obtener más información, consulte la Drawing and Printing Guide for iOS.

Cuestiones relacionadas