OperatorSelector.h
1 #pragma once
2 // Copyright (c) 2001-2024 Aspose Pty Ltd. All Rights Reserved.
3 
4 #include <system/shared_ptr.h>
5 
6 #include "Aspose.PDF.Cpp/IOperatorSelector.h"
7 #include "Aspose.PDF.Cpp/aspose_pdf_api_defs.h"
8 
9 namespace Aspose
10 {
11 namespace Pdf
12 {
13 class Operator;
14 namespace Operators
15 {
16 class BDC;
17 class BI;
18 class BMC;
19 class BT;
20 class BX;
21 class Clip;
22 class ClosePath;
23 class ClosePathEOFillStroke;
24 class ClosePathFillStroke;
25 class ClosePathStroke;
26 class ConcatenateMatrix;
27 class CurveTo;
28 class CurveTo1;
29 class CurveTo2;
30 class Do;
31 class DP;
32 class EI;
33 class EMC;
34 class EndPath;
35 class EOClip;
36 class EOFill;
37 class EOFillStroke;
38 class ET;
39 class EX;
40 class Fill;
41 class FillStroke;
42 class GRestore;
43 class GS;
44 class GSave;
45 class ID;
46 class LineTo;
47 class MoveTextPosition;
48 class MoveTextPositionSetLeading;
49 class MoveTo;
50 class MoveToNextLine;
51 class MoveToNextLineShowText;
52 class MP;
53 class ObsoleteFill;
54 class Re;
55 class SelectFont;
56 class SetAdvancedColor;
57 class SetAdvancedColorStroke;
58 class SetCharacterSpacing;
59 class SetCharWidth;
60 class SetCharWidthBoundingBox;
61 class SetCMYKColor;
62 class SetCMYKColorStroke;
63 class SetColor;
64 class SetColorRenderingIntent;
65 class SetColorSpace;
66 class SetColorSpaceStroke;
67 class SetColorStroke;
68 class SetDash;
69 class SetFlat;
70 class SetGlyphsPositionShowText;
71 class SetGray;
72 class SetGrayStroke;
73 class SetHorizontalTextScaling;
74 class SetLineCap;
75 class SetLineJoin;
76 class SetLineWidth;
77 class SetMiterLimit;
78 class SetRGBColor;
79 class SetRGBColorStroke;
80 class SetSpacingMoveToNextLineShowText;
81 class SetTextLeading;
82 class SetTextMatrix;
83 class SetTextRenderingMode;
84 class SetTextRise;
85 class SetWordSpacing;
86 class ShFill;
87 class ShowText;
88 class Stroke;
89 class TextOperator;
90 } // namespace Operators
91 } // namespace Pdf
92 } // namespace Aspose
93 namespace System
94 {
95 namespace Collections
96 {
97 namespace Generic
98 {
99 template <typename> class IList;
100 template <typename> class List;
101 } // namespace Generic
102 } // namespace Collections
103 } // namespace System
104 
105 namespace Aspose {
106 
107 namespace Pdf {
108 
112 class ASPOSE_PDF_SHARED_CLASS OperatorSelector final : public Aspose::Pdf::IOperatorSelector
113 {
114  typedef OperatorSelector ThisType;
116 
117  typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
118  ASPOSE_PDF_SHARED_RTTI_INFO_DECL();
119 
120 public:
121 
126 
130  ASPOSE_PDF_SHARED_API OperatorSelector();
137  ASPOSE_PDF_SHARED_API OperatorSelector(System::SharedPtr<Operator> op);
138 
145  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetLineJoin> j) override;
152  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::EX> EX) override;
159  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::ET> ET) override;
166  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::EMC> EMC) override;
173  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::EI> EI) override;
180  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::DP> DP) override;
187  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::Do> Do) override;
194  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetCharWidthBoundingBox> d1) override;
201  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetCharWidth> d0) override;
208  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetDash> d) override;
215  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetColorSpaceStroke> CS) override;
222  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetColorSpace> cs) override;
229  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::ConcatenateMatrix> cm) override;
236  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::CurveTo> c) override;
243  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::BX> BX) override;
250  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::BT> BT) override;
257  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::BMC> BMC) override;
264  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::BI> BI) override;
271  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::BDC> BDC) override;
278  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::FillStroke> B) override;
285  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::ClosePathFillStroke> b) override;
292  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::EOFillStroke> B_) override;
299  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::ClosePathEOFillStroke> b_) override;
306  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::MoveToNextLineShowText> _) override;
313  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetSpacingMoveToNextLineShowText> __) override;
320  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::EOFill> f_) override;
327  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::Fill> f) override;
334  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::ObsoleteFill> F) override;
341  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetGray> g) override;
348  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetGrayStroke> G) override;
355  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::GS> gs) override;
362  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::ClosePath> h) override;
369  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetFlat> i) override;
376  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::ID> ID) override;
383  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetLineCap> J) override;
390  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetCMYKColor> k) override;
397  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetCMYKColorStroke> K) override;
404  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::LineTo> l) override;
411  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::MoveTo> m) override;
418  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetMiterLimit> M) override;
425  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::MP> MP) override;
432  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::EndPath> n) override;
439  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::GSave> q) override;
446  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::GRestore> Q) override;
453  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::Re> re) override;
460  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetRGBColor> rg) override;
467  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetRGBColorStroke> RG) override;
474  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetColorRenderingIntent> ri) override;
481  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::ClosePathStroke> s) override;
488  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::Stroke> S) override;
495  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetColor> sc) override;
502  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetColorStroke> SC) override;
509  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetAdvancedColor> scn) override;
516  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetAdvancedColorStroke> SCN) override;
523  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::ShFill> sh) override;
530  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::MoveToNextLine> T_) override;
537  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetCharacterSpacing> Tc) override;
544  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::MoveTextPosition> Td) override;
551  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::MoveTextPositionSetLeading> TD) override;
558  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SelectFont> Tf) override;
565  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::ShowText> Tj) override;
572  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetGlyphsPositionShowText> TJ) override;
579  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetTextLeading> TL) override;
586  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetTextMatrix> Tm) override;
593  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetTextRenderingMode> Tr) override;
600  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetTextRise> Ts) override;
607  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetWordSpacing> Tw) override;
614  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetHorizontalTextScaling> Tz) override;
621  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::CurveTo1> v) override;
628  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::EOClip> W_) override;
635  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::SetLineWidth> w) override;
642  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::Clip> W) override;
649  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::CurveTo2> y) override;
656  ASPOSE_PDF_SHARED_API void Visit(System::SharedPtr<Operators::TextOperator> textOperator) override;
657 
658 protected:
659 
661 
662 private:
663 
665 
666 };
667 
668 } // namespace Pdf
669 } // namespace Aspose
670 
671 
class ASPOSECPP_SHARED_CLASS List
Definition: ienumerable.h:17
System::SharedPtr< System::Collections::Generic::List< System::SharedPtr< Operator > > > selected
Definition: OperatorSelector.h:660
Base class that enables using methods available for System.Object class in C#. All non-trivial classe...
Definition: object.h:64
Definition: Artifact.h:67
Defines Visitor for visiting different pdf operators.
Definition: IOperatorSelector.h:99
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: fwd.h:22
Definition: AFRelationship.h:4
This class is used for selecting operators using Visitor template idea.
Definition: OperatorSelector.h:112
The field data shall be the file name of the embedded file stream, as identified by the UF entry of t...
A text type. The field data shall be stored as a PDF text string.
Whole PDF file will be submitted.