How can I use the PoDoFo library for annotating PDFs on iOS?

前端 未结 2 1745
我在风中等你
我在风中等你 2021-01-06 02:57

I would like to annotate PDFs within an iOS application. I came across the PoDoFo library, but I\'m not sure how to use this in an iOS application.

Is it possible t

2条回答
  •  梦毁少年i
    2021-01-06 03:42

    Please do something like this.

    + (void)createUTFAnnotationTextOnPage:(NSInteger)pageIndex 
                                      doc:(PdfDocument*)doc   // PdfMemDocument instance
                                     rect:(PdfRect)rect 
                                    title:(NSString*)title 
                                  content:(NSString*)content
                                    bOpen:(Boolean)bOpen
                                   colorR:(double)r 
                                   colorG:(double)g 
                                   colorB:(double)b {
        PdfPage* pPage = doc->GetPage(pageIndex);
        if (! pPage) {
            // couldn't get that page
            return;
        }
        PdfAnnotation* anno;
    
        anno = pPage->CreateAnnotation(ePdfAnnotation_Text, rect);
    
        PdfString sTitle(reinterpret_cast([title UTF8String]));
        PdfString sContent(reinterpret_cast([content UTF8String]));
    
        anno->SetTitle(sTitle);
        anno->SetContents(sContent);
        anno->SetColor(r, g, b);
        anno->SetOpen(bOpen);
    }
    
    // ----------- 
        PdfError::EnableDebug(false);   // or true
        NSString* inFile = [[NSBundle mainBundle] pathForResource:@"forTesting.pdf" ofType:nil];
        PoDoFo::PdfMemDocument doc( [inFile UTF8String] );
        [YourPodofoObj createUTFAnnotationTextOnPage:0 doc:&doc rect:PdfRect(50, 50, 50, 50) title:@"author by XX" content:@"I use it for test" bOpen:true colorR:1.0 colorG:.0 colorB:.0];
        doc.Write(OUT_PUT_PATH);
    

提交回复
热议问题