fpdf_annot_r.h
Go to the documentation of this file.
1 
46 #ifndef _FSPDF_ANNOT_R_H_
47 #define _FSPDF_ANNOT_R_H_
48 
84 #ifdef __cplusplus
85 extern "C" {
86 #endif
87 
88 /*******************************************************************************/
89 /* Load or unload annotations from page */
90 /*******************************************************************************/
118 FS_RESULT FSPDF_Page_LoadAnnots(FSCRT_PAGE page);
119 
143 FS_RESULT FSPDF_Page_UnloadAnnots(FSCRT_PAGE page);
144 
145 /*******************************************************************************/
146 /* Enumerate annotation types */
147 /*******************************************************************************/
148 #ifndef _FSPDF_DEF_MACRO_ANNOTTYPE_
149 #define _FSPDF_DEF_MACRO_ANNOTTYPE_
150 
157 #define FSPDF_ANNOTTYPE_TEXT "Text"
158 
159 #define FSPDF_ANNOTTYPE_LINK "Link"
160 
161 #define FSPDF_ANNOTTYPE_FREETEXT "FreeText"
162 
163 #define FSPDF_ANNOTTYPE_LINE "Line"
164 
165 #define FSPDF_ANNOTTYPE_SQUARE "Square"
166 
167 #define FSPDF_ANNOTTYPE_CIRCLE "Circle"
168 
169 #define FSPDF_ANNOTTYPE_POLYGON "Polygon"
170 
171 #define FSPDF_ANNOTTYPE_POLYLINE "PolyLine"
172 
173 #define FSPDF_ANNOTTYPE_HIGHLIGHT "Highlight"
174 
175 #define FSPDF_ANNOTTYPE_UNDERLINE "Underline"
176 
177 #define FSPDF_ANNOTTYPE_SQUIGGLY "Squiggly"
178 
179 #define FSPDF_ANNOTTYPE_STRIKEOUT "StrikeOut"
180 
181 #define FSPDF_ANNOTTYPE_STAMP "Stamp"
182 
183 #define FSPDF_ANNOTTYPE_CARET "Caret"
184 
185 #define FSPDF_ANNOTTYPE_INK "Ink"
186 
187 #define FSPDF_ANNOTTYPE_POPUP "Popup"
188 
189 #define FSPDF_ANNOTTYPE_FILEATTACHMENT "FileAttachment"
190 
194 #define FSPDF_ANNOTTYPE_SOUND "Sound"
195 
199 #define FSPDF_ANNOTTYPE_MOVIE "Movie"
200 
205 #define FSPDF_ANNOTTYPE_WIDGET "Widget"
206 
210 #define FSPDF_ANNOTTYPE_SCREEN "Screen"
211 
215 #define FSPDF_ANNOTTYPE_PRINTERMARK "PrinterMark"
216 
220 #define FSPDF_ANNOTTYPE_TRAPNET "TrapNet"
221 
226 #define FSPDF_ANNOTTYPE_WATERMARK "Watermark"
227 
232 #define FSPDF_ANNOTTYPE_PSI "PSInk"
233 
237 #define FSPDF_ANNOTTYPE_3D "3D"
238 
240 #endif /* _FSPDF_DEF_MACRO_ANNOTTYPE_ */
241 
276 FS_RESULT FSPDF_Annot_GetCount(FSCRT_PAGE page, const FSCRT_BSTR* filter, FS_INT32* count);
277 
315 FS_RESULT FSPDF_Annot_Get(FSCRT_PAGE page, const FSCRT_BSTR* filter, FS_INT32 index, FSCRT_ANNOT* annot);
316 
357 FS_RESULT FSPDF_Annot_GetAtPos(FSCRT_PAGE page, const FSCRT_BSTR* filter, FS_FLOAT x, FS_FLOAT y, FS_FLOAT tolerance, FSCRT_ANNOT* annot);
358 
400 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);
401 
434 FS_RESULT FSPDF_Annot_GetIndex(FSCRT_ANNOT annot, const FSCRT_BSTR* filter, FS_INT32* index);
435 
483 FS_RESULT FSPDF_Annot_GetAllByTabOrder(FSCRT_PAGE page, const FSCRT_BSTR* filter, FSCRT_ANNOT* annotArray, FS_INT32* count);
484 
485 /*******************************************************************************/
486 /* Annotation common properties */
487 /*******************************************************************************/
488 #ifndef _FSPDF_DEF_MACRO_ANNOTFLAG_
489 #define _FSPDF_DEF_MACRO_ANNOTFLAG_
490 
496 #define FSPDF_ANNOTFLAG_INVISIBLE 0x0001
497 
498 #define FSPDF_ANNOTFLAG_HIDDEN 0x0002
499 
500 #define FSPDF_ANNOTFLAG_PRINT 0x0004
501 
502 #define FSPDF_ANNOTFLAG_NOZOOM 0x0008
503 
504 #define FSPDF_ANNOTFLAG_NOROTATE 0x0010
505 
506 #define FSPDF_ANNOTFLAG_NOVIEW 0x0020
507 
508 #define FSPDF_ANNOTFLAG_READONLY 0x0040
509 
510 #define FSPDF_ANNOTFLAG_LOCKED 0x0080
511 
512 #define FSPDF_ANNOTFLAG_TOGGLENOVIEW 0x0100
513 
514 #define FSPDF_ANNOTFLAG_LOCKEDCONTENTS 0x0200
515 
517 #endif /* _FSPDF_DEF_MACRO_ANNOTFLAG_ */
518 
519 #ifndef _FSPDF_DEF_MACRO_ANNOT_ICONNAME_
520 #define _FSPDF_DEF_MACRO_ANNOT_ICONNAME_
521 
527 #define FSPDF_ANNOT_ICONNAME_TEXT_CHECKMARK "Checkmark"
528 
529 #define FSPDF_ANNOT_ICONNAME_TEXT_CIRCLE "Circle"
530 
531 #define FSPDF_ANNOT_ICONNAME_TEXT_COMMENT "Comment"
532 
533 #define FSPDF_ANNOT_ICONNAME_TEXT_CROSS "Cross"
534 
535 #define FSPDF_ANNOT_ICONNAME_TEXT_HELP "Help"
536 
537 #define FSPDF_ANNOT_ICONNAME_TEXT_INSERT "Insert"
538 
539 #define FSPDF_ANNOT_ICONNAME_TEXT_KEY "Key"
540 
541 #define FSPDF_ANNOT_ICONNAME_TEXT_NEWPARAGRAPH "NewParagraph"
542 
543 #define FSPDF_ANNOT_ICONNAME_TEXT_NOTE "Note"
544 
545 #define FSPDF_ANNOT_ICONNAME_TEXT_PARAGRAPH "Paragraph"
546 
547 #define FSPDF_ANNOT_ICONNAME_TEXT_RIGHARROW "RightArrow"
548 
549 #define FSPDF_ANNOT_ICONNAME_TEXT_RIGHPOINTER "RightPointer"
550 
551 #define FSPDF_ANNOT_ICONNAME_TEXT_STAR "Star"
552 
553 #define FSPDF_ANNOT_ICONNAME_TEXT_UPARROW "UpArrow"
554 
555 #define FSPDF_ANNOT_ICONNAME_TEXT_UPLEFTARROW "UpleftArrow"
556 
558 #define FSPDF_ANNOT_ICONNAME_FILEATTACH_GRAPH "Graph"
559 
560 #define FSPDF_ANNOT_ICONNAME_FILEATTACH_PAPERCLIP "Paperclip"
561 
562 #define FSPDF_ANNOT_ICONNAME_FILEATTACH_PUSHPIN "PushPin"
563 
564 #define FSPDF_ANNOT_ICONNAME_FILEATTACH_TAG "Tag"
565 
567 #define FSPDF_ANNOT_ICONNAME_STAMP_APPROVED "Approved"
568 
569 #define FSPDF_ANNOT_ICONNAME_STAMP_ASIS "AsIs"
570 
571 #define FSPDF_ANNOT_ICONNAME_STAMP_CONFIDENTIAL "Confidential"
572 
573 #define FSPDF_ANNOT_ICONNAME_STAMP_DEPARTMENTAL "Departmental"
574 
575 #define FSPDF_ANNOT_ICONNAME_STAMP_DRAFT "Draft"
576 
577 #define FSPDF_ANNOT_ICONNAME_STAMP_EXPERIMENTAL "Experimental"
578 
579 #define FSPDF_ANNOT_ICONNAME_STAMP_EXPIRED "Expired"
580 
581 #define FSPDF_ANNOT_ICONNAME_STAMP_FINAL "Final"
582 
583 #define FSPDF_ANNOT_ICONNAME_STAMP_FORCOMMENT "ForComment"
584 
585 #define FSPDF_ANNOT_ICONNAME_STAMP_FORPUBLICRELEASE "ForPublicRelease"
586 
587 #define FSPDF_ANNOT_ICONNAME_STAMP_NOTAPPROVED "NotApproved"
588 
589 #define FSPDF_ANNOT_ICONNAME_STAMP_NOTFORPUBLICRELEASE "NotForPublicRelease"
590 
591 #define FSPDF_ANNOT_ICONNAME_STAMP_SOLD "Sold"
592 
593 #define FSPDF_ANNOT_ICONNAME_STAMP_TOPSECRET "TopSecret"
594 
596 #define FSPDF_ANNOT_ICONNAME_SOUND_SPEAKER "Speaker"
597 
598 #define FSPDF_ANNOT_ICONNAME_SOUND_MIC "Mic"
599 
601 #endif /* _FSPDF_DEF_MACRO_ANNOT_ICONNAME_ */
602 
603 #ifndef _FSPDF_DEF_MACRO_ANNOT_INTENTNAME_
604 #define _FSPDF_DEF_MACRO_ANNOT_INTENTNAME_
605 
611 #define FSPDF_ANNOT_INTENTNAME_FREETEXT_CALLOUT "FreeTextCallout"
612 
613 #define FSPDF_ANNOT_INTENTNAME_FREETEXT_TYPEWRITER "FreeTextTypewriter"
614 
616 #define FSPDF_ANNOT_INTENTNAME_LINE_ARROW "LineArrow"
617 
618 #define FSPDF_ANNOT_INTENTNAME_LINE_DIMENSION "LineDimension"
619 
621 #define FSPDF_ANNOT_INTENTNAME_POLYGON_CLOUD "PolygonCloud"
622 
623 #define FSPDF_ANNOT_INTENTNAME_POLYGON_DIMENSION "PolygonDimension"
624 
626 #define FSPDF_ANNOT_INTENTNAME_POLYLINE_DIMENSION "PolyLineDimension"
627 
629 #endif /* _FSPDF_DEF_MACRO_ANNOT_INTENTNAME_ */
630 
631 #ifndef _FSPDF_DEF_MACRO_ANNOT_LINEENDINGSTYLE_
632 #define _FSPDF_DEF_MACRO_ANNOT_LINEENDINGSTYLE_
633 
639 #define FSPDF_ANNOT_LINEENDINGSTYLE_NONE "None"
640 
641 #define FSPDF_ANNOT_LINEENDINGSTYLE_SQUARE "Square"
642 
643 #define FSPDF_ANNOT_LINEENDINGSTYLE_CIRCLE "Circle"
644 
645 #define FSPDF_ANNOT_LINEENDINGSTYLE_DIAMOND "Diamond"
646 
647 #define FSPDF_ANNOT_LINEENDINGSTYLE_OPENARROW "OpenArrow"
648 
649 #define FSPDF_ANNOT_LINEENDINGSTYLE_CLOSEDARROW "ClosedArrow"
650 
651 #define FSPDF_ANNOT_LINEENDINGSTYLE_BUTT "Butt"
652 
653 #define FSPDF_ANNOT_LINEENDINGSTYLE_REVERSEOPENARROW "ROpenArrow"
654 
655 #define FSPDF_ANNOT_LINEENDINGSTYLE_REVERSECLOSEDARROW "RClosedArrow"
656 
657 #define FSPDF_ANNOT_LINEENDINGSTYLE_SLASH "Slash"
658 
660 #endif /* _FSPDF_DEF_MACRO_ANNOT_LINEENDINGSTYLE_ */
661 
662 #ifndef _FSPDF_DEF_MACRO_ANNOT_HIGHLIGHTINGMODE_
663 #define _FSPDF_DEF_MACRO_ANNOT_HIGHLIGHTINGMODE_
664 
670 #define FSPDF_ANNOT_HIGHLIGHTINGMODE_NONE 0
671 
672 #define FSPDF_ANNOT_HIGHLIGHTINGMODE_INVERT 1
673 
674 #define FSPDF_ANNOT_HIGHLIGHTINGMODE_OUTLINE 2
675 
676 #define FSPDF_ANNOT_HIGHLIGHTINGMODE_PUSH 3
677 
681 #define FSPDF_ANNOT_HIGHLIGHTINGMODE_TOGGLE 4
682 
684 #endif /* _FSPDF_DEF_MACRO_ANNOT_HIGHLIGHTINGMODE_ */
685 
686 #ifndef _FSPDF_DEF_MACRO_ANNOT_BORDERSTYLE_
687 #define _FSPDF_DEF_MACRO_ANNOT_BORDERSTYLE_
688 
694 #define FSPDF_ANNOT_BORDERSTYLE_SOLID 0
695 
696 #define FSPDF_ANNOT_BORDERSTYLE_DASHED 1
697 
698 #define FSPDF_ANNOT_BORDERSTYLE_UNDERLINE 2
699 
700 #define FSPDF_ANNOT_BORDERSTYLE_BEVELED 3
701 
702 #define FSPDF_ANNOT_BORDERSTYLE_INSET 4
703 
704 #define FSPDF_ANNOT_BORDERSTYLE_CLOUDY 5
705 
707 #endif /* _FSPDF_DEF_MACRO_ANNOT_BORDERSTYLE_ */
708 
709 #ifndef _FSPDF_DEF_MACRO_ANNOT_ICONFITFLAG_
710 #define _FSPDF_DEF_MACRO_ANNOT_ICONFITFLAG_
711 
717 #define FSPDF_ANNOT_ICONFITFLAG_SCALEWAY 1
718 
719 #define FSPDF_ANNOT_ICONFITFLAG_ASPECTRATIO 2
720 
721 #define FSPDF_ANNOT_ICONFITFLAG_POSITION 4
722 
723 #define FSPDF_ANNOT_ICONFITFLAG_FITBOUNDS 8
724 
726 #endif /* _FSPDF_DEF_MACRO_ANNOT_ICONFITFLAG_ */
727 
728 #ifndef _FSPDF_DEF_MACRO_ANNOT_ICONSCALEWAY_
729 #define _FSPDF_DEF_MACRO_ANNOT_ICONSCALEWAY_
730 
735 #define FSPDF_ANNOT_ICONSCALEWAY_ALWAYS 0
736 
737 #define FSPDF_ANNOT_ICONSCALEWAY_BIGGER 1
738 
739 #define FSPDF_ANNOT_ICONSCALEWAY_SMALLER 2
740 
741 #define FSPDF_ANNOT_ICONSCALEWAY_NEVER 3
742 
744 #endif /* _FSPDF_DEF_MACRO_ANNOT_ICONSCALEWAY_ */
745 
746 #ifndef _FSPDF_DEF_MACRO_ANNOT_MKENTRY_
747 #define _FSPDF_DEF_MACRO_ANNOT_MKENTRY_
748 
754 #define FSPDF_ANNOT_MKENTRY_ROTATION 0
755 
756 #define FSPDF_ANNOT_MKENTRY_BORDERCOLOR 1
757 
758 #define FSPDF_ANNOT_MKENTRY_BACKGROUNDCOLOR 2
759 
760 #define FSPDF_ANNOT_MKENTRY_NORMALCAPTION 3
761 
762 #define FSPDF_ANNOT_MKENTRY_ROLLOVERCAPTION 4
763 
764 #define FSPDF_ANNOT_MKENTRY_DOWNCAPTION 5
765 
766 #define FSPDF_ANNOT_MKENTRY_NORMALICON 6
767 
768 #define FSPDF_ANNOT_MKENTRY_ROLLOVERICON 7
769 
770 #define FSPDF_ANNOT_MKENTRY_DOWNICON 8
771 
772 #define FSPDF_ANNOT_MKENTRY_ICONFIT 9
773 
774 #define FSPDF_ANNOT_MKENTRY_TEXTPOSITION 10
775 
777 #endif /* _FSPDF_DEF_MACRO_ANNOT_MKENTRY_ */
778 
779 #ifndef _FSPDF_DEF_STRUCTURE_ANNOTICONFIT_
780 #define _FSPDF_DEF_STRUCTURE_ANNOTICONFIT_
781 
784 typedef struct _FSPDF_ANNOTICONFIT
785 {
843 
844 #endif /* _FSPDF_DEF_STRUCTURE_ANNOTICONFIT_ */
845 
846 #ifndef _FSPDF_DEF_STRUCTURE_ANNOTBORDER_
847 #define _FSPDF_DEF_STRUCTURE_ANNOTBORDER_
848 
851 typedef struct _FSPDF_ANNOTBORDER
852 {
891  FS_FLOAT dashPattern[16];
893 
894 #endif /* _FSPDF_DEF_STRUCTURE_ANNOTBORDER_ */
895 
924 FS_RESULT FSPDF_Annot_GetType(FSCRT_ANNOT annot, FSCRT_BSTR* annotType);
925 
951 FS_RESULT FSPDF_Annot_GetRect(FSCRT_ANNOT annot, FSCRT_RECTF* rect);
952 
985 FS_RESULT FSPDF_Annot_GetDeviceRect(FSCRT_ANNOT annot, FS_BOOL bTransformIcon, const FSCRT_MATRIX* matrix,
986  FSCRT_RECT* deviceRect);
987 
1014 FS_RESULT FSPDF_Annot_GetFlags(FSCRT_ANNOT annot, FS_DWORD* flags);
1015 
1043 FS_RESULT FSPDF_Annot_GetName(FSCRT_ANNOT annot, FSCRT_BSTR* name);
1044 
1072 FS_RESULT FSPDF_Annot_GetContents(FSCRT_ANNOT annot, FSCRT_BSTR* contents);
1073 
1098 FS_RESULT FSPDF_Annot_GetBorder(FSCRT_ANNOT annot, FSPDF_ANNOTBORDER* border);
1099 
1129 FS_RESULT FSPDF_Annot_GetColor(FSCRT_ANNOT annot, FS_BOOL isFillColor, FS_ARGB* color);
1130 
1156 
1182 
1210 FS_RESULT FSPDF_Annot_GetSubject(FSCRT_ANNOT annot, FSCRT_BSTR* subject);
1211 
1239 FS_RESULT FSPDF_Annot_GetTitle(FSCRT_ANNOT annot, FSCRT_BSTR* title);
1240 
1266 FS_RESULT FSPDF_Annot_GetOpacity(FSCRT_ANNOT annot, FS_FLOAT* opacity);
1267 
1297 FS_RESULT FSPDF_Annot_GetIntent(FSCRT_ANNOT annot, FSCRT_BSTR* intent);
1298 
1324 FS_RESULT FSPDF_Annot_GetOpenStatus(FSCRT_ANNOT annot, FS_BOOL* isOpen);
1325 
1355 FS_RESULT FSPDF_Annot_GetIconName(FSCRT_ANNOT annot, FSCRT_BSTR* iconName);
1356 
1388 FS_RESULT FSPDF_Annot_GetAlignment(FSCRT_ANNOT annot, FS_INT32* alignment);
1389 
1416 FS_RESULT FSPDF_Annot_GetHighlightingMode(FSCRT_ANNOT annot, FS_INT32* hlMode);
1417 
1465 FS_RESULT FSPDF_Annot_GetQuadPoints(FSCRT_ANNOT annot, FSCRT_QUADPOINTSF* quadPoints, FS_INT32* count);
1466 
1502 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);
1503 
1535 FS_RESULT FSPDF_Annot_GetInnerRectMargin(FSCRT_ANNOT annot, FS_FLOAT* left, FS_FLOAT* top, FS_FLOAT* right, FS_FLOAT* bottom);
1536 
1570 FS_RESULT FSPDF_Annot_GetLineEndingStyles(FSCRT_ANNOT annot, FSCRT_BSTR* startingStyle, FSCRT_BSTR* endingStyle);
1571 
1599 FS_RESULT FSPDF_Annot_GetLinePosition(FSCRT_ANNOT annot, FS_FLOAT* x1, FS_FLOAT* y1, FS_FLOAT* x2, FS_FLOAT* y2);
1600 
1630 FS_RESULT FSPDF_Annot_GetLeaderLineLength(FSCRT_ANNOT annot, FS_FLOAT* length);
1631 
1657 FS_RESULT FSPDF_Annot_GetLeaderLineExtension(FSCRT_ANNOT annot, FS_FLOAT* extLength);
1658 
1684 FS_RESULT FSPDF_Annot_GetLeaderLineOffset(FSCRT_ANNOT annot, FS_FLOAT* offset);
1685 
1711 FS_RESULT FSPDF_Annot_HasCaptionContents(FSCRT_ANNOT annot, FS_BOOL* hasCap);
1712 
1748 FS_RESULT FSPDF_Annot_GetCaptionPosition(FSCRT_ANNOT annot, FSCRT_BSTR* captionPos);
1749 
1787 FS_RESULT FSPDF_Annot_GetCaptionOffset(FSCRT_ANNOT annot, FS_FLOAT* offsetx, FS_FLOAT* offsety);
1788 
1828 FS_RESULT FSPDF_Annot_GetVertices(FSCRT_ANNOT annot, FS_FLOAT* vertices, FS_INT32* count);
1829 
1863 FS_RESULT FSPDF_Annot_GetSymbol(FSCRT_ANNOT annot, FSCRT_BSTR* symbol);
1864 
1898 FS_RESULT FSPDF_Annot_GetInkList(FSCRT_ANNOT annot, FSCRT_PATHDATA* pathData);
1899 
1927 FS_RESULT FSPDF_Annot_GetAttachment(FSCRT_ANNOT annot, FSPDF_ATTACHMENT* attachment);
1928 
1954 FS_RESULT FSPDF_Annot_GetDefaultAppearance(FSCRT_ANNOT annot, FSPDF_DEFAULTAPPEARANCE* defAppearance);
1955 
1982 FS_RESULT FSPDF_Annot_GetIconFit(FSCRT_ANNOT annot, FSPDF_ANNOTICONFIT* iconFit);
1983 
2014 FS_RESULT FSPDF_Annot_HasMKEntry(FSCRT_ANNOT annot, FS_INT32 mkEntry, FS_BOOL* hasEntry);
2015 
2042 FS_RESULT FSPDF_Annot_GetMKRotation(FSCRT_ANNOT annot, FS_INT32* degree);
2043 
2074 FS_RESULT FSPDF_Annot_GetMKColor(FSCRT_ANNOT annot, FS_INT32 mkEntry, FS_ARGB* color);
2075 
2108 FS_RESULT FSPDF_Annot_GetMKCaption(FSCRT_ANNOT annot, FS_INT32 mkEntry, FSCRT_BSTR* caption);
2109 
2146 FS_RESULT FSPDF_Annot_GetMKIconBitmap(FSCRT_ANNOT annot, FS_INT32 mkEntry, FSCRT_BITMAP* bitmap);
2147 
2173 FS_RESULT FSPDF_Annot_GetFormControl(FSCRT_ANNOT widgetAnnot, FSPDF_FORMCONTROL* formControl);
2174 
2199 FS_RESULT FSPDF_Annot_GetDict(FSCRT_ANNOT annot, FSPDF_OBJECT* dictionary);
2200 
2201 /*******************************************************************************/
2202 /* Markup controls */
2203 /*******************************************************************************/
2204 #ifndef _FSPDF_DEF_MACRO_ANNOTSTATEMODEL_
2205 #define _FSPDF_DEF_MACRO_ANNOTSTATEMODEL_
2206 
2212 #define FSPDF_ANNOTSTATEMODEL_MARKED 0
2213 
2214 #define FSPDF_ANNOTSTATEMODEL_REVIEW 1
2215 
2217 #endif /* _FSPDF_DEF_MACRO_ANNOTSTATEMODEL_ */
2218 
2219 #ifndef _FSPDF_DEF_MACRO_ANNOTSTATE_
2220 #define _FSPDF_DEF_MACRO_ANNOTSTATE_
2221 
2228 #define FSPDF_ANNOTSTATE_MARKED_MARKED 0
2229 
2230 #define FSPDF_ANNOTSTATE_MARKED_UNMARKED 1
2231 
2233 #define FSPDF_ANNOTSTATE_REVIEW_ACCEPTED 0
2234 
2235 #define FSPDF_ANNOTSTATE_REVIEW_REJECTED 1
2236 
2237 #define FSPDF_ANNOTSTATE_REVIEW_CANCELLED 2
2238 
2239 #define FSPDF_ANNOTSTATE_REVIEW_COMPLETED 3
2240 
2241 #define FSPDF_ANNOTSTATE_REVIEW_NONE 4
2242 
2244 #endif /* _FSPDF_DEF_MACRO_ANNOTSTATE_ */
2245 
2277 FS_RESULT FSPDF_Annot_CountStateAnnots(FSCRT_ANNOT annot, FS_INT32 stateModel, FS_INT32* count);
2278 
2314 FS_RESULT FSPDF_Annot_GetStateAnnot(FSCRT_ANNOT annot, FS_INT32 stateModel, FS_INT32 index, FSCRT_ANNOT* stateAnnot);
2315 
2348 FS_RESULT FSPDF_Annot_GetState(FSCRT_ANNOT stateAnnot, FS_INT32* stateModel, FS_INT32* state);
2349 
2374 FS_RESULT FSPDF_Annot_IsGrouped(FSCRT_ANNOT annot, FS_BOOL* isGrouped);
2375 
2403 FS_RESULT FSPDF_Annot_GetGroupHeader(FSCRT_ANNOT annot, FSCRT_ANNOT* groupHeader);
2404 
2445 FS_RESULT FSPDF_Annot_GetGroupElements(FSCRT_ANNOT annot, FSCRT_ANNOT* elements, FS_INT32* count);
2446 
2472 FS_RESULT FSPDF_Annot_CountReplies(FSCRT_ANNOT annot, FS_INT32* count);
2473 
2503 FS_RESULT FSPDF_Annot_GetReply(FSCRT_ANNOT annot, FS_INT32 index, FSCRT_ANNOT* replyAnnot);
2504 
2533 FS_RESULT FSPDF_Annot_GetPopup(FSCRT_ANNOT annot, FSCRT_ANNOT* popupAnnot);
2534 
2535 /*******************************************************************************/
2536 /* Annotation trigger actions */
2537 /*******************************************************************************/
2564 FS_RESULT FSPDF_Annot_CountActions(FSCRT_ANNOT annot, FS_INT32 trigger, FS_INT32* count);
2565 
2594 FS_RESULT FSPDF_Annot_GetAction(FSCRT_ANNOT annot, FS_INT32 trigger, FS_INT32 index, FSPDF_ACTIONDATA* actionData);
2595 
2596 /*******************************************************************************/
2597 /* Annotation display */
2598 /*******************************************************************************/
2636 FS_RESULT FSPDF_RenderContext_StartAnnots(FSPDF_RENDERCONTEXT pdfRenderContext, FSCRT_RENDERER renderer,
2637  const FSCRT_ANNOT* annots, FS_INT32 count, FSCRT_PROGRESS* renderProgress);
2638 
2675 FS_RESULT FSPDF_RenderContext_StartPageAnnots(FSPDF_RENDERCONTEXT pdfRenderContext, FSCRT_RENDERER renderer,
2676  FSCRT_PAGE page, FSCRT_PROGRESS* renderProgress);
2677 
2678 #ifdef __cplusplus
2679 };
2680 #endif
2681  /* group FPDFANNOT */
2683 
2684 #endif /* _FSPDF_ANNOT_R_H_ */
2685 
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:864
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:851
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:2078
FS_DWORD flags
Icon fit flag.
Definition: fpdf_annot_r.h:797
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:858
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:2056
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:833
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:819
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:2018
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:841
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:784
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:826
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:878
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:884
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:2130
Structure for byte string.
Definition: fs_base_r.h:611
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_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:872
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:810
Structure for quad points, in float.
Definition: fs_base_r.h:2100

Foxit Corporation