FPDFBase.h
1 #pragma once
2 
3 namespace Foxit
4 {
9  namespace PDF
10  {
11  ref class Document;
12 
13 #ifdef _WIN10UWP_
14 
20 #else
21 
27 #endif //_WIN10UWP_
28  public enum class SaveFlags
29  {
31  Incremental = 0x1,
33  RemoveSecurity = 0x4,
35  ObjectStream = 0x8,
36  };
37 
44  public enum class SearchFlag
45  {
47  MatchCase = 0x01,
49  MatchWholeWord = 0x02,
51  Consecutive = 0x04
52  };
53 
54 
61  public enum class ActionType
62  {
64  Unsupported = 0,
66  Goto = 1,
68  RemoteGoto = 2,
70  EmbeddedGoto = 3,
72  Uri = 4,
74  Launch = 5,
76  Javascript = 6,
78  Hide = 7,
80  Named = 8,
82  SubmitForm = 9,
84  ResetForm = 10,
86  ImportData = 11
87  };
88 
95  public enum class ZoomMode
96  {
98  Factor = 1,
100  FitPage = 2,
102  FitWidth = 3,
104  FitHeight = 4,
106  FitRect = 5,
108  FitContent = 6,
110  FitContentWidth = 7,
112  FitContentHeight = 8
113  };
114 
121  public enum class SubmitFormFlags
122  {
126  Include = 0x0001,
132  IncludeNoValueFields = 0x0002,
139  ExportFormat = 0x0004,
146  GetMethod = 0x0008,
150  SubmitCoordinates = 0x0010,
154  XFDF = 0x0020,
160  IncludeAppendSaves = 0x0040,
166  IncludeAnnotations = 0x0080,
170  SubmitPDF = 0x0100,
174  CanonicalFormat = 0x0200,
178  ExclnonuserAnnots = 0x0400,
182  ExclFKey = 0x0800,
186  EmbedForm = 0x2000
187  };
188 
196  public ref class Action sealed
197  {
198  public:
200  Action() { this->Type = ActionType::Unsupported; }
204  property ActionType Type;
224  property Object^ actionData;
225  };
229  public ref class EmbeddedGotoActionTarget sealed
230  {
231  public:
235  EmbeddedGotoActionTarget(String^ relationship, String^ filename, String^ destname,
236  String^ annotname, int32 pageindex, int32 annotindex);
237 
248  Boolean Release();
249 
260  EmbeddedGotoActionTarget^ GetNext();
261 
275  void SetNext(EmbeddedGotoActionTarget^ next);
276 
282  property String^ Relationship;
283 
289  property String^ FileName;
290 
296  property String^ DestName;
297 
303  property String^ AnnotName;
304 
310  property int32 PageIndex;
311 
317  property int32 AnnotIndex;
318 
323  property int64 pointer;
324  private:
329  EmbeddedGotoActionTarget^ NextTarget;
330  };
331 
335  public ref class Attachment sealed
336  {
337  public:
340 
353  String^ GetFileName();
354 
369  String^ GetDescription();
370 
383  int64 GetSize();
384 
397  DateTime^ GetCreationDateTime();
398 
411  DateTime^ GetModifiedDateTime();
412 
426  IBuffer^ GetData(Boolean isRawData);
427 
444  void SetDescription(String^ description);
445 
450  property int64 pointer;
451 
452  private:
470  void SetFileName(String^ fileName);
471  };
472 
476  public ref class Destination sealed
477  {
478  public:
480  Destination(int32 pageIndex, ZoomMode zoomMode, const Array<float32>^ params);
481 
483  property int32 PageIndex;
489  property ZoomMode ZoomMode;
509  property Array<float32>^ Params;
510  };
511 
522  public ref class EmbeddedGotoAction sealed
523  {
524  public:
526  EmbeddedGotoAction(EmbeddedGotoActionTarget^ target, Attachment^ attachment, Destination^ destData, String^ destName, Boolean newWindow);
527 
529  property EmbeddedGotoActionTarget^ Target;
539  property Destination^ DestData;
546  property String^ DestName;
548  property Boolean NewWindow;
549  };
550 
554  public ref class GotoAction sealed
555  {
556  public:
558  GotoAction(Destination^ destination);
560  property Destination^ destination;
561  };
562 
566  public ref class HideAction sealed
567  {
568  public:
570  HideAction(const Array<String^>^ fields, Boolean hide);
572  property Array<String^>^ Fields;
574  property Boolean Hide;
575  };
576 
580  public ref class ImportDataAction sealed
581  {
582  public:
584  ImportDataAction(Attachment^ attachment);
587  };
588 
592  public ref class JavascriptAction sealed
593  {
594  public:
596  JavascriptAction(String^ javascript);
598  property String^ Javascript;
599  };
600 
604  public ref class LaunchAction sealed
605  {
606  public:
608  LaunchAction(Attachment^ attachment, String^ fileName, String^ defaultPath, String^ operation, String^ parameters, Boolean newWindow);
609 
613  property String^ FileName;
615  property String^ DefaultPath;
625  property String^ Operation;
627  property String^ Parameters;
629  property Boolean NewWindow;
630  };
631 
635  public ref class NamedAction sealed
636  {
637  public:
639  NamedAction(String^ namedAction);
641  property String^ namedAction;
642  };
643 
654  public ref class RemoteGotoAction sealed
655  {
656  public:
658  RemoteGotoAction(String^ fileName, String^ destName, Destination^ destData);
659 
661  property String^ FileName;
668  property String^ DestName;
676  property Destination^ DestData;
677  };
678 
682  public ref class ResetFormAction sealed
683  {
684  public:
686  ResetFormAction(const Array<String^>^ fields, int32 flags);
687 
689  property Array<String^>^ Fields;
690 
700  property int32 Flags;
701  };
702 
706  public ref class SubmitFormAction sealed
707  {
708  public:
710  SubmitFormAction(Attachment^ attachment, const Array<String^>^ fields, SubmitFormFlags flags);
718  property Array<String^>^ Fields;
724  property SubmitFormFlags Flags;
725  };
726 
730  public ref class URIAction sealed
731  {
732  public:
734  URIAction(String^ url, Boolean mapPosition);
736  property String^ Url;
742  property Boolean MapPosition;
743  };
744 
752  public enum class DefaultAppearanceFlags
753  {
755  Font = 0x0001,
757  TextColor = 0x0002,
759  TextMatrix = 0x0004
760  };
761 
765  public ref class DefaultAppearance sealed
766  {
767  public:
769  DefaultAppearance(uint32 flags, Font^ font, float32 fontsize, uint32 textcolor, Matrix^ matrix);
770 
777  property uint32 Flags;
778 
784  property Font^ Font;
785 
791  property float32 FontSize;
792 
798  property uint32 TextColor;
799 
805  property Matrix^ TextMatrix;
806  };
807  }
808 }
Import Forms Data Format (FDF) data into the document&#39;s interactive form.
Bit 14. F entry of submitted FDF is an embedded file stream.
Fit the whole content of page on the screen.
Class to represent matrix used for transformation.
Definition: FSBase.h:175
Bit 10. Any submitted field values representing dates are converted to the standard format...
Action()
Default constructor.
Definition: FPDFBase.h:200
Hide or show one or more annotations.
Class to represent date and time.
Definition: FSBase.h:292
Class to represent reset form action data.
Definition: FPDFBase.h:682
Bit 1. Include fields to submit.
Launch an application or open a file.
ActionType
Enumeration for action type.
Definition: FPDFBase.h:61
Fit the content height of page on the screen.
Fit the content width of page on the screen.
Bit 3. Field names and values are submitted in HTML Form format.
Attachment()
Default constructor.
Definition: FPDFBase.h:339
Indicates property DefaultAppearance::TextMatrix is meaningful.
Indicates property DefaultAppearance::TextColor is meaningful.
Whether to search by matching case.
SubmitFormFlags
Enumeration for submitting form flags.
Definition: FPDFBase.h:121
Go to a destination within another document.
Fit the whole page on the screen.
Whether to search by matching whole word.
SaveFlags
Enumeration for document saving flags.
Definition: FPDFBase.h:28
DefaultAppearanceFlags
Enumeration for default appearance flags.
Definition: FPDFBase.h:752
Class to represent named action data.
Definition: FPDFBase.h:635
Class to represent a font object.
Definition: FSBase.h:894
Fit the width of the page on the screen.
Save PDF document with removing security.
Class to represent default appearance data.
Definition: FPDFBase.h:765
Transmit the names and values of selected interactive form fields.
Run a named action.
Class to represent URI action data.
Definition: FPDFBase.h:730
Reset selected interactive form fields to their default values.
Class to represent JavaScript action data.
Definition: FPDFBase.h:592
Bit 6. Field names and values are submitted as XFDF.
Bit 2. Submit fields regardless of whether they have a value.
Go to a destination within current document.
Bit 8. Submitted FDF file includes all markup annotations in underlying PDF document.
Whether to search by matching consecutively (for example, "CC" will match twice in "CCC")...
Class to represent the target data of embedded go-to action.
Definition: FPDFBase.h:229
A specific zoom factor is used.
Class to represent go-to action data.
Definition: FPDFBase.h:554
Class to represent hide action data.
Definition: FPDFBase.h:566
Class to represent import-data action data.
Definition: FPDFBase.h:580
Class to represent embedded go-to action data.
Definition: FPDFBase.h:522
Bit 7. Submitted FDF file includes contents as contained in differences entry in the FDF dictionary...
Bit 4. Field names and values are submitted using an HTTP GET request.
Save PDF document by using object stream, in order to reduce the file size.
Save PDF document incrementally.
Unsupported action type.
Class to represent submit-form action data.
Definition: FPDFBase.h:706
Fit the height of the page on the screen.
Class to represent PDF attachment.
Definition: FPDFBase.h:335
Bit 9. The document is submitted as PDF.
Fit a particular rectangle on the screen.
Class to represent destination data.
Definition: FPDFBase.h:476
SearchFlag
Enumeration for searching flag.
Definition: FPDFBase.h:44
ZoomMode
Enumeration for zoom mode.
Definition: FPDFBase.h:95
Bit 11. Only those markup annotations whose T entry matches the name of the current user are being su...
Bit 5. Coordinates of the mouse are transmitted as part of the form data.
Universal Resource Identifier, including web pages and other Internet based resources.
Class to represent launch action data.
Definition: FPDFBase.h:604
Go to a destination within embedded another document.
Bit 12. Submitted FDF excludes F entry.
Foxit namespace.
Definition: FPDFAnnot.h:3
Indicates properties DefaultAppearance::Font and DefaultAppearance::FontSize are meaningful.
Class to represent remote go-to action data.
Definition: FPDFBase.h:654
Class to represent action type and data.
Definition: FPDFBase.h:196

Foxit Corporation