fpdf_annot_r.h
Go to the documentation of this file.
1 
48 #ifndef _FSPDF_ANNOT_R_H_
49 #define _FSPDF_ANNOT_R_H_
50 
86 #ifdef __cplusplus
87 extern "C" {
88 #endif
89 
90 /*******************************************************************************/
91 /* Load or unload annotations from page */
92 /*******************************************************************************/
120 FS_RESULT FSPDF_Page_LoadAnnots(FSCRT_PAGE page);
121 
145 FS_RESULT FSPDF_Page_UnloadAnnots(FSCRT_PAGE page);
146 
147 /*******************************************************************************/
148 /* Enumerate annotation types */
149 /*******************************************************************************/
150 #ifndef _FSPDF_DEF_MACRO_ANNOTTYPE_
151 #define _FSPDF_DEF_MACRO_ANNOTTYPE_
152 
159 #define FSPDF_ANNOTTYPE_TEXT "Text"
160 
161 #define FSPDF_ANNOTTYPE_LINK "Link"
162 
163 #define FSPDF_ANNOTTYPE_FREETEXT "FreeText"
164 
165 #define FSPDF_ANNOTTYPE_LINE "Line"
166 
167 #define FSPDF_ANNOTTYPE_SQUARE "Square"
168 
169 #define FSPDF_ANNOTTYPE_CIRCLE "Circle"
170 
171 #define FSPDF_ANNOTTYPE_POLYGON "Polygon"
172 
173 #define FSPDF_ANNOTTYPE_POLYLINE "PolyLine"
174 
175 #define FSPDF_ANNOTTYPE_HIGHLIGHT "Highlight"
176 
177 #define FSPDF_ANNOTTYPE_UNDERLINE "Underline"
178 
179 #define FSPDF_ANNOTTYPE_SQUIGGLY "Squiggly"
180 
181 #define FSPDF_ANNOTTYPE_STRIKEOUT "StrikeOut"
182 
183 #define FSPDF_ANNOTTYPE_STAMP "Stamp"
184 
185 #define FSPDF_ANNOTTYPE_CARET "Caret"
186 
187 #define FSPDF_ANNOTTYPE_INK "Ink"
188 
189 #define FSPDF_ANNOTTYPE_POPUP "Popup"
190 
191 #define FSPDF_ANNOTTYPE_FILEATTACHMENT "FileAttachment"
192 
193 #define FSPDF_ANNOTTYPE_REDACT "Redact"
194 
198 #define FSPDF_ANNOTTYPE_SOUND "Sound"
199 
203 #define FSPDF_ANNOTTYPE_MOVIE "Movie"
204 
209 #define FSPDF_ANNOTTYPE_WIDGET "Widget"
210 
214 #define FSPDF_ANNOTTYPE_SCREEN "Screen"
215 
219 #define FSPDF_ANNOTTYPE_PRINTERMARK "PrinterMark"
220 
224 #define FSPDF_ANNOTTYPE_TRAPNET "TrapNet"
225 
230 #define FSPDF_ANNOTTYPE_WATERMARK "Watermark"
231 
236 #define FSPDF_ANNOTTYPE_PSI "PSInk"
237 
241 #define FSPDF_ANNOTTYPE_3D "3D"
242 
244 #endif /* _FSPDF_DEF_MACRO_ANNOTTYPE_ */
245 
280 FS_RESULT FSPDF_Annot_GetCount(FSCRT_PAGE page, const FSCRT_BSTR* filter, FS_INT32* count);
281 
319 FS_RESULT FSPDF_Annot_Get(FSCRT_PAGE page, const FSCRT_BSTR* filter, FS_INT32 index, FSCRT_ANNOT* annot);
320 
361 FS_RESULT FSPDF_Annot_GetAtPos(FSCRT_PAGE page, const FSCRT_BSTR* filter, FS_FLOAT x, FS_FLOAT y, FS_FLOAT tolerance, FSCRT_ANNOT* annot);
362 
404 FS_RESULT FSPDF_Annot_GetAtDevicePos(FSCRT_PAGE page, const FSCRT_BSTR* filter, const FSCRT_MATRIX* matrix, FS_INT32 x, FS_INT32 y, FS_INT32 tolerance, FSCRT_ANNOT* annot);
405 
438 FS_RESULT FSPDF_Annot_GetIndex(FSCRT_ANNOT annot, const FSCRT_BSTR* filter, FS_INT32* index);
439 
487 FS_RESULT FSPDF_Annot_GetAllByTabOrder(FSCRT_PAGE page, const FSCRT_BSTR* filter, FSCRT_ANNOT* annotArray, FS_INT32* count);
488 
489 /*******************************************************************************/
490 /* Annotation common properties */
491 /*******************************************************************************/
492 #ifndef _FSPDF_DEF_MACRO_ANNOTFLAG_
493 #define _FSPDF_DEF_MACRO_ANNOTFLAG_
494 
500 #define FSPDF_ANNOTFLAG_INVISIBLE 0x0001
501 
502 #define FSPDF_ANNOTFLAG_HIDDEN 0x0002
503 
504 #define FSPDF_ANNOTFLAG_PRINT 0x0004
505 
506 #define FSPDF_ANNOTFLAG_NOZOOM 0x0008
507 
508 #define FSPDF_ANNOTFLAG_NOROTATE 0x0010
509 
510 #define FSPDF_ANNOTFLAG_NOVIEW 0x0020
511 
512 #define FSPDF_ANNOTFLAG_READONLY 0x0040
513 
514 #define FSPDF_ANNOTFLAG_LOCKED 0x0080
515 
516 #define FSPDF_ANNOTFLAG_TOGGLENOVIEW 0x0100
517 
518 #define FSPDF_ANNOTFLAG_LOCKEDCONTENTS 0x0200
519 
521 #endif /* _FSPDF_DEF_MACRO_ANNOTFLAG_ */
522 
523 #ifndef _FSPDF_DEF_MACRO_ANNOT_ICONNAME_
524 #define _FSPDF_DEF_MACRO_ANNOT_ICONNAME_
525 
530 #define FSPDF_ANNOT_ICONNAME_TEXT_CHECK "Check"
531 
532 #define FSPDF_ANNOT_ICONNAME_TEXT_CIRCLE "Circle"
533 
534 #define FSPDF_ANNOT_ICONNAME_TEXT_COMMENT "Comment"
535 
536 #define FSPDF_ANNOT_ICONNAME_TEXT_CROSS "Cross"
537 
538 #define FSPDF_ANNOT_ICONNAME_TEXT_HELP "Help"
539 
540 #define FSPDF_ANNOT_ICONNAME_TEXT_INSERT "Insert"
541 
542 #define FSPDF_ANNOT_ICONNAME_TEXT_KEY "Key"
543 
544 #define FSPDF_ANNOT_ICONNAME_TEXT_NEWPARAGRAPH "NewParagraph"
545 
546 #define FSPDF_ANNOT_ICONNAME_TEXT_NOTE "Note"
547 
548 #define FSPDF_ANNOT_ICONNAME_TEXT_PARAGRAPH "Paragraph"
549 
550 #define FSPDF_ANNOT_ICONNAME_TEXT_RIGHARROW "RightArrow"
551 
552 #define FSPDF_ANNOT_ICONNAME_TEXT_RIGHPOINTER "RightPointer"
553 
554 #define FSPDF_ANNOT_ICONNAME_TEXT_STAR "Star"
555 
556 #define FSPDF_ANNOT_ICONNAME_TEXT_UPARROW "UpArrow"
557 
558 #define FSPDF_ANNOT_ICONNAME_TEXT_UPLEFTARROW "UpleftArrow"
559 
561 #define FSPDF_ANNOT_ICONNAME_FILEATTACH_GRAPH "Graph"
562 
563 #define FSPDF_ANNOT_ICONNAME_FILEATTACH_PAPERCLIP "Paperclip"
564 
565 #define FSPDF_ANNOT_ICONNAME_FILEATTACH_PUSHPIN "PushPin"
566 
567 #define FSPDF_ANNOT_ICONNAME_FILEATTACH_TAG "Tag"
568 
570 #define FSPDF_ANNOT_ICONNAME_STAMP_APPROVED "Approved"
571 
572 #define FSPDF_ANNOT_ICONNAME_STAMP_ASIS "AsIs"
573 
574 #define FSPDF_ANNOT_ICONNAME_STAMP_CONFIDENTIAL "Confidential"
575 
576 #define FSPDF_ANNOT_ICONNAME_STAMP_DEPARTMENTAL "Departmental"
577 
578 #define FSPDF_ANNOT_ICONNAME_STAMP_DRAFT "Draft"
579 
580 #define FSPDF_ANNOT_ICONNAME_STAMP_EXPERIMENTAL "Experimental"
581 
582 #define FSPDF_ANNOT_ICONNAME_STAMP_EXPIRED "Expired"
583 
584 #define FSPDF_ANNOT_ICONNAME_STAMP_FINAL "Final"
585 
586 #define FSPDF_ANNOT_ICONNAME_STAMP_FORCOMMENT "ForComment"
587 
588 #define FSPDF_ANNOT_ICONNAME_STAMP_FORPUBLICRELEASE "ForPublicRelease"
589 
590 #define FSPDF_ANNOT_ICONNAME_STAMP_NOTAPPROVED "NotApproved"
591 
592 #define FSPDF_ANNOT_ICONNAME_STAMP_NOTFORPUBLICRELEASE "NotForPublicRelease"
593 
594 #define FSPDF_ANNOT_ICONNAME_STAMP_SOLD "Sold"
595 
596 #define FSPDF_ANNOT_ICONNAME_STAMP_TOPSECRET "TopSecret"
597 
599 #define FSPDF_ANNOT_ICONNAME_SOUND_SPEAKER "Speaker"
600 
601 #define FSPDF_ANNOT_ICONNAME_SOUND_MIC "Mic"
602 
604 #endif /* _FSPDF_DEF_MACRO_ANNOT_ICONNAME_ */
605 
606 #ifndef _FSPDF_DEF_MACRO_ANNOT_INTENTNAME_
607 #define _FSPDF_DEF_MACRO_ANNOT_INTENTNAME_
608 
614 #define FSPDF_ANNOT_INTENTNAME_FREETEXT_CALLOUT "FreeTextCallout"
615 
616 #define FSPDF_ANNOT_INTENTNAME_FREETEXT_TYPEWRITER "FreeTextTypewriter"
617 
619 #define FSPDF_ANNOT_INTENTNAME_LINE_ARROW "LineArrow"
620 
621 #define FSPDF_ANNOT_INTENTNAME_LINE_DIMENSION "LineDimension"
622 
624 #define FSPDF_ANNOT_INTENTNAME_POLYGON_CLOUD "PolygonCloud"
625 
626 #define FSPDF_ANNOT_INTENTNAME_POLYGON_DIMENSION "PolygonDimension"
627 
629 #define FSPDF_ANNOT_INTENTNAME_POLYLINE_DIMENSION "PolyLineDimension"
630 
632 #endif /* _FSPDF_DEF_MACRO_ANNOT_INTENTNAME_ */
633 
634 #ifndef _FSPDF_DEF_MACRO_ANNOT_LINEENDINGSTYLE_
635 #define _FSPDF_DEF_MACRO_ANNOT_LINEENDINGSTYLE_
636 
642 #define FSPDF_ANNOT_LINEENDINGSTYLE_NONE "None"
643 
644 #define FSPDF_ANNOT_LINEENDINGSTYLE_SQUARE "Square"
645 
646 #define FSPDF_ANNOT_LINEENDINGSTYLE_CIRCLE "Circle"
647 
648 #define FSPDF_ANNOT_LINEENDINGSTYLE_DIAMOND "Diamond"
649 
650 #define FSPDF_ANNOT_LINEENDINGSTYLE_OPENARROW "OpenArrow"
651 
652 #define FSPDF_ANNOT_LINEENDINGSTYLE_CLOSEDARROW "ClosedArrow"
653 
654 #define FSPDF_ANNOT_LINEENDINGSTYLE_BUTT "Butt"
655 
656 #define FSPDF_ANNOT_LINEENDINGSTYLE_REVERSEOPENARROW "ROpenArrow"
657 
658 #define FSPDF_ANNOT_LINEENDINGSTYLE_REVERSECLOSEDARROW "RClosedArrow"
659 
660 #define FSPDF_ANNOT_LINEENDINGSTYLE_SLASH "Slash"
661 
663 #endif /* _FSPDF_DEF_MACRO_ANNOT_LINEENDINGSTYLE_ */
664 
665 #ifndef _FSPDF_DEF_MACRO_ANNOT_HIGHLIGHTINGMODE_
666 #define _FSPDF_DEF_MACRO_ANNOT_HIGHLIGHTINGMODE_
667 
673 #define FSPDF_ANNOT_HIGHLIGHTINGMODE_NONE 0
674 
675 #define FSPDF_ANNOT_HIGHLIGHTINGMODE_INVERT 1
676 
677 #define FSPDF_ANNOT_HIGHLIGHTINGMODE_OUTLINE 2
678 
679 #define FSPDF_ANNOT_HIGHLIGHTINGMODE_PUSH 3
680 
684 #define FSPDF_ANNOT_HIGHLIGHTINGMODE_TOGGLE 4
685 
687 #endif /* _FSPDF_DEF_MACRO_ANNOT_HIGHLIGHTINGMODE_ */
688 
689 #ifndef _FSPDF_DEF_MACRO_ANNOT_BORDERSTYLE_
690 #define _FSPDF_DEF_MACRO_ANNOT_BORDERSTYLE_
691 
697 #define FSPDF_ANNOT_BORDERSTYLE_SOLID 0
698 
699 #define FSPDF_ANNOT_BORDERSTYLE_DASHED 1
700 
701 #define FSPDF_ANNOT_BORDERSTYLE_UNDERLINE 2
702 
703 #define FSPDF_ANNOT_BORDERSTYLE_BEVELED 3
704 
705 #define FSPDF_ANNOT_BORDERSTYLE_INSET 4
706 
707 #define FSPDF_ANNOT_BORDERSTYLE_CLOUDY 5
708 
710 #endif /* _FSPDF_DEF_MACRO_ANNOT_BORDERSTYLE_ */
711 
712 #ifndef _FSPDF_DEF_MACRO_ANNOT_ICONFITFLAG_
713 #define _FSPDF_DEF_MACRO_ANNOT_ICONFITFLAG_
714 
720 #define FSPDF_ANNOT_ICONFITFLAG_SCALEWAY 1
721 
722 #define FSPDF_ANNOT_ICONFITFLAG_ASPECTRATIO 2
723 
724 #define FSPDF_ANNOT_ICONFITFLAG_POSITION 4
725 
726 #define FSPDF_ANNOT_ICONFITFLAG_FITBOUNDS 8
727 
729 #endif /* _FSPDF_DEF_MACRO_ANNOT_ICONFITFLAG_ */
730 
731 #ifndef _FSPDF_DEF_MACRO_ANNOT_ICONSCALEWAY_
732 #define _FSPDF_DEF_MACRO_ANNOT_ICONSCALEWAY_
733 
738 #define FSPDF_ANNOT_ICONSCALEWAY_ALWAYS 0
739 
740 #define FSPDF_ANNOT_ICONSCALEWAY_BIGGER 1
741 
742 #define FSPDF_ANNOT_ICONSCALEWAY_SMALLER 2
743 
744 #define FSPDF_ANNOT_ICONSCALEWAY_NEVER 3
745 
747 #endif /* _FSPDF_DEF_MACRO_ANNOT_ICONSCALEWAY_ */
748 
749 #ifndef _FSPDF_DEF_MACRO_ANNOT_MKENTRY_
750 #define _FSPDF_DEF_MACRO_ANNOT_MKENTRY_
751 
757 #define FSPDF_ANNOT_MKENTRY_ROTATION 0
758 
759 #define FSPDF_ANNOT_MKENTRY_BORDERCOLOR 1
760 
761 #define FSPDF_ANNOT_MKENTRY_BACKGROUNDCOLOR 2
762 
763 #define FSPDF_ANNOT_MKENTRY_NORMALCAPTION 3
764 
765 #define FSPDF_ANNOT_MKENTRY_ROLLOVERCAPTION 4
766 
767 #define FSPDF_ANNOT_MKENTRY_DOWNCAPTION 5
768 
769 #define FSPDF_ANNOT_MKENTRY_NORMALICON 6
770 
771 #define FSPDF_ANNOT_MKENTRY_ROLLOVERICON 7
772 
773 #define FSPDF_ANNOT_MKENTRY_DOWNICON 8
774 
775 #define FSPDF_ANNOT_MKENTRY_ICONFIT 9
776 
777 #define FSPDF_ANNOT_MKENTRY_TEXTPOSITION 10
778 
780 #endif /* _FSPDF_DEF_MACRO_ANNOT_MKENTRY_ */
781 
782 #ifndef _FSPDF_DEF_STRUCTURE_ANNOTICONFIT_
783 #define _FSPDF_DEF_STRUCTURE_ANNOTICONFIT_
784 
787 typedef struct _FSPDF_ANNOTICONFIT
788 {
846 
847 #endif /* _FSPDF_DEF_STRUCTURE_ANNOTICONFIT_ */
848 
849 #ifndef _FSPDF_DEF_STRUCTURE_ANNOTBORDER_
850 #define _FSPDF_DEF_STRUCTURE_ANNOTBORDER_
851 
854 typedef struct _FSPDF_ANNOTBORDER
855 {
894  FS_FLOAT dashPattern[16];
896 
897 #endif /* _FSPDF_DEF_STRUCTURE_ANNOTBORDER_ */
898 
927 FS_RESULT FSPDF_Annot_GetType(FSCRT_ANNOT annot, FSCRT_BSTR* annotType);
928 
954 FS_RESULT FSPDF_Annot_GetRect(FSCRT_ANNOT annot, FSCRT_RECTF* rect);
955 
988 FS_RESULT FSPDF_Annot_GetDeviceRect(FSCRT_ANNOT annot, FS_BOOL bTransformIcon, const FSCRT_MATRIX* matrix,
989  FSCRT_RECT* deviceRect);
990 
1017 FS_RESULT FSPDF_Annot_GetFlags(FSCRT_ANNOT annot, FS_DWORD* flags);
1018 
1046 FS_RESULT FSPDF_Annot_GetName(FSCRT_ANNOT annot, FSCRT_BSTR* name);
1047 
1075 FS_RESULT FSPDF_Annot_GetContents(FSCRT_ANNOT annot, FSCRT_BSTR* contents);
1076 
1101 FS_RESULT FSPDF_Annot_GetBorder(FSCRT_ANNOT annot, FSPDF_ANNOTBORDER* border);
1102 
1132 FS_RESULT FSPDF_Annot_GetColor(FSCRT_ANNOT annot, FS_BOOL isFillColor, FS_ARGB* color);
1133 
1161 FS_RESULT FSPDF_Annot_GetApplyFillColor(FSCRT_ANNOT annot, FS_ARGB* color);
1162 
1188 
1214 
1242 FS_RESULT FSPDF_Annot_GetSubject(FSCRT_ANNOT annot, FSCRT_BSTR* subject);
1243 
1271 FS_RESULT FSPDF_Annot_GetTitle(FSCRT_ANNOT annot, FSCRT_BSTR* title);
1272 
1298 FS_RESULT FSPDF_Annot_GetOpacity(FSCRT_ANNOT annot, FS_FLOAT* opacity);
1299 
1329 FS_RESULT FSPDF_Annot_GetIntent(FSCRT_ANNOT annot, FSCRT_BSTR* intent);
1330 
1356 FS_RESULT FSPDF_Annot_GetOpenStatus(FSCRT_ANNOT annot, FS_BOOL* isOpen);
1357 
1387 FS_RESULT FSPDF_Annot_GetIconName(FSCRT_ANNOT annot, FSCRT_BSTR* iconName);
1388 
1420 FS_RESULT FSPDF_Annot_GetAlignment(FSCRT_ANNOT annot, FS_INT32* alignment);
1421 
1448 FS_RESULT FSPDF_Annot_GetHighlightingMode(FSCRT_ANNOT annot, FS_INT32* hlMode);
1449 
1497 FS_RESULT FSPDF_Annot_GetQuadPoints(FSCRT_ANNOT annot, FSCRT_QUADPOINTSF* quadPoints, FS_INT32* count);
1498 
1534 FS_RESULT FSPDF_Annot_GetCalloutLinePoints(FSCRT_ANNOT annot, FS_FLOAT* x1, FS_FLOAT* y1, FS_FLOAT* x2, FS_FLOAT* y2, FS_FLOAT* x3, FS_FLOAT* y3);
1535 
1567 FS_RESULT FSPDF_Annot_GetInnerRectMargin(FSCRT_ANNOT annot, FS_FLOAT* left, FS_FLOAT* top, FS_FLOAT* right, FS_FLOAT* bottom);
1568 
1602 FS_RESULT FSPDF_Annot_GetLineEndingStyles(FSCRT_ANNOT annot, FSCRT_BSTR* startingStyle, FSCRT_BSTR* endingStyle);
1603 
1631 FS_RESULT FSPDF_Annot_GetLinePosition(FSCRT_ANNOT annot, FS_FLOAT* x1, FS_FLOAT* y1, FS_FLOAT* x2, FS_FLOAT* y2);
1632 
1662 FS_RESULT FSPDF_Annot_GetLeaderLineLength(FSCRT_ANNOT annot, FS_FLOAT* length);
1663 
1689 FS_RESULT FSPDF_Annot_GetLeaderLineExtension(FSCRT_ANNOT annot, FS_FLOAT* extLength);
1690 
1716 FS_RESULT FSPDF_Annot_GetLeaderLineOffset(FSCRT_ANNOT annot, FS_FLOAT* offset);
1717 
1743 FS_RESULT FSPDF_Annot_HasCaptionContents(FSCRT_ANNOT annot, FS_BOOL* hasCap);
1744 
1780 FS_RESULT FSPDF_Annot_GetCaptionPosition(FSCRT_ANNOT annot, FSCRT_BSTR* captionPos);
1781 
1819 FS_RESULT FSPDF_Annot_GetCaptionOffset(FSCRT_ANNOT annot, FS_FLOAT* offsetx, FS_FLOAT* offsety);
1820 
1860 FS_RESULT FSPDF_Annot_GetVertices(FSCRT_ANNOT annot, FS_FLOAT* vertices, FS_INT32* count);
1861 
1895 FS_RESULT FSPDF_Annot_GetSymbol(FSCRT_ANNOT annot, FSCRT_BSTR* symbol);
1896 
1930 FS_RESULT FSPDF_Annot_GetInkList(FSCRT_ANNOT annot, FSCRT_PATHDATA* pathData);
1931 
1959 FS_RESULT FSPDF_Annot_GetAttachment(FSCRT_ANNOT annot, FSPDF_ATTACHMENT* attachment);
1960 
1986 FS_RESULT FSPDF_Annot_GetDefaultAppearance(FSCRT_ANNOT annot, FSPDF_DEFAULTAPPEARANCE* defAppearance);
1987 
2014 FS_RESULT FSPDF_Annot_GetIconFit(FSCRT_ANNOT annot, FSPDF_ANNOTICONFIT* iconFit);
2015 
2046 FS_RESULT FSPDF_Annot_HasMKEntry(FSCRT_ANNOT annot, FS_INT32 mkEntry, FS_BOOL* hasEntry);
2047 
2074 FS_RESULT FSPDF_Annot_GetMKRotation(FSCRT_ANNOT annot, FS_INT32* degree);
2075 
2106 FS_RESULT FSPDF_Annot_GetMKColor(FSCRT_ANNOT annot, FS_INT32 mkEntry, FS_ARGB* color);
2107 
2140 FS_RESULT FSPDF_Annot_GetMKCaption(FSCRT_ANNOT annot, FS_INT32 mkEntry, FSCRT_BSTR* caption);
2141 
2178 FS_RESULT FSPDF_Annot_GetMKIconBitmap(FSCRT_ANNOT annot, FS_INT32 mkEntry, FSCRT_BITMAP* bitmap);
2179 
2205 FS_RESULT FSPDF_Annot_GetFormControl(FSCRT_ANNOT widgetAnnot, FSPDF_FORMCONTROL* formControl);
2206 
2231 FS_RESULT FSPDF_Annot_GetDict(FSCRT_ANNOT annot, FSPDF_OBJECT* dictionary);
2232 
2233 /*******************************************************************************/
2234 /* Markup controls */
2235 /*******************************************************************************/
2236 #ifndef _FSPDF_DEF_MACRO_ANNOTSTATEMODEL_
2237 #define _FSPDF_DEF_MACRO_ANNOTSTATEMODEL_
2238 
2244 #define FSPDF_ANNOTSTATEMODEL_MARKED 0
2245 
2246 #define FSPDF_ANNOTSTATEMODEL_REVIEW 1
2247 
2249 #endif /* _FSPDF_DEF_MACRO_ANNOTSTATEMODEL_ */
2250 
2251 #ifndef _FSPDF_DEF_MACRO_ANNOTSTATE_
2252 #define _FSPDF_DEF_MACRO_ANNOTSTATE_
2253 
2260 #define FSPDF_ANNOTSTATE_MARKED_MARKED 0
2261 
2262 #define FSPDF_ANNOTSTATE_MARKED_UNMARKED 1
2263 
2265 #define FSPDF_ANNOTSTATE_REVIEW_ACCEPTED 0
2266 
2267 #define FSPDF_ANNOTSTATE_REVIEW_REJECTED 1
2268 
2269 #define FSPDF_ANNOTSTATE_REVIEW_CANCELLED 2
2270 
2271 #define FSPDF_ANNOTSTATE_REVIEW_COMPLETED 3
2272 
2273 #define FSPDF_ANNOTSTATE_REVIEW_NONE 4
2274 
2276 #endif /* _FSPDF_DEF_MACRO_ANNOTSTATE_ */
2277 
2309 FS_RESULT FSPDF_Annot_CountStateAnnots(FSCRT_ANNOT annot, FS_INT32 stateModel, FS_INT32* count);
2310 
2346 FS_RESULT FSPDF_Annot_GetStateAnnot(FSCRT_ANNOT annot, FS_INT32 stateModel, FS_INT32 index, FSCRT_ANNOT* stateAnnot);
2347 
2380 FS_RESULT FSPDF_Annot_GetState(FSCRT_ANNOT stateAnnot, FS_INT32* stateModel, FS_INT32* state);
2381 
2406 FS_RESULT FSPDF_Annot_IsGrouped(FSCRT_ANNOT annot, FS_BOOL* isGrouped);
2407 
2435 FS_RESULT FSPDF_Annot_GetGroupHeader(FSCRT_ANNOT annot, FSCRT_ANNOT* groupHeader);
2436 
2477 FS_RESULT FSPDF_Annot_GetGroupElements(FSCRT_ANNOT annot, FSCRT_ANNOT* elements, FS_INT32* count);
2478 
2504 FS_RESULT FSPDF_Annot_CountReplies(FSCRT_ANNOT annot, FS_INT32* count);
2505 
2535 FS_RESULT FSPDF_Annot_GetReply(FSCRT_ANNOT annot, FS_INT32 index, FSCRT_ANNOT* replyAnnot);
2536 
2565 FS_RESULT FSPDF_Annot_GetPopup(FSCRT_ANNOT annot, FSCRT_ANNOT* popupAnnot);
2566 
2567 /*******************************************************************************/
2568 /* Annotation trigger actions */
2569 /*******************************************************************************/
2596 FS_RESULT FSPDF_Annot_CountActions(FSCRT_ANNOT annot, FS_INT32 trigger, FS_INT32* count);
2597 
2626 FS_RESULT FSPDF_Annot_GetAction(FSCRT_ANNOT annot, FS_INT32 trigger, FS_INT32 index, FSPDF_ACTIONDATA* actionData);
2627 
2628 /*******************************************************************************/
2629 /* Annotation display */
2630 /*******************************************************************************/
2668 FS_RESULT FSPDF_RenderContext_StartAnnots(FSPDF_RENDERCONTEXT pdfRenderContext, FSCRT_RENDERER renderer,
2669  const FSCRT_ANNOT* annots, FS_INT32 count, FSCRT_PROGRESS* renderProgress);
2670 
2707 FS_RESULT FSPDF_RenderContext_StartPageAnnots(FSPDF_RENDERCONTEXT pdfRenderContext, FSCRT_RENDERER renderer,
2708  FSCRT_PAGE page, FSCRT_PROGRESS* renderProgress);
2709 
2710 /*******************************************************************************/
2711 /* Search text in annotation appearance */
2712 /*******************************************************************************/
2753 FS_RESULT FSPDF_Annot_SearchInAppearance(FSCRT_ANNOT annot, const FSCRT_BSTR* searchPattern, FS_DWORD flags, FSPDF_TEXTSEARCH* textSearch);
2754 
2755 #ifdef __cplusplus
2756 };
2757 #endif
2758  /* group FPDFANNOT */
2760 
2761 #endif /* _FSPDF_ANNOT_R_H_ */
2762 
FS_RESULT FSPDF_Annot_GetInnerRectMargin(FSCRT_ANNOT annot, FS_FLOAT *left, FS_FLOAT *top, FS_FLOAT *right, FS_FLOAT *bottom)
Get the margin between inner rectangle and rectangle of an annotation.
FS_RESULT FSPDF_Annot_GetLinePosition(FSCRT_ANNOT annot, FS_FLOAT *x1, FS_FLOAT *y1, FS_FLOAT *x2, FS_FLOAT *y2)
Get line position of a line annotation.
FS_INT32 borderStyle
Border style.
Definition: fpdf_annot_r.h:867
FS_RESULT FSPDF_RenderContext_StartPageAnnots(FSPDF_RENDERCONTEXT pdfRenderContext, FSCRT_RENDERER renderer, FSCRT_PAGE page, FSCRT_PROGRESS *renderProgress)
Render all annotations of a page on render context.
FS_RESULT FSPDF_Annot_GetModifiedDateTime(FSCRT_ANNOT annot, FSCRT_DATETIMEZONE *dt)
Get modification time of an annotation.
Structure for annotation border.
Definition: fpdf_annot_r.h:854
FS_RESULT FSPDF_Annot_GetContents(FSCRT_ANNOT annot, FSCRT_BSTR *contents)
Get contents of an annotation.
FS_RESULT FSPDF_Annot_IsGrouped(FSCRT_ANNOT annot, FS_BOOL *isGrouped)
Check whether an annotation is in a group.
FS_RESULT FSPDF_Annot_CountStateAnnots(FSCRT_ANNOT annot, FS_INT32 stateModel, FS_INT32 *count)
Count specific state annotations associated with a markup annotation.
FS_RESULT FSPDF_Annot_CountReplies(FSCRT_ANNOT annot, FS_INT32 *count)
Count replies of a markup annotation.
FS_RESULT FSPDF_Annot_GetFlags(FSCRT_ANNOT annot, FS_DWORD *flags)
Get flags of an annotation.
FS_RESULT FSPDF_Annot_GetInkList(FSCRT_ANNOT annot, FSCRT_PATHDATA *pathData)
Get ink list data of an ink annotation.
Structure for rectangle, in float.
Definition: fs_base_r.h:2080
FS_DWORD flags
Icon fit flag.
Definition: fpdf_annot_r.h:800
FS_RESULT FSPDF_Annot_GetAlignment(FSCRT_ANNOT annot, FS_INT32 *alignment)
Get alignment of a free text annotation.
float FS_FLOAT
32-bit floating-point number, single precision.
Definition: fs_base_r.h:148
FS_FLOAT borderWidth
Width of border, in points.
Definition: fpdf_annot_r.h:861
FS_RESULT FSPDF_Annot_GetIntent(FSCRT_ANNOT annot, FSCRT_BSTR *intent)
Get intent of a markup annotation.
FS_RESULT FSPDF_Annot_GetAction(FSCRT_ANNOT annot, FS_INT32 trigger, FS_INT32 index, FSPDF_ACTIONDATA *actionData)
Get action data of specific index associated with an annotation.
Structure for rectangle, in integer.
Definition: fs_base_r.h:2058
FS_RESULT FSPDF_Annot_GetMKCaption(FSCRT_ANNOT annot, FS_INT32 mkEntry, FSCRT_BSTR *caption)
Get caption of a specific type in MK dictionary.
FS_RESULT FSPDF_Annot_GetIconName(FSCRT_ANNOT annot, FSCRT_BSTR *iconName)
Get icon name of an annotation.
FS_RESULT FSPDF_Annot_GetRect(FSCRT_ANNOT annot, FSCRT_RECTF *rect)
Get rectangle of an annotation.
FS_RESULT FSPDF_Annot_GetGroupHeader(FSCRT_ANNOT annot, FSCRT_ANNOT *groupHeader)
Get header annotation of a group, to which an annotation belongs.
FS_RESULT FSPDF_Annot_GetAttachment(FSCRT_ANNOT annot, FSPDF_ATTACHMENT *attachment)
Get attachment of a file attachment annotation.
FS_RESULT FSPDF_Page_LoadAnnots(FSCRT_PAGE page)
Load annotations from a PDF page.
FS_RESULT FSPDF_Annot_GetName(FSCRT_ANNOT annot, FSCRT_BSTR *name)
Get name of an annotation.
FS_FLOAT bottom
Left-over space to allocate at the bottom of the icon.
Definition: fpdf_annot_r.h:836
FS_RESULT FSPDF_Annot_GetOpacity(FSCRT_ANNOT annot, FS_FLOAT *opacity)
Get opacity of a markup annotation.
FS_RESULT FSPDF_Annot_CountActions(FSCRT_ANNOT annot, FS_INT32 trigger, FS_INT32 *count)
Count actions associated with an annotation.
FS_RESULT FSPDF_Annot_GetDefaultAppearance(FSCRT_ANNOT annot, FSPDF_DEFAULTAPPEARANCE *defAppearance)
Get default appearance of a free text annotation, which can be used in formatting text...
unsigned int FS_DWORD
32-bit unsigned integer.
Definition: fs_base_r.h:142
FS_RESULT FSPDF_Page_UnloadAnnots(FSCRT_PAGE page)
Unload annotations of a PDF page.
FS_RESULT FSPDF_Annot_GetReply(FSCRT_ANNOT annot, FS_INT32 index, FSCRT_ANNOT *replyAnnot)
Get reply with specifies index of a markup annotation.
FS_RESULT FSPDF_Annot_GetPopup(FSCRT_ANNOT annot, FSCRT_ANNOT *popupAnnot)
Get a pop-up annotation from a specific markup annotation.
FS_RESULT FSPDF_Annot_GetSymbol(FSCRT_ANNOT annot, FSCRT_BSTR *symbol)
Get symbol of a caret annotation.
FS_BOOL aspectRatio
A boolean value that indicates which type of scaling is to be used.
Definition: fpdf_annot_r.h:822
FS_RESULT FSPDF_Annot_GetFormControl(FSCRT_ANNOT widgetAnnot, FSPDF_FORMCONTROL *formControl)
Get a PDF form control from a widget annotation handle.
FS_RESULT FSPDF_Annot_GetHighlightingMode(FSCRT_ANNOT annot, FS_INT32 *hlMode)
Get highlighting mode of a link or widget annotation.
FS_RESULT FSPDF_Annot_GetDeviceRect(FSCRT_ANNOT annot, FS_BOOL bTransformIcon, const FSCRT_MATRIX *matrix, FSCRT_RECT *deviceRect)
Get rectangle of an annotation in device coordinations.
FS_RESULT FSPDF_Annot_GetCaptionOffset(FSCRT_ANNOT annot, FS_FLOAT *offsetx, FS_FLOAT *offsety)
Get caption offset of a line annotation.
FS_RESULT FSPDF_Annot_GetLeaderLineExtension(FSCRT_ANNOT annot, FS_FLOAT *extLength)
Get leader line extension of a line annotation.
int FS_INT32
32-bit signed integer.
Definition: fs_base_r.h:175
Structure for date and time.
Definition: fs_base_r.h:2020
FS_RESULT FSPDF_Annot_GetLeaderLineOffset(FSCRT_ANNOT annot, FS_FLOAT *offset)
Get leader line offset of a line annotation.
FS_RESULT FSPDF_Annot_GetColor(FSCRT_ANNOT annot, FS_BOOL isFillColor, FS_ARGB *color)
Get fill or border color of an annotation.
FS_RESULT FSPDF_Annot_GetOpenStatus(FSCRT_ANNOT annot, FS_BOOL *isOpen)
Get open status of a text or pop-up annotation.
FS_RESULT FSPDF_Annot_GetBorder(FSCRT_ANNOT annot, FSPDF_ANNOTBORDER *border)
Get border of an annotation.
FS_BOOL fitBounds
A boolean value that indicates whether to scale button appearance to fit fully within bounds or not...
Definition: fpdf_annot_r.h:844
FS_RESULT FSPDF_Annot_GetMKIconBitmap(FSCRT_ANNOT annot, FS_INT32 mkEntry, FSCRT_BITMAP *bitmap)
Get icon bitmap of specific icon type in MK dictionary.
Structure for default appearance.
Definition: fpdf_base_r.h:278
FS_RESULT FSPDF_Annot_GetSubject(FSCRT_ANNOT annot, FSCRT_BSTR *subject)
Get subject of a markup annotation.
FS_RESULT FSPDF_Annot_GetDict(FSCRT_ANNOT annot, FSPDF_OBJECT *dictionary)
Get the dictionary of an annotation.
FS_RESULT FSPDF_Annot_GetCount(FSCRT_PAGE page, const FSCRT_BSTR *filter, FS_INT32 *count)
Get count of annotations, by specific filter.
FS_RESULT FSPDF_Annot_GetType(FSCRT_ANNOT annot, FSCRT_BSTR *annotType)
Get type of an annotation.
Structure for annotation icon fit.
Definition: fpdf_annot_r.h:787
Structure for an action data.
Definition: fpdf_base_r.h:841
int FS_BOOL
Boolean type (This should be TRUE or FALSE).
Definition: fs_base_r.h:133
FS_FLOAT left
Left-over space to allocate at the left of the icon.
Definition: fpdf_annot_r.h:829
FS_RESULT FSPDF_Annot_GetCreationDateTime(FSCRT_ANNOT annot, FSCRT_DATETIMEZONE *dt)
Get creation time of a markup annotation.
FS_RESULT FSPDF_Annot_GetMKRotation(FSCRT_ANNOT annot, FS_INT32 *degree)
Get rotation (the number of degrees) in MK dictionary.
FS_RESULT FSPDF_Annot_GetAtDevicePos(FSCRT_PAGE page, const FSCRT_BSTR *filter, const FSCRT_MATRIX *matrix, FS_INT32 x, FS_INT32 y, FS_INT32 tolerance, FSCRT_ANNOT *annot)
Get annotation at a specific position in device (in pixel), by specific filter.
FS_RESULT FSPDF_Annot_GetVertices(FSCRT_ANNOT annot, FS_FLOAT *vertices, FS_INT32 *count)
Get vertices of a polygon or polyline annotation.
FS_RESULT FSPDF_Annot_GetMKColor(FSCRT_ANNOT annot, FS_INT32 mkEntry, FS_ARGB *color)
Get color of specific type in MK dictionary.
FS_RESULT FSPDF_Annot_GetCalloutLinePoints(FSCRT_ANNOT annot, FS_FLOAT *x1, FS_FLOAT *y1, FS_FLOAT *x2, FS_FLOAT *y2, FS_FLOAT *x3, FS_FLOAT *y3)
Get callout line points of a free text annotation.
FS_FLOAT dashPhase
Dash phase.
Definition: fpdf_annot_r.h:881
FS_RESULT FSPDF_Annot_GetStateAnnot(FSCRT_ANNOT annot, FS_INT32 stateModel, FS_INT32 index, FSCRT_ANNOT *stateAnnot)
Get specified state annotation associated with a markup annotation.
FS_RESULT FSPDF_Annot_Get(FSCRT_PAGE page, const FSCRT_BSTR *filter, FS_INT32 index, FSCRT_ANNOT *annot)
Get annotation with specified index, by specific filter.
FS_RESULT FSPDF_Annot_HasCaptionContents(FSCRT_ANNOT annot, FS_BOOL *hasCap)
Check if there is a caption to a line annotation.
FS_RESULT FSPDF_Annot_GetIconFit(FSCRT_ANNOT annot, FSPDF_ANNOTICONFIT *iconFit)
Get icon fit of a widget annotation.
FS_RESULT FSPDF_Annot_GetLineEndingStyles(FSCRT_ANNOT annot, FSCRT_BSTR *startingStyle, FSCRT_BSTR *endingStyle)
Get line ending styles of an annotation.
FS_RESULT FSPDF_Annot_GetIndex(FSCRT_ANNOT annot, const FSCRT_BSTR *filter, FS_INT32 *index)
Get index of a specific annotation, by specific filter.
unsigned int FS_ARGB
ARGB color type, 32 bits, ((b) | ((g) << 8) | ((r) << 16)) | ((a) << 24)
Definition: fs_base_r.h:145
FS_INT32 dashCount
Count of useful elements in array dashPattern.
Definition: fpdf_annot_r.h:887
FS_RESULT FSPDF_Annot_GetAtPos(FSCRT_PAGE page, const FSCRT_BSTR *filter, FS_FLOAT x, FS_FLOAT y, FS_FLOAT tolerance, FSCRT_ANNOT *annot)
Get annotation at a specific position in PDF page, by specific filter.
FS_RESULT FSPDF_RenderContext_StartAnnots(FSPDF_RENDERCONTEXT pdfRenderContext, FSCRT_RENDERER renderer, const FSCRT_ANNOT *annots, FS_INT32 count, FSCRT_PROGRESS *renderProgress)
Render annotations on render context.
Structure for 2D matrix.
Definition: fs_base_r.h:2132
Structure for byte string.
Definition: fs_base_r.h:613
FS_RESULT FSPDF_Annot_GetQuadPoints(FSCRT_ANNOT annot, FSCRT_QUADPOINTSF *quadPoints, FS_INT32 *count)
Get quadrilaterals points of an annotation.
FS_RESULT FSPDF_Annot_GetGroupElements(FSCRT_ANNOT annot, FSCRT_ANNOT *elements, FS_INT32 *count)
Get group elements if annotation is in a group, including itself.
FS_RESULT FSPDF_Annot_GetCaptionPosition(FSCRT_ANNOT annot, FSCRT_BSTR *captionPos)
Get caption position of a line annotation.
FS_RESULT FSPDF_Annot_GetApplyFillColor(FSCRT_ANNOT annot, FS_ARGB *color)
Get the filling color of a redact annotation after applying and the color is also used as its rollove...
FS_RESULT FSPDF_Annot_GetLeaderLineLength(FSCRT_ANNOT annot, FS_FLOAT *length)
Get leader line length of a line annotation.
FS_RESULT FSPDF_Annot_HasMKEntry(FSCRT_ANNOT annot, FS_INT32 mkEntry, FS_BOOL *hasEntry)
Check if specific entry is in MK dictionary.
FS_RESULT FSPDF_Annot_GetTitle(FSCRT_ANNOT annot, FSCRT_BSTR *title)
Get title of a markup annotation.
FS_FLOAT cloudIntensity
Intensity of the cloudy effect.
Definition: fpdf_annot_r.h:875
FS_RESULT FSPDF_Annot_GetAllByTabOrder(FSCRT_PAGE page, const FSCRT_BSTR *filter, FSCRT_ANNOT *annotArray, FS_INT32 *count)
Get annotations by tab order, with specific filter (except pop-up annotation).
FS_RESULT FSPDF_Annot_GetState(FSCRT_ANNOT stateAnnot, FS_INT32 *stateModel, FS_INT32 *state)
Get state model and state out of a state text annotation.
int FS_RESULT
Result code for functions in Foxit PDF SDK.
Definition: fs_base_r.h:160
FS_INT32 scaleWay
The circumstances under which the icon should be scaled inside the annotation rectangle.
Definition: fpdf_annot_r.h:813
Structure for quad points, in float.
Definition: fs_base_r.h:2102
FS_RESULT FSPDF_Annot_SearchInAppearance(FSCRT_ANNOT annot, const FSCRT_BSTR *searchPattern, FS_DWORD flags, FSPDF_TEXTSEARCH *textSearch)
Start a text search process in the appearance of a specified PDF annotation.

Foxit Corporation