Page objects
Foxit PDF SDK for iOS provides graphics object APIs via Core SDK to add, modify, and remove text, image, and path objects on pages.
Core classes
| Class | Description |
|---|---|
FSGraphicsObjects | Page graphics collection from [FSPDFPage getGraphicsObjects] |
FSGraphicsObject | Graphics object base class |
FSTextObject | Text object |
FSImageObject | Image object from bitmap or image |
FSPathObject | Path object for custom shapes |
Example: add a text object
objc
#import <FoxitRDK/FSPDFObjC.h>
FSPDFDoc *doc = [[FSPDFDoc alloc] initWithPath:@"path/to/Sample.pdf"];
[doc load:nil];
FSPDFPage *page = [doc getPage:0];
[page startParse:FSPDFPageParsePageNormal pause:nil is_reparse:NO];
// Create text object
FSTextObject *textObj = [FSTextObject create];
// Text
[textObj setText:@"Hello, Foxit!"];
// Font and style
FSTextState *textState = [[FSTextState alloc] init];
[textState setFont:[[FSFont alloc] initWithStandard_id:FSFontStdIDHelvetica]];
[textState setFont_size:24.0f];
[textState setTextcolor:0xFF000000];
[textObj setTextState:page text_state:textState is_italic:NO weight:400];
// Position
FSMatrix2D *matrix = [[FSMatrix2D alloc] initWithA1:1 b1:0 c1:0 d1:1 e1:100 f1:700];
[textObj setMatrix:matrix];
// Add to page
FSGraphicsObjects *graphicsObjects = [page getGraphicsObjects];
[graphicsObjects insertObject:FSGraphicsObject.e_TypeText index:-1 graphics_object:textObj];
[page generateContent];
[doc saveAs:@"path/to/output.pdf" saveFlags:FSPDFDocSaveFlagNormal];Example: add an image object
objc
// Create image object
FSImageObject *imageObj = [FSImageObject create:doc];
// Load image
FSImage *image = [[FSImage alloc] initWithPath:@"path/to/image.png"];
[imageObj setImage:image frame_index:0];
// Position and size
FSMatrix2D *matrix = [[FSMatrix2D alloc] initWithA1:200 b1:0 c1:0 d1:200 e1:100 f1:400];
[imageObj setMatrix:matrix];
// Add to page
FSGraphicsObjects *graphicsObjects = [page getGraphicsObjects];
[graphicsObjects insertObject:FSGraphicsObject.e_TypeImage index:-1 graphics_object:imageObj];
[page generateContent];
[doc saveAs:@"path/to/output.pdf" saveFlags:FSPDFDocSaveFlagNormal];API reference
See the API reference for FSTextObject, FSImageObject, FSPathObject, and FSGraphicsObjects.