20 #ifndef __EMSCRIPTEN_RENDER__ 25 #ifndef __EMSCRIPTEN_RENDER__ 70 typedef enum _TextMergeOption {
418 typedef enum _ParseFlags {
430 typedef enum _CalcMarginMode {
442 typedef enum _FlattenOptions {
456 typedef enum _BoxType {
587 bool is_reparse =
false);
658 #ifndef __EMSCRIPTEN_RENDER__ 956 #ifndef __EMSCRIPTEN_RENDER__ 1099 void SetSize(
float width,
float height);
1175 bool Transform(
const Matrix& matrix,
bool need_transform_clip_path,
bool need_transform_annotations =
false);
1337 bool auto_generate_content =
true);
1360 bool auto_generate_content =
true);
1383 bool auto_generate_content =
true);
1482 #endif // FS_PDFPAGE_H_ Definition: fs_pdfgraphicsobject.h:241
annots::Annot AddAnnot(annots::Annot::Type type, const RectF &rect)
Add an annotation to current PDF page.
Definition: fs_pdfobject.h:416
Definition: fs_pdfpage.h:63
virtual ~PDFPage()
Destructor.
bool AddImageFromFilePath(const char *file_path, const PointF &position, float width, float height, bool auto_generate_content=true)
Add an image to current page from file path.
void SetUserUnitSize(float user_unit)
Set the user unit.
Definition: fs_annot.h:202
Definition: fs_image.h:36
POSITION GetLastGraphicsObjectPosition(graphics::GraphicsObject::Type filter=graphics::GraphicsObject::e_TypeAll) const
Get the position of last graphics object in graphics object list, based on type filter.
ParseFlags
Enumeration for parsing flags used for PDF page.
Definition: fs_pdfpage.h:418
RectF GetSuggestedRect(const common::Bitmap &render_result, const Matrix &render_matrix, const PointF &point) const
Get the suggested rectangle (in PDF coordinate system) for a point (in PDF coordinate system) based o...
virtual ~GraphicsObjects()
Destructor.
Page size: A5.
Definition: fs_pdfpage.h:501
bool GenerateContent()
Generate contents of current graphics objects.
Type
Enumeration for PDF graphics object type.
Definition: fs_pdfgraphicsobject.h:378
float GetUserUnitSize() const
Get the user unit.
Definition: fs_annot.h:1589
graphics::GraphicsObjectArray GetGraphicsObjectsAtPoint(const PointF &point, float tolerance, graphics::GraphicsObject::Type filter=graphics::GraphicsObject::e_TypeAll)
Get all the graphics objects in specified point, with specified type filter.
bool RemoveGraphicsObject(graphics::GraphicsObject *graphics_object)
Remove a graphics object.
common::Bitmap LoadThumbnail()
Load the thumbnail bitmap.
objects::PDFDictionary * GetResources() const
Get the PDF dictionary of "Resources".
void MoveAnnotToPrev(const annots::Annot &annot)
Exchange the indexes of current annotation and its previous annotation.
Crop Box for page boundary.
Definition: fs_pdfpage.h:466
Merge consecutive text-showing operators with equal y coordinates.
Definition: fs_pdfpage.h:76
Definition: fx_coordinates.h:30
bool Flatten(bool for_display, uint32 options=PDFPage::e_FlattenAll)
Flatten current PDF page: annotations or form fields may be made to be a part of the page contents ac...
Type
Enumeration for PDF annotation type.
Definition: fs_annot.h:971
int GetGraphicsObjectCount() const
Get the count of graphics objects in graphics object list.
void SetThumbnail(const common::Bitmap &thumbnail)
Set page thumbnail.
float GetHeight() const
Get the page height.
Bleed Box for page boundary.
Definition: fs_pdfpage.h:481
POSITION InsertGraphicsObject(POSITION position_insert_after, graphics::GraphicsObject *graphics_object)
Insert a graphics object after the specified position.
WIDE STRING CLASS.
Definition: fx_string.h:1452
void UpdateAnnotList()
Update the annotation list.
Flatten a PDF page without form controls.
Definition: fs_pdfpage.h:448
Calculate margin by detecting paths or images.
Definition: fs_pdfpage.h:434
SignatureType
Enumeration for signature type.
Definition: fs_signature.h:239
graphics::GraphicsObject * GetGraphicsObjectAtDevicePoint(const PointF &point, float tolerance, const Matrix *matrix, graphics::GraphicsObject::Type filter=graphics::GraphicsObject::e_TypeAll) const
Get the topmost graphics object in specified point in device coordinate system, with specified type f...
objects::PDFObject * GetContents() const
Get the PDF object of "Contents".
BoxType
Enumeration for page box type.
Definition: fs_pdfpage.h:456
Definition: fs_pdfdoc.h:508
void SetRotation(common::Rotation rotate)
Set page rotation.
bool Transform(const Matrix &matrix, bool need_transform_clip_path, bool need_transform_annotations=false)
Transform a PDF page, including annotations and form fields on the page.
bool HasWatermark()
Check whether the current page has any watermark (not including Foxit PDF SDK trial watermark).
Page size: A4.
Definition: fs_pdfpage.h:499
POSITION GetGraphicsObjectPosition(graphics::GraphicsObject *graphics_object)
Get the position of the specified graphics object.
GraphicsObjects & operator=(const GraphicsObjects &other)
Assign operator.
Matrix GetDisplayMatrix(int left, int top, int width, int height, common::Rotation rotate)
Get the display matrix of PDF page, from PDF coordinate system to targeted device coordinate system.
bool operator!=(const GraphicsObjects &other) const
Not equal operator.
Header file for image and bitmap related definitions and classes.
Represents all graphics object types, only used as filter.
Definition: fs_pdfgraphicsobject.h:380
Header file for PDF siganture related definitions and classes.
PDFPage(const PDFDoc &document, objects::PDFDictionary *page_dict)
Constructor, from a PDF dictionary which represents a PDF page and the PDF document which contains th...
Media Box for page boundary.
Definition: fs_pdfpage.h:461
PDFDoc GetDocument() const
Get the PDF document, to which current PDF page belongs.
RectF CalcContentBBox(CalcMarginMode mode)
Calculate the content area of PDF page.
int GetIndex() const
Get page index.
bool IsParsed() const
Check if current page has been parsed or not.
Trim Box for page boundary.
Definition: fs_pdfpage.h:471
FlattenOptions
Enumeration for flatten options.
Definition: fs_pdfpage.h:442
bool RemoveAnnot(const annots::Annot &annot)
Remove an annotation.
annots::Annot GetAnnotAtPoint(const PointF &position, float tolerance)
Get the annotation at a specified position, in PDF coordinate system.
RectF GetBox(BoxType box_type)
Get page box.
Page size: B4.
Definition: fs_pdfpage.h:509
int GetAnnotCount()
Get the count of annotations.
bool HasTransparency()
Check whether current PDF page has transparency or not.
objects::PDFStream * GetThumb() const
Get the PDF stream of "Thumb".
bool SetAnnotGroup(const annots::MarkupArray &annot_array, int header_index)
Group all the input markup annotations together.
Header file for annotation related definitions and classes.
float GetWidth() const
Get the page width.
Page size: A2.
Definition: fs_pdfpage.h:495
annots::Annot GetAnnotAtDevicePoint(const PointF &position, float tolerance, const Matrix *matrix=0)
Get the annotation at a specified position, in device coordinate system.
annots::AnnotArray GetAnnotsAtPoint(const PointF &position, float tolerance)
Get all the annotations at a specified position, in PDF coordinate system.
Size
Enumeration for page size type.
Definition: fs_pdfpage.h:489
Definition: fx_basic.h:3761
No text merge.
Definition: fs_pdfpage.h:72
foxit::pdf::Signature AddSignature(const foxit::RectF &rect)
Add an ordinary signature to PDF page.
Page size: A6.
Definition: fs_pdfpage.h:503
FX_POSITION POSITION
A value used to denote the position of an element in a collection.
Definition: fs_basictypes.h:206
Page size: B5.
Definition: fs_pdfpage.h:511
Page size: B3.
Definition: fs_pdfpage.h:507
Definition: fs_common.h:336
Art Box for page boundary.
Definition: fs_pdfpage.h:476
Definition: fx_basic.h:1297
annots::AnnotArray GetAnnotsAtDevicePoint(const PointF &position, float tolerance, const Matrix *matrix=0)
Get all the annotations at a specified position, in device coordinate system.
bool RemoveAllWatermarks()
Remove all watermarks.
FX_UINT32 uint32
32-bit unsigned integer.
Definition: fs_basictypes.h:196
bool FlattenAnnot(annots::Annot annot)
Flatten an annotation: the annotation is made to be a part of the page contents and be removed then.
POSITION GetFirstGraphicsObjectPosition(graphics::GraphicsObject::Type filter=graphics::GraphicsObject::e_TypeAll) const
Get the position of first graphics object in graphics object list, based on type filter.
Definition: fs_pdfpage.h:411
void * FS_HANDLE
Handle type.
Definition: fs_basictypes.h:214
Header file for common definitions and classes.
common::Rotation GetRotation() const
Get the page rotation.
Parsing flag for normal mode, which means to parse all the contents in a PDF page.
Definition: fs_pdfpage.h:420
Definition: fs_annot.h:1800
objects::PDFArray * GetAnnots() const
Get the PDF array of "Annots".
void MoveAnnotToLast(const annots::Annot &annot)
Change specified annotation to be the last one of all annotations.
graphics::GraphicsObjectArray GetGraphicsObjectsAtRectangle(const RectF &rect, graphics::GraphicsObject::Type filter=graphics::GraphicsObject::e_TypeAll)
Get all the graphics objects whose rectangles intersect with a specified rectangle,...
Header file for PDF object related definitions and classes.
Definition: fs_basictypes.h:407
graphics::GraphicsObjectArray GetGraphicsObjectsAtDevicePoint(const PointF &point, float tolerance, const Matrix *matrix, graphics::GraphicsObject::Type filter=graphics::GraphicsObject::e_TypeAll)
Get all the graphics objects in specified point in device coordinate system, with specified type filt...
bool RemoveGraphicsObjectByPosition(POSITION position)
Remove a graphics object by position.
common::Progressive StartParse(uint32 flags=PDFPage::e_ParsePageNormal, common::PauseCallback *pause=0, bool is_reparse=false)
Start to parse current page.
bool Normalize()
Transform current PDF page by undoing any rotation and removing the offset to the page's "CropBox".
graphics::GraphicsObject * GetGraphicsObjectAtPoint(const PointF &point, float tolerance, graphics::GraphicsObject::Type filter=graphics::GraphicsObject::e_TypeAll) const
Get the topmost graphics object in specified point, with specified type filter.
TextMergeOption
Enumeration for text merge.
Definition: fs_pdfpage.h:70
Flatten all contents of a PDF page.
Definition: fs_pdfpage.h:444
Definition: fs_annot.h:964
annots::Annot GetAnnot(int index)
Get an annotation by index.
Flatten a PDF page without annotations.
Definition: fs_pdfpage.h:446
Definition: fs_pdfobject.h:800
CalcMarginMode
Enumeration for calculating margin mode.
Definition: fs_pdfpage.h:430
void ClearRenderCache()
Clear render cache.
bool operator==(const GraphicsObjects &other) const
Equal operator.
Rotation
Enumeration for rotation.
Definition: fs_common.h:57
void MoveAnnotToNext(const annots::Annot &annot)
Exchange the indexes of current annotation and its next annotation.
Foxit namespace.
Definition: fs_taggedpdf.h:27
Definition: fs_pdfobject.h:55
int GetGraphicsObjectIndex(graphics::GraphicsObject *graphics_object) const
Get the index of a specified graphics object in graphics object list.
void SetSize(float width, float height)
Set page width and height.
void MoveAnnotToFirst(const annots::Annot &annot)
Change specified annotation to be the first one of all annotations.
POSITION GetPrevGraphicsObjectPosition(POSITION position, graphics::GraphicsObject::Type filter=graphics::GraphicsObject::e_TypeAll) const
Get the position of previous graphics object in graphics object list, based on type filter and specif...
Page size: B2.
Definition: fs_pdfpage.h:505
objects::PDFObject * GetInheritedAttribute(const char *attruibute_name) const
Get the PDF object for specified attribute which may be inherited from the ancestor node in the page ...
graphics::GraphicsObject * GetGraphicsObjectAtRectangle(const RectF &rect, graphics::GraphicsObject::Type filter=graphics::GraphicsObject::e_TypeAll) const
Get the topmost graphics object whose rectangle interasects with a specified rectangle,...
Page size: A3.
Definition: fs_pdfpage.h:497
#define NULL
The null-pointer value.
Definition: fx_system.h:780
Definition: fs_signature.h:93
Header file for PDF graphics object related definitions and classes.
Definition: fx_coordinates.h:1076
Parsing flag for text-only mode.
Definition: fs_pdfpage.h:422
Merge consecutive BTETs as a new one.
Definition: fs_pdfpage.h:83
Page size: letter.
Definition: fs_pdfpage.h:491
Page size: B6.
Definition: fs_pdfpage.h:513
graphics::GraphicsObject * GetGraphicsObject(POSITION position) const
Get the graphics object by position in graphics object list.
POSITION MoveGraphicsObjectByPosition(POSITION current_position, POSITION position_move_after)
Move a graphics object from a position to another position.
Definition: fs_pdfobject.h:608
void SetClipRect(const RectF &clip_rect)
Set clip rectangle for all graphics objects on current PDF page.
void SetBox(BoxType box_type, const RectF &box)
Set page box.
Definition: fs_image.h:445
POSITION GetNextGraphicsObjectPosition(POSITION position, graphics::GraphicsObject::Type filter=graphics::GraphicsObject::e_TypeAll) const
Get the position of next graphics object in graphics object list, based on type filter and specified ...
objects::PDFDictionary * GetDict() const
Get the page dictionary.
bool AddText(const wchar_t *text, const foxit::RectF &rect, const foxit::pdf::RichTextStyle &style)
Add text to current page.
Page size: legal.
Definition: fs_pdfpage.h:493
bool AddImage(const common::Image &image, int frame_index, const PointF &position, float width, float height, bool auto_generate_content=true)
Add an image to current page.
Definition: fx_coordinates.h:771
Calculate margin according to bounding box of all contents.
Definition: fs_pdfpage.h:432
bool IsEmpty() const
Check whether current object is empty or not.